From 0a1dee882af2fc9985c4a2ae3e8662953d2f6e43 Mon Sep 17 00:00:00 2001 From: Janis Hutz Date: Thu, 10 Aug 2023 14:11:13 +0200 Subject: [PATCH] restructure and rethink setup --- src/server/app.js | 8 ++-- src/server/config/settings.config.json | 3 +- src/server/setup/setupRoutes.js | 10 ++++- src/server/webapp | 2 +- .../src/views/admin/events/AnalyticsView.vue | 1 + src/webapp/setup/src/router/setupRoutes.js | 27 ------------- .../setup/src/views/SetupCompleteView.vue | 6 +++ .../setup/src/views/SetupEventsView.vue | 39 ------------------- src/webapp/setup/src/views/SetupPageView.vue | 6 +-- .../setup/src/views/SetupPaymentsView.vue | 39 ------------------- src/webapp/setup/src/views/SetupTOSView.vue | 39 ------------------- src/webapp/setup/src/views/SetupView.vue | 11 ------ 12 files changed, 26 insertions(+), 165 deletions(-) delete mode 100644 src/webapp/setup/src/views/SetupEventsView.vue delete mode 100644 src/webapp/setup/src/views/SetupPaymentsView.vue delete mode 100644 src/webapp/setup/src/views/SetupTOSView.vue diff --git a/src/server/app.js b/src/server/app.js index 5220525..06f2e63 100644 --- a/src/server/app.js +++ b/src/server/app.js @@ -54,9 +54,9 @@ const settings = JSON.parse( fs.readFileSync( path.join( __dirname + '/config/se console.log( '[ Server ] Setting up static routes' ); if ( settings.init ) { - app.use( express.static( '../webapp/main/dist' ) ); + app.use( express.static( 'webapp/main/dist' ) ); } else { - app.use( express.static( '../webapp/setup/dist' ) ); + app.use( express.static( 'webapp/setup/dist' ) ); } // initialise express with middlewares @@ -76,7 +76,7 @@ app.use( expressSession( { // app.use( bodyParser.json() ); app.use( cookieParser() ); -let file = path.join( __dirname + '/webapp/index.html' ); +let file = path.join( __dirname + '/webapp/main/dist/index.html' ); console.log( '[ Server ] loading backend components' ); if ( settings.init ) { @@ -86,7 +86,7 @@ if ( settings.init ) { require( './backend/userRoutes.js' )( app, settings ); // user routes } else { require( './setup/setupRoutes.js' )( app, settings ); // setup routes - file = path.join( __dirname + '/../webapp/setup/dist/index.html' ); + file = path.join( __dirname + '/webapp/setup/dist/index.html' ); } console.log( '[ Server ] loading plugins' ); diff --git a/src/server/config/settings.config.json b/src/server/config/settings.config.json index 6a3e9d1..6a01829 100644 --- a/src/server/config/settings.config.json +++ b/src/server/config/settings.config.json @@ -1,6 +1,7 @@ { - "init": true, + "init": false, "twoFA": "allow", + "setupKey": "hello world", "twoFAMode": "enhanced", "db": "mysql", "payments": "stripe", diff --git a/src/server/setup/setupRoutes.js b/src/server/setup/setupRoutes.js index 1fa016e..3e1b4da 100644 --- a/src/server/setup/setupRoutes.js +++ b/src/server/setup/setupRoutes.js @@ -7,11 +7,19 @@ * */ +const db = require( '../backend/db/db.js' ); + module.exports = ( app, settings ) => { /* Admin login route that checks the password */ - app.get( '/setup/start', ( request, response ) => {} ); + app.get( '/setup/start', ( request, response ) => { + if ( request.query.token === settings.setupToken ) { + response.send( 'ok' ); + } else { + response.send( 'incorrect' ); + } + } ); } \ No newline at end of file diff --git a/src/server/webapp b/src/server/webapp index 2b6e2f3..210cd69 120000 --- a/src/server/webapp +++ b/src/server/webapp @@ -1 +1 @@ -../webapp/main/dist/ \ No newline at end of file +../webapp/ \ No newline at end of file diff --git a/src/webapp/main/src/views/admin/events/AnalyticsView.vue b/src/webapp/main/src/views/admin/events/AnalyticsView.vue index b975b19..d580229 100644 --- a/src/webapp/main/src/views/admin/events/AnalyticsView.vue +++ b/src/webapp/main/src/views/admin/events/AnalyticsView.vue @@ -11,6 +11,7 @@

Event analytics

Get insights into tickets sold, people checked in, available tickets, revenue, etc, in real time!

+

Coming soon! (in the next major update)

diff --git a/src/webapp/setup/src/router/setupRoutes.js b/src/webapp/setup/src/router/setupRoutes.js index 98a83dc..fb5bc19 100644 --- a/src/webapp/setup/src/router/setupRoutes.js +++ b/src/webapp/setup/src/router/setupRoutes.js @@ -43,33 +43,6 @@ export default { setupAuthRequired: true, } }, - { - path: 'payments', - name: 'setupPayments', - component: () => import( '../views/SetupPaymentsView.vue' ), - meta: { - title: 'Payments :: Setup - libreevent', - setupAuthRequired: true, - } - }, - { - path: 'events', - name: 'setupEvents', - component: () => import( '../views/SetupEventsView.vue' ), - meta: { - title: 'Events :: Setup - libreevent', - setupAuthRequired: true, - } - }, - { - path: 'tos', - name: 'setupTOS', - component: () => import( '../views/SetupTOSView.vue' ), - meta: { - title: 'TOS (Optional) :: Setup - libreevent', - setupAuthRequired: true, - } - }, { path: 'complete', name: 'setupComplete', diff --git a/src/webapp/setup/src/views/SetupCompleteView.vue b/src/webapp/setup/src/views/SetupCompleteView.vue index 631acc6..4490427 100644 --- a/src/webapp/setup/src/views/SetupCompleteView.vue +++ b/src/webapp/setup/src/views/SetupCompleteView.vue @@ -13,6 +13,12 @@

Setup complete!

Congratulations on finishing the setup of libreǝvent!

Please restart the node.js application to have it load the actual user interface for libreevent. You may then log in at {{ windowURL }}

+

In the admin panel, there are a few things you still need to change. You may find a list of all things here

+ diff --git a/src/webapp/setup/src/views/SetupEventsView.vue b/src/webapp/setup/src/views/SetupEventsView.vue deleted file mode 100644 index 4a294a3..0000000 --- a/src/webapp/setup/src/views/SetupEventsView.vue +++ /dev/null @@ -1,39 +0,0 @@ - - - - - diff --git a/src/webapp/setup/src/views/SetupPageView.vue b/src/webapp/setup/src/views/SetupPageView.vue index fc90f9d..35f28db 100644 --- a/src/webapp/setup/src/views/SetupPageView.vue +++ b/src/webapp/setup/src/views/SetupPageView.vue @@ -29,7 +29,7 @@ export default { data () { return { - options: { 'default': { 'id': 'default', 'name': 'Default' }}, + options: { 'default': { 'id': 'default', 'name': 'Default' } }, } }, computed: { @@ -37,8 +37,8 @@ }, methods: { submit () { - this.backendStore.addVisitedSetupPages( 'payments', true ); - this.$router.push( '/setup/payments' ); + this.backendStore.addVisitedSetupPages( 'complete', true ); + this.$router.push( '/setup/complete' ); } }, }; diff --git a/src/webapp/setup/src/views/SetupPaymentsView.vue b/src/webapp/setup/src/views/SetupPaymentsView.vue deleted file mode 100644 index bf50d48..0000000 --- a/src/webapp/setup/src/views/SetupPaymentsView.vue +++ /dev/null @@ -1,39 +0,0 @@ - - - - - diff --git a/src/webapp/setup/src/views/SetupTOSView.vue b/src/webapp/setup/src/views/SetupTOSView.vue deleted file mode 100644 index 252e0fc..0000000 --- a/src/webapp/setup/src/views/SetupTOSView.vue +++ /dev/null @@ -1,39 +0,0 @@ - - - - - diff --git a/src/webapp/setup/src/views/SetupView.vue b/src/webapp/setup/src/views/SetupView.vue index ff4c5e6..b81afe5 100644 --- a/src/webapp/setup/src/views/SetupView.vue +++ b/src/webapp/setup/src/views/SetupView.vue @@ -15,12 +15,6 @@ Root account | Landing page Landing page | - Payments - Payments | - Events - Events | - TOS - TOS | Complete Complete @@ -50,11 +44,6 @@ created () { this.backendStore.loadVisitedSetupPages(); }, - methods: { - unlock ( page ) { - this.backendStore.addVisitedSetupPages( page, true ); - } - } };