diff --git a/src/server/admin/api/getHandler.js b/src/server/admin/api/getHandler.js index 6f64a4d..5e0b312 100644 --- a/src/server/admin/api/getHandler.js +++ b/src/server/admin/api/getHandler.js @@ -75,9 +75,13 @@ class GETHandler { } else if ( call === 'getCurrency' ) { resolve( this.settings.currency ); } else if ( call === 'getAdminAccounts' ) { - // TODO: Finish + db.getData( 'admin' ).then( data => { + resolve( data ); + } ).catch( err => { + reject( { 'code': 500, 'message': 'ERR_DB: ' + err } ); + } ); } else if ( call === 'getPaymentGatewaySettings' ) { - // TODO: Finish + // TODO: Finish with plugin manager } else if ( call === 'getSettings' ) { resolve( this.settings ); } else { diff --git a/src/server/backend/api/postHandler.js b/src/server/backend/api/postHandler.js index de5ef8f..6705c4c 100644 --- a/src/server/backend/api/postHandler.js +++ b/src/server/backend/api/postHandler.js @@ -29,11 +29,11 @@ class POSTHandler { } } - console.log( this.ticketTotals ); + // console.log( this.ticketTotals ); // for ( let order in this.allSelectedSeats ) { // } - console.log( this.allSelectedSeats ); + // console.log( this.allSelectedSeats ); } ); } ); } ); diff --git a/src/server/backend/db/db.js b/src/server/backend/db/db.js index 79c15bd..6cb89c4 100644 --- a/src/server/backend/db/db.js +++ b/src/server/backend/db/db.js @@ -36,6 +36,16 @@ module.exports.getDataSimple = ( db, column, searchQuery ) => { } ); }; +module.exports.getData = ( db ) => { + return new Promise( ( resolve, reject ) => { + dbh.query( { 'command': 'getAllData' }, dbRef[ db ] ).then( data => { + resolve( data ); + } ).catch( error => { + reject( error ); + } ); + } ); +}; + module.exports.writeDataSimple = ( db, column, searchQuery, data ) => { return new Promise( ( resolve, reject ) => { dbh.query( { 'command': 'checkDataAvailability', 'property': column, 'searchQuery': searchQuery }, dbRef[ db ] ).then( res => { diff --git a/src/server/backend/db/mysqldb.js b/src/server/backend/db/mysqldb.js index 5a98bda..00b12b8 100644 --- a/src/server/backend/db/mysqldb.js +++ b/src/server/backend/db/mysqldb.js @@ -65,7 +65,7 @@ class SQLDB { } ); this.sqlConnection.query( 'CREATE TABLE libreevent_users ( account_id INT ( 10 ) NOT NULL AUTO_INCREMENT, email TINYTEXT NOT NULL, pass TEXT, name TEXT, first_name TEXT, two_fa TINYTEXT, user_data VARCHAR( 60000 ), mail_confirmed TINYTEXT, marketing TINYTEXT, PRIMARY KEY ( account_id ) ) ENGINE=INNODB;', ( error ) => { if ( error ) if ( error.code !== 'ER_TABLE_EXISTS_ERROR' ) throw error; - this.sqlConnection.query( 'CREATE TABLE libreevent_orders ( order_id INT ( 10 ) NOT NULL AUTO_INCREMENT, order_name TINYTEXT, account_id INT ( 10 ) NOT NULL, tickets VARCHAR( 60000 ), processed TINYTEXT, PRIMARY KEY ( order_id ), FOREIGN KEY ( account_id ) REFERENCES libreevent_users( account_id ) ) ENGINE=INNODB;', ( error ) => { + this.sqlConnection.query( 'CREATE TABLE libreevent_orders ( order_id INT ( 10 ) NOT NULL AUTO_INCREMENT, order_name TINYTEXT, account_id INT ( 10 ) NOT NULL, tickets VARCHAR( 60000 ), processed TINYTEXT, timestamp TINYTEXT, PRIMARY KEY ( order_id ), FOREIGN KEY ( account_id ) REFERENCES libreevent_users( account_id ) ) ENGINE=INNODB;', ( error ) => { if ( error ) if ( error.code !== 'ER_TABLE_EXISTS_ERROR' ) throw error; this.sqlConnection.query( 'CREATE TABLE libreevent_admin ( account_id INT NOT NULL AUTO_INCREMENT, email TINYTEXT, pass TEXT, permissions VARCHAR( 1000 ), username TINYTEXT, two_fa TINYTEXT, PRIMARY KEY ( account_id ) );', ( error ) => { if ( error ) if ( error.code !== 'ER_TABLE_EXISTS_ERROR' ) throw error; diff --git a/src/server/backend/tickets/ticketGenerator.js b/src/server/backend/tickets/ticketGenerator.js index 3e79a28..27efa2a 100644 --- a/src/server/backend/tickets/ticketGenerator.js +++ b/src/server/backend/tickets/ticketGenerator.js @@ -33,9 +33,19 @@ class TicketGenerator { this.events = events; } ); this.runningTickets = {}; + db.getData( 'orders' ).then( orders => { + for ( let order in orders ) { + if ( orders[ order ][ 'processed' ] != 'true' ) { + this.ticketQueue[ this.jobId ] = { 'order': orders[ order ][ 'order_name' ] }; + this.jobId += 1; + } + } + if ( this.jobId > 0 ) { + this.queueHandler(); + } + } ); } - // TODO: continue processing once back online generateTickets ( order ) { this.ticketQueue[ this.jobId ] = { 'order': order }; this.runningTickets[ order.tok ] = 'processing'; @@ -96,7 +106,6 @@ class TicketGenerator { } ).catch( error => { console.error( '[ PDF GENERATOR ] ERROR: ' + error ); this.isRunning = false; - // TODO: Add to FAILED db } ); } } diff --git a/src/webapp/main/src/components/seatplan/editor/properties.vue b/src/webapp/main/src/components/seatplan/editor/properties.vue index b33d9b2..031f6b3 100644 --- a/src/webapp/main/src/components/seatplan/editor/properties.vue +++ b/src/webapp/main/src/components/seatplan/editor/properties.vue @@ -230,7 +230,6 @@ export default { } }, methods: { - // TODO: Load categories from server loadInternal () { for ( let value in this.draggables ) { this.internal[ value ] = {}; diff --git a/src/webapp/main/src/components/seatplan/userApp/userWindow.vue b/src/webapp/main/src/components/seatplan/userApp/userWindow.vue index e7b13f5..a6a42b1 100644 --- a/src/webapp/main/src/components/seatplan/userApp/userWindow.vue +++ b/src/webapp/main/src/components/seatplan/userApp/userWindow.vue @@ -162,7 +162,7 @@ } this.seatChecks(); - // TODO: Trim scroll box to about 200px more than seatplan size + // TODO: FUTURE Trim scroll box to about 200px more than seatplan size sessionStorage.setItem( 'seatplan', JSON.stringify( this.scaleDown( this.draggables ) ) ); window.addEventListener( 'visibilitychange', ( e ) => { this.seatPlanInit(); diff --git a/src/webapp/main/src/views/admin/SettingsView.vue b/src/webapp/main/src/views/admin/SettingsView.vue index 11b84a7..12325b8 100644 --- a/src/webapp/main/src/views/admin/SettingsView.vue +++ b/src/webapp/main/src/views/admin/SettingsView.vue @@ -10,8 +10,8 @@ \ No newline at end of file diff --git a/src/webapp/main/src/views/admin/events/EventsDetailsView.vue b/src/webapp/main/src/views/admin/events/EventsDetailsView.vue index 7abeef0..466d899 100644 --- a/src/webapp/main/src/views/admin/events/EventsDetailsView.vue +++ b/src/webapp/main/src/views/admin/events/EventsDetailsView.vue @@ -192,7 +192,6 @@ import notifications from '@/components/notifications/notifications.vue'; import popups from '@/components/notifications/popups.vue'; import PictureInput from 'vue-picture-input'; - // TODO: Save info if draft or live export default { name: 'TicketsDetailsView', diff --git a/src/webapp/main/src/views/purchasing/PurchaseView.vue b/src/webapp/main/src/views/purchasing/PurchaseView.vue index c52159a..78e66a6 100644 --- a/src/webapp/main/src/views/purchasing/PurchaseView.vue +++ b/src/webapp/main/src/views/purchasing/PurchaseView.vue @@ -236,7 +236,7 @@ export default { }, methods: { loadData () { - // TODO: Also load the customer data from server! + // TODO: FUTURE Also load the customer data from server! this.cartNotEmpty = false; let cart = JSON.parse( localStorage.getItem( 'cart' ) );