diff --git a/src/server/admin/adminAPIRoutes.js b/src/server/admin/adminAPIRoutes.js index ad8a30d..75dcb60 100644 --- a/src/server/admin/adminAPIRoutes.js +++ b/src/server/admin/adminAPIRoutes.js @@ -10,12 +10,12 @@ const posth = require( './api/postHandler.js' ); const geth = require( './api/getHandler.js' ); const postHandler = new posth(); -const getHandler = new geth(); const path = require( 'path' ); const bodyParser = require( 'body-parser' ); const mlt = require( 'multer' ); const multer = mlt(); const fs = require( 'fs' ); +const getHandler = new geth( JSON.parse( fs.readFileSync( path.join( __dirname + '/../config/settings.config.json' ) ) ) ); // settings is missing in arguments which shouldn't pose any problem diff --git a/src/server/admin/api/getHandler.js b/src/server/admin/api/getHandler.js index 22942c6..9d659ec 100644 --- a/src/server/admin/api/getHandler.js +++ b/src/server/admin/api/getHandler.js @@ -10,8 +10,8 @@ const db = require( '../../backend/db/db.js' ); class GETHandler { - constructor () { - + constructor ( settings ) { + this.settings = settings; } handleCall ( call, query ) { @@ -72,6 +72,8 @@ class GETHandler { } ).catch( error => { reject( { 'code': 500, 'error': error } ); } ); + } else if ( call === 'getCurrency' ) { + resolve( this.settings.currency ); } else { reject( { 'code': 404, 'error': 'Route not found' } ); } diff --git a/src/server/backend/api/getHandler.js b/src/server/backend/api/getHandler.js index 5682590..7664c79 100644 --- a/src/server/backend/api/getHandler.js +++ b/src/server/backend/api/getHandler.js @@ -46,6 +46,12 @@ class GETHandler { } ).catch( error => { reject( { 'code': 500, 'error': error } ); } ); + } else if ( call === 'getAllEvents' ) { + db.getJSONData( 'events' ).then( data => { + resolve( data ?? {} ); + } ).catch( error => { + reject( { 'code': 500, 'error': error } ); + } ); } else if ( call === 'getName' ) { resolve( { 'name': settings.name } ); } else { diff --git a/src/server/backend/db/data/eventDrafts.json b/src/server/backend/db/data/eventDrafts.json index 20b6a3f..8678d10 100644 --- a/src/server/backend/db/data/eventDrafts.json +++ b/src/server/backend/db/data/eventDrafts.json @@ -1 +1 @@ -{"test3":{"name":"TestEvent3","description":"Test event to see if it works to save data to backend","location":"test2","date":"2023-08-25","categories":{"1":{"price":{"1":20,"2":30},"bg":"#FFFFFF","fg":"#000000","name":"Category 1","id":"1","ticketCount":1}},"ageGroups":{"1":{"id":1,"name":"Child","age":"0 - 15.99"},"2":{"id":2,"name":"Adult"}},"maxTickets":0,"eventID":"test3","time":"10:00","currency":"USD","isDraft":true}} \ No newline at end of file +{"test4":{"name":"Test4Event","description":"Let's see...","location":"test2","date":"2023-09-18T10:00:00.000Z","categories":{"1":{"price":{"1":20,"2":30},"bg":"#FFFFFF","fg":"#000000","name":"Category 1","id":"1","ticketCount":1}},"ageGroups":{"1":{"id":1,"name":"Child","age":"0 - 15.99"},"2":{"id":2,"name":"Adult"}},"maxTickets":0,"eventID":"test4","time":"10:00:00.000","startingPrice":20,"currency":"USD","isDraft":true,"locationName":"TestLocation2","hasSeatplan":true}} \ No newline at end of file diff --git a/src/server/backend/db/data/events.json b/src/server/backend/db/data/events.json index 7e0b892..8678d10 100644 --- a/src/server/backend/db/data/events.json +++ b/src/server/backend/db/data/events.json @@ -1 +1 @@ -{ "test2": { "name": "TestEvent2", "location": "TestLocation2", "eventID": "test2", "date": "2023-07-15", "currency": "CHF", "categories": { "1": { "price": { "1":25, "2":35 }, "bg": "black", "fg": "white", "name": "Category 1" }, "2": { "price": { "1":15, "2":20 }, "bg": "green", "fg": "white", "name": "Category 2" } }, "ageGroups": { "1":{ "id": 1, "name":"Child", "age":"0 - 15.99" }, "2":{ "id": 2, "name": "Adult" } }, "maxTickets": 2 } } \ No newline at end of file +{"test4":{"name":"Test4Event","description":"Let's see...","location":"test2","date":"2023-09-18T10:00:00.000Z","categories":{"1":{"price":{"1":20,"2":30},"bg":"#FFFFFF","fg":"#000000","name":"Category 1","id":"1","ticketCount":1}},"ageGroups":{"1":{"id":1,"name":"Child","age":"0 - 15.99"},"2":{"id":2,"name":"Adult"}},"maxTickets":0,"eventID":"test4","time":"10:00:00.000","startingPrice":20,"currency":"USD","isDraft":true,"locationName":"TestLocation2","hasSeatplan":true}} \ No newline at end of file diff --git a/src/server/backend/db/data/seatplan.json b/src/server/backend/db/data/seatplan.json index 44c32ae..9cc80be 100644 --- a/src/server/backend/db/data/seatplan.json +++ b/src/server/backend/db/data/seatplan.json @@ -1 +1 @@ -{"test2":{"draft":{},"save":{"seatInfo":{"data":{"1":{"0":22},"2":{"0":9},"3":{"0":9}},"count":0},"data":{"1":{"x":299.02,"y":17.157,"h":564.951,"w":731.618,"active":false,"draggable":true,"resizable":true,"id":1,"origin":1,"shape":"rectangular","type":"seat","startingRow":1,"seatNumberingPosition":1,"sector":"A","text":{"text":"TestText","textSize":20,"colour":"#20FFFF"},"numberingDirection":"left","category":"1"},"2":{"x":359.069,"y":661.765,"h":121.324,"w":604.167,"active":false,"draggable":true,"resizable":true,"id":2,"origin":3,"shape":"rectangular","type":"stage","startingRow":1,"seatNumberingPosition":1,"sector":"A","text":{"text":"TestText","textSize":20,"colour":"#20FFFF"},"ticketCount":1,"numberingDirection":"left","category":"1"},"3":{"x":519.608,"y":671.569,"h":83.333,"w":306.373,"active":false,"draggable":true,"resizable":true,"id":3,"origin":1,"shape":"rectangular","type":"text","startingRow":1,"seatNumberingPosition":2,"sector":"A","text":{"text":"Stage","textSize":25,"colour":"#2160ff"},"ticketCount":1,"numberingDirection":"left","category":"1"}}}},"test":{"draft":{},"save":{"seatInfo":{"data":{"1":{"0":22}},"count":0},"data":{"1":{"x":427.696,"y":160.539,"h":371.324,"w":734.069,"active":false,"draggable":true,"resizable":true,"id":1,"origin":1,"shape":"rectangular","type":"stand","startingRow":1,"seatNumberingPosition":1,"sector":"A","text":{"text":"TestText","textSize":20,"colour":"#20FFFF"},"numberingDirection":"left","category":"1","ticketCount":50}}}}} \ No newline at end of file +{"test2":{"draft":{},"save":{"seatInfo":{"data":{"1":{"0":22},"2":{"0":9},"3":{"0":9}},"count":100},"data":{"1":{"x":299.02,"y":17.157,"h":564.951,"w":731.618,"active":false,"draggable":true,"resizable":true,"id":1,"origin":1,"shape":"rectangular","type":"seat","startingRow":1,"seatNumberingPosition":1,"sector":"A","text":{"text":"TestText","textSize":20,"colour":"#20FFFF"},"numberingDirection":"left","category":"1"},"2":{"x":359.069,"y":661.765,"h":121.324,"w":604.167,"active":false,"draggable":true,"resizable":true,"id":2,"origin":3,"shape":"rectangular","type":"stage","startingRow":1,"seatNumberingPosition":1,"sector":"A","text":{"text":"TestText","textSize":20,"colour":"#20FFFF"},"ticketCount":1,"numberingDirection":"left","category":"1"},"3":{"x":519.608,"y":671.569,"h":83.333,"w":306.373,"active":false,"draggable":true,"resizable":true,"id":3,"origin":1,"shape":"rectangular","type":"text","startingRow":1,"seatNumberingPosition":2,"sector":"A","text":{"text":"Stage","textSize":25,"colour":"#2160ff"},"ticketCount":1,"numberingDirection":"left","category":"1"}}}},"test":{"draft":{},"save":{"seatInfo":{"data":{"1":{"0":22}},"count":0},"data":{"1":{"x":427.696,"y":160.539,"h":371.324,"w":734.069,"active":false,"draggable":true,"resizable":true,"id":1,"origin":1,"shape":"rectangular","type":"stand","startingRow":1,"seatNumberingPosition":1,"sector":"A","text":{"text":"TestText","textSize":20,"colour":"#20FFFF"},"numberingDirection":"left","category":"1","ticketCount":50}}}}} \ No newline at end of file diff --git a/src/server/config/settings.config.json b/src/server/config/settings.config.json index b08a5d6..9a1ec7b 100644 --- a/src/server/config/settings.config.json +++ b/src/server/config/settings.config.json @@ -9,5 +9,5 @@ "yourDomain": "http://localhost:8080", "mailSender": "libreevent ", "maxTickets": 10, - "currency": "USD" + "currency": "CHF" } \ No newline at end of file diff --git a/src/webapp/main/src/components/noseatplan.vue b/src/webapp/main/src/components/noseatplan.vue index 4757705..aa6f366 100644 --- a/src/webapp/main/src/components/noseatplan.vue +++ b/src/webapp/main/src/components/noseatplan.vue @@ -161,7 +161,9 @@ export default { } }, loadTickets () { - // TODO: Load from server + fetch( '/getAPI/getEvent?event=' + sessionStorage.getItem( 'selectedTicket' ) ).then( res => { + + } ); } }, created () { diff --git a/src/webapp/main/src/views/admin/EventsView.vue b/src/webapp/main/src/views/admin/EventsView.vue index 0af12da..426eee4 100644 --- a/src/webapp/main/src/views/admin/EventsView.vue +++ b/src/webapp/main/src/views/admin/EventsView.vue @@ -14,7 +14,7 @@