mirror of
https://github.com/janishutz/libreevent.git
synced 2025-11-25 05:14:23 +00:00
cleanup work and prep for testing
This commit is contained in:
@@ -1 +1 @@
|
|||||||
{"test4":{"name":"Test4Event","description":"Let's see what happens if I update the description, how fast it is reflected in the UI","location":"test2","date":"2023-10-30T10:00:00.000Z","categories":{"1":{"price":{"1":20,"2":30},"bg":"#ff0000","fg":"#ff0000","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":"CHF","isDraft":true,"locationName":"TestLocation2","hasSeatplan":true,"totalSeats":353}}
|
{"test4":{"name":"Test4Event","description":"Let's see what happens if I update the description, how fast it is reflected in the UI","location":"test2","date":"2023-10-30T10:00:00.000Z","categories":{"1":{"price":{"1":20,"2":30},"bg":"#ff0000","fg":"#ff0000","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":"CHF","isDraft":true,"locationName":"TestLocation2","hasSeatplan":true,"totalSeats":353},"test3":{"name":"TestEvent3","description":"This is another test event, this time without seat plan","location":"test","date":"2023-11-25T19:00:00.000Z","categories":{"1":{"price":{"1":20,"2":25},"bg":"#FFFFFF","fg":"#000000","name":"Category 1","id":1,"ticketCount":50},"2":{"price":{"1":30,"2":35},"bg":"#FFFFFF","fg":"#000000","name":"Category 2","id":2,"ticketCount":50}},"ageGroups":{"1":{"id":1,"name":"Child","age":"0 - 15.99"},"2":{"id":2,"name":"Adult"}},"maxTickets":0,"eventID":"test3","time":"19:00:00.000","startingPrice":20,"currency":"CHF","locationName":"TestLocation","hasSeatplan":false,"totalSeats":null}}
|
||||||
@@ -1 +1 @@
|
|||||||
{"test4":{"name":"Test4Event","description":"Let's see what happens if I update the description, how fast it is reflected in the UI","location":"test2","date":"2023-10-30T10:00:00.000Z","categories":{"1":{"price":{"1":20,"2":30},"bg":"#ff0000","fg":"#ff0000","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":"CHF","isDraft":true,"locationName":"TestLocation2","hasSeatplan":true,"totalSeats":353}}
|
{"test4":{"name":"Test4Event","description":"Let's see what happens if I update the description, how fast it is reflected in the UI","location":"test2","date":"2023-10-30T10:00:00.000Z","categories":{"1":{"price":{"1":20,"2":30},"bg":"#ff0000","fg":"#ff0000","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":"CHF","isDraft":true,"locationName":"TestLocation2","hasSeatplan":true,"totalSeats":353},"test3":{"name":"TestEvent3","description":"This is another test event, this time without seat plan","location":"test","date":"2023-11-25T19:00:00.000Z","categories":{"1":{"price":{"1":20,"2":25},"bg":"#FFFFFF","fg":"#000000","name":"Category 1","id":1,"ticketCount":50},"2":{"price":{"1":30,"2":35},"bg":"#FFFFFF","fg":"#000000","name":"Category 2","id":2,"ticketCount":50}},"ageGroups":{"1":{"id":1,"name":"Child","age":"0 - 15.99"},"2":{"id":2,"name":"Adult"}},"maxTickets":0,"eventID":"test3","time":"19:00:00.000","startingPrice":20,"currency":"CHF","locationName":"TestLocation","hasSeatplan":false,"totalSeats":null}}
|
||||||
@@ -1 +1 @@
|
|||||||
{"test2":{"locationID":"test2","name":"TestLocation2","seatplan-enabled":true,"totalSeats":352},"test":{"locationID":"test","name":"TestLocation","seatplan-enabled":true}}
|
{"test2":{"locationID":"test2","name":"TestLocation2","seatplan-enabled":true,"totalSeats":352},"test":{"locationID":"test","name":"TestLocation","seatplan-enabled":false}}
|
||||||
@@ -111,7 +111,6 @@
|
|||||||
}
|
}
|
||||||
} );
|
} );
|
||||||
document.getElementById( 'subject' ).value = '';
|
document.getElementById( 'subject' ).value = '';
|
||||||
document.getElementById( 'mail' ).value = '';
|
|
||||||
document.getElementsByClassName( 'ql-editor' )[0].innerHTML = '';
|
document.getElementsByClassName( 'ql-editor' )[0].innerHTML = '';
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "libreevent",
|
"name": "libreevent",
|
||||||
"version": "0.1.0",
|
"version": "1.0.0",
|
||||||
"private": true,
|
"private": false,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite --host",
|
"dev": "vite --host",
|
||||||
"preview": "vite preview --host",
|
"preview": "vite preview --host",
|
||||||
|
|||||||
@@ -10,11 +10,11 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<h2>Plugins</h2>
|
<h2>Plugins</h2>
|
||||||
<p>Here you can manage installed plugins. If you want to install more plugins, please follow the guide <a href="https://librevent.janishutz.com/docs/plugins/install">here</a></p>
|
<p>Here you can manage installed plugins. If you want to install more plugins, please follow the guide <a href="https://librevent.janishutz.com/docs/plugins/install">here</a>. Note that some plugins might not follow the libreevent design scheme.</p>
|
||||||
<div class="bigButton-container">
|
<div class="bigButton-container">
|
||||||
<a class="bigButton" v-for="plugin in allPlugins" :href="plugin.settingsURL">
|
<a class="bigButton" v-for="plugin in allPlugins" :href="plugin.settingsURL">
|
||||||
<object data="/otherAssets/libreeventLogo.png" type="image/png" class="plugin-logo">
|
<object data="/otherAssets/libreeventLogo.png" type="image/png" class="plugin-logo" @click="$router.push( plugin.settingsURL )">
|
||||||
<img :src="plugin.logo">
|
<img :src="plugin.logo" @click="$router.push( plugin.settingsURL )" style="cursor: pointer;">
|
||||||
</object>
|
</object>
|
||||||
<h3 style="margin-bottom: 0;">{{ plugin.pluginName }}</h3>
|
<h3 style="margin-bottom: 0;">{{ plugin.pluginName }}</h3>
|
||||||
<p>{{ plugin.pluginDescription }}</p>
|
<p>{{ plugin.pluginDescription }}</p>
|
||||||
|
|||||||
@@ -32,8 +32,8 @@
|
|||||||
<div class="admin-settings">
|
<div class="admin-settings">
|
||||||
<h2>Admin Accounts</h2>
|
<h2>Admin Accounts</h2>
|
||||||
<button @click="createAccount()">Create new account</button>
|
<button @click="createAccount()">Create new account</button>
|
||||||
<p style="margin-bottom: 0;">Before setting or editing permissions here, please read the corresponding section of the documentation <a href="https://libreevent.janishutz.com/docs/admin-panel/settings/admin-accounts#permissions" target="_blank">here</a>.</p>
|
<!-- <p style="margin-bottom: 0;">Before setting or editing permissions here, please read the corresponding section of the documentation <a href="https://libreevent.janishutz.com/docs/admin-panel/settings/admin-accounts#permissions" target="_blank">here</a>.</p> -->
|
||||||
<p style="margin-top: 0;">Usually, the permissions automatically set by the system on account creation should be appropriate. (TIP: Right click for more options)</p>
|
<!-- <p style="margin-top: 0;">Usually, the permissions automatically set by the system on account creation should be appropriate. (TIP: Right click for more options)</p> -->
|
||||||
<div v-if="Object.keys( adminAccounts ).length > 0" class="account-wrapper">
|
<div v-if="Object.keys( adminAccounts ).length > 0" class="account-wrapper">
|
||||||
<div v-for="account in adminAccounts" class="account" @click="showPasswordSettings( account.email );" title="Edit settings of this account (right click for more options)" @contextmenu="( e ) => { e.preventDefault(); openRightClickMenu( account.email, e ); }">
|
<div v-for="account in adminAccounts" class="account" @click="showPasswordSettings( account.email );" title="Edit settings of this account (right click for more options)" @contextmenu="( e ) => { e.preventDefault(); openRightClickMenu( account.email, e ); }">
|
||||||
<div class="location-name">
|
<div class="location-name">
|
||||||
@@ -223,27 +223,27 @@
|
|||||||
createAccount() {
|
createAccount() {
|
||||||
this.currentPopup = 'createAccount';
|
this.currentPopup = 'createAccount';
|
||||||
this.$refs.popup.openPopup( 'Create new admin user', {
|
this.$refs.popup.openPopup( 'Create new admin user', {
|
||||||
'role': {
|
// 'role': {
|
||||||
'display': 'User role',
|
// 'display': 'User role',
|
||||||
'id': 'role',
|
// 'id': 'role',
|
||||||
'tooltip':'With this setting you can choose one of the preset permissions for users. Account management is only allowed for the root user.',
|
// 'tooltip':'With this setting you can choose one of the preset permissions for users. Account management is only allowed for the root user.',
|
||||||
'value': 'eventManager',
|
// 'value': 'eventManager',
|
||||||
'type': 'select',
|
// 'type': 'select',
|
||||||
'restrictions': {
|
// 'restrictions': {
|
||||||
'fullAccess': {
|
// 'fullAccess': {
|
||||||
'value': 'fullAccess',
|
// 'value': 'fullAccess',
|
||||||
'displayName': 'Full Access'
|
// 'displayName': 'Full Access'
|
||||||
},
|
// },
|
||||||
'eventManager': {
|
// 'eventManager': {
|
||||||
'value': 'eventManager',
|
// 'value': 'eventManager',
|
||||||
'displayName': 'Event Manager'
|
// 'displayName': 'Event Manager'
|
||||||
},
|
// },
|
||||||
'entryControl': {
|
// 'entryControl': {
|
||||||
'value': 'entryControl',
|
// 'value': 'entryControl',
|
||||||
'displayName': 'Entry Control'
|
// 'displayName': 'Entry Control'
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
},
|
// },
|
||||||
'username': {
|
'username': {
|
||||||
'display': 'Username',
|
'display': 'Username',
|
||||||
'id': 'username',
|
'id': 'username',
|
||||||
@@ -290,10 +290,11 @@
|
|||||||
, 'settings' );
|
, 'settings' );
|
||||||
},
|
},
|
||||||
executeCommand( command ) {
|
executeCommand( command ) {
|
||||||
if ( command === 'openPermissions' ) {
|
// if ( command === 'openPermissions' ) {
|
||||||
this.currentPopup = 'account';
|
// this.currentPopup = 'account';
|
||||||
this.showAccountSettings( this.currentlyOpenMenu );
|
// this.showAccountSettings( this.currentlyOpenMenu );
|
||||||
} else if ( command === 'deleteUser' ) {
|
// } else
|
||||||
|
if ( command === 'deleteUser' ) {
|
||||||
this.currentPopup = 'deleteUser';
|
this.currentPopup = 'deleteUser';
|
||||||
this.$refs.popup.openPopup( 'Do you really want to delete the user ' + this.currentlyOpenMenu + '?', {}, 'confirm' );
|
this.$refs.popup.openPopup( 'Do you really want to delete the user ' + this.currentlyOpenMenu + '?', {}, 'confirm' );
|
||||||
} else if ( command === 'updatePassword' ) {
|
} else if ( command === 'updatePassword' ) {
|
||||||
@@ -386,7 +387,10 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
openRightClickMenu( id, event ) {
|
openRightClickMenu( id, event ) {
|
||||||
this.$refs.rclk.openRightClickMenu( event, { 'permissions': { 'command': 'openPermissions', 'symbol': 'edit', 'display': 'Edit permissions' }, 'password': { 'command': 'updatePassword', 'symbol': 'password', 'display': 'Edit account settings' }, 'delete': { 'command': 'deleteUser', 'symbol': 'delete', 'display': 'Delete User' } } )
|
this.$refs.rclk.openRightClickMenu( event, {
|
||||||
|
// 'permissions': { 'command': 'openPermissions', 'symbol': 'edit', 'display': 'Edit permissions' },
|
||||||
|
'password': { 'command': 'updatePassword', 'symbol': 'password', 'display': 'Edit account settings' },
|
||||||
|
'delete': { 'command': 'deleteUser', 'symbol': 'delete', 'display': 'Delete User' } } )
|
||||||
this.currentlyOpenMenu = id;
|
this.currentlyOpenMenu = id;
|
||||||
},
|
},
|
||||||
loadData() {
|
loadData() {
|
||||||
|
|||||||
@@ -77,13 +77,13 @@
|
|||||||
<div class="category-details">{{ ageGroup.name }}<div style="display: inline;" v-if="ageGroup.age"> ({{ ageGroup.age }})</div>:</div>
|
<div class="category-details">{{ ageGroup.name }}<div style="display: inline;" v-if="ageGroup.age"> ({{ ageGroup.age }})</div>:</div>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<input type="number" v-model="category.price[ ageGroup.id ]">
|
{{ event.currency }} <input type="number" v-model="category.price[ ageGroup.id ]">
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><div class="category-details">Colour:</div></td>
|
<td><div class="category-details">Colour:</div></td>
|
||||||
<td>
|
<td>
|
||||||
<input type="text" data-coloris v-model="category.fg" onkeydown="return false;">
|
{{ event.currency }} <input type="text" data-coloris v-model="category.fg" onkeydown="return false;">
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr v-if="!hasSeatPlan">
|
<tr v-if="!hasSeatPlan">
|
||||||
|
|||||||
@@ -59,7 +59,11 @@
|
|||||||
this.$router.push( '/tickets' );
|
this.$router.push( '/tickets' );
|
||||||
}
|
}
|
||||||
this.eventID = sessionStorage.getItem( 'selectedTicket' );
|
this.eventID = sessionStorage.getItem( 'selectedTicket' );
|
||||||
this.hasSeatplan = sessionStorage.getItem( 'hasSeatplan' );
|
if ( sessionStorage.getItem( 'hasSeatplan' ) === 'false' ) {
|
||||||
|
this.hasSeatplan = false;
|
||||||
|
} else {
|
||||||
|
this.hasSeatplan = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
Reference in New Issue
Block a user