bump to V1.1.3

This commit is contained in:
2024-08-27 15:48:58 +02:00
parent c074d6c025
commit 7ebd61f612
27 changed files with 92 additions and 47 deletions

5
.gitignore vendored
View File

@@ -26,4 +26,7 @@ node_modules
._wordcount_selection.tex ._wordcount_selection.tex
/*.zip /*.zip
AppMarketing AppMarketing
yarn.lock
package-lock.json

13
package-lock.json generated
View File

@@ -1,13 +0,0 @@
{
"name": "libreevent",
"version": "1.0.1",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "libreevent",
"version": "1.0.1",
"license": "GPL-3.0-or-later"
}
}
}

View File

@@ -1,6 +1,6 @@
{ {
"name": "libreevent", "name": "libreevent",
"version": "1.1.0", "version": "1.1.3",
"description": "A free and open source event management solution", "description": "A free and open source event management solution",
"main": "/dist/app.js", "main": "/dist/app.js",
"scripts": { "scripts": {

View File

@@ -6,7 +6,7 @@
# #
# #
v="V1.1.0" v="V1.1.3"
echo " echo "
_ _ _ _ _ _ _ _
@@ -115,11 +115,11 @@ echo "
sleep 1 sleep 1
cd .. cd ..
zip -9r libreevent-$v-prebuilt.zip dist zip -9r libreevent-$v-custom.zip dist
echo " echo "
==> Created prebuilt archive <== ==> Created custom archive <==
==> Creating archive for node_modules <== ==> Creating archive for node_modules <==
" "
@@ -154,12 +154,22 @@ zip -9r libreevent-$v-full-icu.zip src/server/package.json src/server/package-lo
cd src/server cd src/server
npm uninstall full-icu npm uninstall full-icu
echo "
==> Archived full-icu config <==
==> Creating archive for prebuilt install <==
"
cd ../../dist cd ../../dist
cp ../README.md . cp ../README.md .
ls cd ..
rm -rf ./simple/node_modules
rm ./simple/package-lock.json
rm ./simple/yarn.lock
# rm -rf dist zip -9r libreevent-$v-prebuilt.zip simple
echo " echo "

View File

@@ -13,4 +13,4 @@
const libreevent = require( 'libreevent' ); const libreevent = require( 'libreevent' );
libreevent.run(); libreevent.run( __dirname );

View File

@@ -0,0 +1,7 @@
{
"host": "",
"database": "",
"user": "",
"password": "",
"port": 3306
}

View File

@@ -0,0 +1,12 @@
{
"host":"",
"port": 587,
"secure": false,
"auth": {
"user":"",
"pass":""
},
"tls": {
"servername": ""
}
}

View File

@@ -0,0 +1,17 @@
{
"init":false,
"setupDone":false,
"twoFA":"allow",
"twoFAMode":"simple",
"db":"mysql",
"payments":"stripe",
"name":"libreevent",
"yourDomain":"",
"mailSender":"",
"maxTickets":10,
"currency":"USD",
"gcInterval":300,
"ticketTimeout":900,
"startPage":"default",
"version":"1.0.1"
}

View File

@@ -19,5 +19,8 @@
"bugs": { "bugs": {
"url": "https://github.com/janishutz/libreevent/issues" "url": "https://github.com/janishutz/libreevent/issues"
}, },
"homepage": "https://libreevent.janishutz.com" "homepage": "https://libreevent.janishutz.com",
"dependencies": {
"libreevent": "^1.1.3"
}
} }

1
simple/setupkey.txt Normal file
View File

@@ -0,0 +1 @@
awe0g9pü02w 3tvaä9p4'efgt$ä'4fgtaäaw34ftg$a3qwf4t'p93wft3waqäü

View File

@@ -15,7 +15,7 @@ const mlt = require( 'multer' );
const pngToIco = require( 'png-to-ico' ); const pngToIco = require( 'png-to-ico' );
const multer = mlt(); const multer = mlt();
const fs = require( 'fs' ); const fs = require( 'fs' );
const settings = JSON.parse( fs.readFileSync( path.join( __dirname + '/../config/settings.config.json' ) ) ); const settings = JSON.parse( fs.readFileSync( path.join( __starterDir + '/config/settings.config.json' ) ) );
const getHandler = new geth( settings ); const getHandler = new geth( settings );
const postHandler = new posth( settings ); const postHandler = new posth( settings );

3
src/server/app.js Normal file
View File

@@ -0,0 +1,3 @@
const libreevent = require( './index.js' );
libreevent.run( __dirname );

View File

@@ -20,7 +20,7 @@ class POSTHandler {
this.temporarilySelectedTotals = {}; this.temporarilySelectedTotals = {};
this.temporaryTotals = {}; this.temporaryTotals = {};
this.freeSeats = {}; this.freeSeats = {};
this.settings = JSON.parse( fs.readFileSync( path.join( __dirname + '/../../config/settings.config.json' ) ) ); this.settings = JSON.parse( fs.readFileSync( path.join( __starterDir + '/config/settings.config.json' ) ) );
/* /*
Here, GC-Duty is scheduled to run every so often (defined in settings.config.json file, no GUI setting available. Here, GC-Duty is scheduled to run every so often (defined in settings.config.json file, no GUI setting available.

View File

@@ -23,7 +23,7 @@ const token = require( '../token.js' );
let createSSRApp = require( 'vue' ).createSSRApp; let createSSRApp = require( 'vue' ).createSSRApp;
let renderToString = require( 'vue/server-renderer' ).renderToString; let renderToString = require( 'vue/server-renderer' ).renderToString;
const settings = JSON.parse( fs.readFileSync( path.join( __dirname + '/../../config/settings.config.json' ) ) ); const settings = JSON.parse( fs.readFileSync( path.join( __starterDir + '/config/settings.config.json' ) ) );
module.exports.checkpassword = function checkpassword ( email, password ) { module.exports.checkpassword = function checkpassword ( email, password ) {
return new Promise( resolve => { return new Promise( resolve => {

View File

@@ -10,7 +10,7 @@
const path = require( 'path' ); const path = require( 'path' );
const fs = require( 'fs' ); const fs = require( 'fs' );
const settings = JSON.parse( fs.readFileSync( path.join( __dirname + '/../../config/settings.config.json' ) ) ); const settings = JSON.parse( fs.readFileSync( path.join( __starterDir + '/config/settings.config.json' ) ) );
const dbRef = { const dbRef = {
'user': 'libreevent_users', 'user': 'libreevent_users',
@@ -230,5 +230,5 @@ module.exports.saveSettings = ( settings ) => {
settingsToSave += settingsString[ letter ]; settingsToSave += settingsString[ letter ];
} }
} }
fs.writeFileSync( path.join( __dirname + '/../../config/settings.config.json' ), settingsToSave ); fs.writeFileSync( path.join( __starterDir + '/config/settings.config.json' ), settingsToSave );
}; };

View File

@@ -16,7 +16,7 @@ const path = require( 'path' );
class SQLDB { class SQLDB {
constructor ( ) { constructor ( ) {
this.sqlConnection = mysql.createConnection( JSON.parse( fs.readFileSync( path.join( __dirname + '/../../config/db.config.json' ) ) ) ); this.sqlConnection = mysql.createConnection( JSON.parse( fs.readFileSync( path.join( __starterDir + '/config/db.config.json' ) ) ) );
} }
connect ( ) { connect ( ) {

View File

@@ -12,7 +12,7 @@ const html2text = require( 'html-to-text' );
const db = require( '../db/db.js' ); const db = require( '../db/db.js' );
let transporter = mailer.createTransport( db.getJSONDataSync( '/config/mail.config.json' ) ); let transporter = mailer.createTransport( db.getJSONDataSync( __starterDir + '/config/mail.config.json' ) );
class MailManager { class MailManager {

View File

@@ -32,7 +32,7 @@ class PluginManager {
loadPaymentGatewaySettings () { loadPaymentGatewaySettings () {
return new Promise( ( resolve, reject ) => { return new Promise( ( resolve, reject ) => {
this.paymentGateway = JSON.parse( fs.readFileSync( path.join( __dirname + '/../../config/settings.config.json' ) ) ).payments; this.paymentGateway = JSON.parse( fs.readFileSync( path.join( __starterDir + '/config/settings.config.json' ) ) ).payments;
fs.readFile( path.join( __dirname + '/payments/' + this.paymentGateway + '/configOptions.json' ), ( err, optionsBuffer ) => { fs.readFile( path.join( __dirname + '/payments/' + this.paymentGateway + '/configOptions.json' ), ( err, optionsBuffer ) => {
if ( err ) reject( err ); if ( err ) reject( err );
fs.readFile( path.join( __dirname + '/payments/' + this.paymentGateway + '/config.payments.json' ), ( err, configBuffer ) => { fs.readFile( path.join( __dirname + '/payments/' + this.paymentGateway + '/config.payments.json' ), ( err, configBuffer ) => {

View File

@@ -18,7 +18,7 @@ const mailManager = new mm();
let createSSRApp = require( 'vue' ).createSSRApp; let createSSRApp = require( 'vue' ).createSSRApp;
let renderToString = require( 'vue/server-renderer' ).renderToString; let renderToString = require( 'vue/server-renderer' ).renderToString;
const settings = JSON.parse( fs.readFileSync( path.join( __dirname + '/../../config/settings.config.json' ) ) ); const settings = JSON.parse( fs.readFileSync( path.join( __starterDir + '/config/settings.config.json' ) ) );
class TicketGenerator { class TicketGenerator {
constructor () { constructor () {

View File

@@ -16,7 +16,8 @@ const http = require( 'http' );
const fs = require( 'fs' ); const fs = require( 'fs' );
const token = require( './backend/token.js' ); const token = require( './backend/token.js' );
module.exports.run = () => { module.exports.run = ( rootDir ) => {
global.__starterDir = rootDir ?? __dirname;
console.log( ` console.log( `
_ _ _ _ _ _ _ _
@@ -46,7 +47,7 @@ module.exports.run = () => {
` ); ` );
console.log( '[ Server ] loading settings' ); console.log( '[ Server ] loading settings' );
const settings = JSON.parse( fs.readFileSync( path.join( __dirname + '/config/settings.config.json' ) ) ); const settings = JSON.parse( fs.readFileSync( path.join( __starterDir + '/config/settings.config.json' ) ) );
// Route for static html file for start page (page is compiled using // Route for static html file for start page (page is compiled using
@@ -64,9 +65,10 @@ module.exports.run = () => {
// that good, but way easier to set up) // that good, but way easier to set up)
console.log( '[ Server ] Setting up static routes' ); console.log( '[ Server ] Setting up static routes' );
if ( settings.setupDone ) { if ( settings.setupDone ) {
app.use( express.static( 'webapp/main/dist' ) ); app.use( express.static( __dirname + '/webapp/main/dist' ) );
} else { } else {
app.use( express.static( 'webapp/setup/dist' ) ); console.log( '[ Server ] Booting into setup' );
app.use( express.static( __dirname + '/webapp/setup/dist' ) );
} }
// initialise express with middlewares // initialise express with middlewares

View File

@@ -1,12 +1,12 @@
{ {
"name": "libreevent", "name": "libreevent",
"version": "1.1.0", "version": "1.1.3",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "libreevent", "name": "libreevent",
"version": "1.1.0", "version": "1.1.3",
"license": "GPL-3.0-or-later", "license": "GPL-3.0-or-later",
"dependencies": { "dependencies": {
"@pdfme/generator": "^1.2.6", "@pdfme/generator": "^1.2.6",

View File

@@ -1,6 +1,6 @@
{ {
"name": "libreevent", "name": "libreevent",
"version": "1.1.0", "version": "1.1.3",
"description": "Free & Open source event management solution", "description": "Free & Open source event management solution",
"main": "index.js", "main": "index.js",
"directories": { "directories": {

View File

@@ -21,7 +21,7 @@ module.exports = ( app, settings ) => {
*/ */
app.post( '/setup/start', bodyParser.json(), ( request, response ) => { app.post( '/setup/start', bodyParser.json(), ( request, response ) => {
if ( request.body.token === '' + fs.readFileSync( path.join( __dirname + '/../setupkey.txt' ) ) ) { if ( request.body.token === '' + fs.readFileSync( path.join( __starterDir + '/setupkey.txt' ) ) ) {
request.session.setupKeyOk = true; request.session.setupKeyOk = true;
response.send( 'ok' ); response.send( 'ok' );
} else { } else {
@@ -39,7 +39,7 @@ module.exports = ( app, settings ) => {
app.post( '/setup/saveBasicSettings', bodyParser.json(), ( req, res ) => { app.post( '/setup/saveBasicSettings', bodyParser.json(), ( req, res ) => {
if ( req.session.setupKeyOk ) { if ( req.session.setupKeyOk ) {
fs.writeFileSync( path.join( __dirname + '/../config/db.config.json' ), JSON.stringify( req.body.db ) ); fs.writeFileSync( path.join( __starterDir + '/config/db.config.json' ), JSON.stringify( req.body.db ) );
let emailSettings = {}; let emailSettings = {};
emailSettings[ 'host' ] = req.body.email.host; emailSettings[ 'host' ] = req.body.email.host;
emailSettings[ 'port' ] = req.body.email.port; emailSettings[ 'port' ] = req.body.email.port;
@@ -47,7 +47,7 @@ module.exports = ( app, settings ) => {
emailSettings[ 'auth' ] = { 'user': req.body.email.user, 'pass': req.body.email.pass }; emailSettings[ 'auth' ] = { 'user': req.body.email.user, 'pass': req.body.email.pass };
let hostSplit = req.body.email.host.split( '.' ); let hostSplit = req.body.email.host.split( '.' );
emailSettings[ 'tls' ] = { 'servername': ( hostSplit[ hostSplit.length - 2 ] + '.' + hostSplit[ hostSplit.length - 1 ] ) }; emailSettings[ 'tls' ] = { 'servername': ( hostSplit[ hostSplit.length - 2 ] + '.' + hostSplit[ hostSplit.length - 1 ] ) };
fs.writeFileSync( path.join( __dirname + '/../config/mail.config.json' ), JSON.stringify( emailSettings ) ); fs.writeFileSync( path.join( __starterDir + '/config/mail.config.json' ), JSON.stringify( emailSettings ) );
if ( db === null ) { if ( db === null ) {
db = require( '../backend/db/db.js' ); db = require( '../backend/db/db.js' );
pwm = require( '../admin/pwdmanager.js' ); pwm = require( '../admin/pwdmanager.js' );

View File

@@ -1,12 +1,12 @@
{ {
"name": "libreevent", "name": "libreevent",
"version": "1.1.0", "version": "1.1.3",
"lockfileVersion": 2, "lockfileVersion": 2,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "libreevent", "name": "libreevent",
"version": "1.1.0", "version": "1.1.3",
"dependencies": { "dependencies": {
"@pdfme/generator": "^1.2.3", "@pdfme/generator": "^1.2.3",
"@pdfme/ui": "^3.2.1", "@pdfme/ui": "^3.2.1",

View File

@@ -1,6 +1,6 @@
{ {
"name": "libreevent", "name": "libreevent",
"version": "1.1.0", "version": "1.1.3",
"private": false, "private": false,
"scripts": { "scripts": {
"dev": "vite --host", "dev": "vite --host",

View File

@@ -1,12 +1,12 @@
{ {
"name": "libreevent-setup", "name": "libreevent-setup",
"version": "1.1.0", "version": "1.1.3",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "libreevent-setup", "name": "libreevent-setup",
"version": "1.1.0", "version": "1.1.3",
"dependencies": { "dependencies": {
"pinia": "^2.1.3", "pinia": "^2.1.3",
"vue": "^3.3.4", "vue": "^3.3.4",

View File

@@ -1,6 +1,6 @@
{ {
"name": "libreevent-setup", "name": "libreevent-setup",
"version": "1.1.0", "version": "1.1.3",
"private": true, "private": true,
"scripts": { "scripts": {
"dev": "vite", "dev": "vite",