event settings almost done

This commit is contained in:
2023-08-11 15:37:04 +02:00
parent d2c0257b8f
commit d5c581170f
15 changed files with 576 additions and 67 deletions

View File

@@ -52,6 +52,26 @@ class GETHandler {
} ).catch( error => {
reject( { 'code': 500, 'error': error } );
} );
} else if ( call === 'getEvent' ) {
db.getJSONDataSimple( 'eventDrafts', query.event ).then( data => {
if ( Object.keys( data ).length > 1 ) {
resolve( data );
} else {
reject( { 'code': 404, 'error': 'EventNotFound' } );
}
} ).catch( error => {
reject( { 'code': 500, 'error': error } );
} );
} else if ( call === 'getAllEvents' ) {
db.getJSONData( 'eventDrafts' ).then( data => {
db.getJSONData( 'events' ).then( dat => {
resolve( { 'live': dat ?? {}, 'drafts': data ?? {} } );
} ).catch( error => {
reject( { 'code': 500, 'error': error } );
} );
} ).catch( error => {
reject( { 'code': 500, 'error': error } );
} );
} else {
reject( { 'code': 404, 'error': 'Route not found' } );
}

View File

@@ -54,6 +54,52 @@ class POSTHandler {
} ).catch( error => {
reject( { 'code': 500, 'error': error } );
} );
} else if ( call === 'deleteLocation' ) {
db.deleteJSONDataSimple( 'locations', data.location ).then( () => {
resolve( 'ok' );
} ).catch( error => {
reject( { 'code': 500, 'error': error } );
} );
} else if ( call === 'createEvent' ) {
db.getJSONDataSimple( 'eventDrafts', data.event ).then( dat => {
if ( Object.keys( dat ).length < 1 ) {
db.writeJSONDataSimple( 'eventDrafts', data.event, { 'name': 'Unnamed event', 'description': '', 'location': '', 'date': '', 'categories': {}, 'ageGroups': { '1': { 'id': 1, 'name': 'Child', 'age': '0 - 15.99' }, '2': { 'id': 2, 'name': 'Adult' } }, 'maxTickets': 2, 'eventID': data.event } ).then( () => {
resolve( 'ok' );
} ).catch( error => {
reject( { 'code': 500, 'error': error } );
} );
} else {
reject( { 'code': 409, 'error': 'ExistsAlready' } );
}
} );
} else if ( call === 'saveEvent' ) {
db.writeJSONDataSimple( 'eventDrafts', data.event, data.eventData ).then( () => {
resolve( 'ok' );
} ).catch( error => {
reject( { 'code': 500, 'error': error } );
} );
} else if ( call === 'deployEvent' ) {
db.writeJSONDataSimple( 'events', data.event, data.eventData ).then( () => {
resolve( 'ok' );
} ).catch( error => {
reject( { 'code': 500, 'error': error } );
} );
} else if ( call === 'deleteEvent' ) {
db.deleteJSONDataSimple( 'eventDrafts', data.event ).then( () => {
db.deleteJSONDataSimple( 'events', data.event ).then( () => {
resolve( 'ok' );
} ).catch( error => {
reject( { 'code': 500, 'error': error } );
} );
} ).catch( error => {
reject( { 'code': 500, 'error': error } );
} );
} else if ( call === 'undeployEvent' ) {
db.deleteJSONDataSimple( 'events', data.event ).then( () => {
resolve( 'ok' );
} ).catch( error => {
reject( { 'code': 500, 'error': error } );
} );
} else if ( call === 'saveTickets' ) {
db.writeJSONDataSimple( 'tickets', data.location, data.data ).then( resp => {
resolve( resp );