mirror of
https://github.com/janishutz/libreevent.git
synced 2025-11-25 21:34:24 +00:00
password reset preparations done
This commit is contained in:
@@ -64,6 +64,9 @@
|
|||||||
<button @click="closePopup( 'cancel' )" title="Cancel changes">Cancel</button>
|
<button @click="closePopup( 'cancel' )" title="Cancel changes">Cancel</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div v-else-if="contentType === 'iframe'" class="options iframe-wrapper">
|
||||||
|
<iframe :src="data.options.link" frameborder="0" class="popup-iframe"></iframe>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -193,6 +196,15 @@
|
|||||||
background-color: var( --popup-color );
|
background-color: var( --popup-color );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.popup-iframe {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.iframe-wrapper {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
.small {
|
.small {
|
||||||
width: 40%;
|
width: 40%;
|
||||||
height: 40%;
|
height: 40%;
|
||||||
|
|||||||
@@ -116,6 +116,15 @@ export default [
|
|||||||
transition: 'scale'
|
transition: 'scale'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: '/password-reset',
|
||||||
|
name: 'passwordReset',
|
||||||
|
component: () => import( '@/views/user/PasswordResetView.vue' ),
|
||||||
|
meta: {
|
||||||
|
title: 'Reset password - ',
|
||||||
|
transition: 'scale'
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
path: '/guest',
|
path: '/guest',
|
||||||
name: 'guestPurchase',
|
name: 'guestPurchase',
|
||||||
|
|||||||
@@ -10,8 +10,9 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<h2>Plugins</h2>
|
<h2>Plugins</h2>
|
||||||
<p>Here you can manage installed plugins and install more</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></p>
|
||||||
<div class="bigButtons"></div>
|
<div class="bigButtons"></div>
|
||||||
|
<!-- TODO: Get all installed plugins -->
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|||||||
@@ -25,6 +25,7 @@
|
|||||||
|
|
||||||
<div class="admin-settings">
|
<div class="admin-settings">
|
||||||
<h2>Admin Accounts</h2>
|
<h2>Admin Accounts</h2>
|
||||||
|
<button @click="createAccount()">Create new account</button>
|
||||||
<p>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>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>.
|
||||||
<br>Usually, the permissions automatically set by the system on account creation should be appropriate.</p>
|
<br>Usually, the permissions automatically set by the system on account creation should be appropriate.</p>
|
||||||
<div v-for="account in adminAccounts" class="account" @click="showAccountSettings( account.username );" title="Edit permissions of this account (right click for more options)" @contextmenu="( e ) => { e.preventDefault(); openRightClickMenu( account.username, e ); }">
|
<div v-for="account in adminAccounts" class="account" @click="showAccountSettings( account.username );" title="Edit permissions of this account (right click for more options)" @contextmenu="( e ) => { e.preventDefault(); openRightClickMenu( account.username, e ); }">
|
||||||
@@ -85,9 +86,16 @@
|
|||||||
'type': 'toggle',
|
'type': 'toggle',
|
||||||
},
|
},
|
||||||
'phoneNumberRequired': {
|
'phoneNumberRequired': {
|
||||||
'display': 'Require user to provide address?',
|
'display': 'Require user to provide phone number?',
|
||||||
'id': 'phoneNumberRequired',
|
'id': 'phoneNumberRequired',
|
||||||
'tooltip':'With this toggle you may specify whether or not a user has to provide their address when purchasing something. (Keep GDPR in mind when processing data!)',
|
'tooltip':'With this toggle you may specify whether or not a user has to provide their phone number when purchasing something. (Keep GDPR in mind when processing data!)',
|
||||||
|
'value': false,
|
||||||
|
'type': 'toggle',
|
||||||
|
},
|
||||||
|
'dobRequired': {
|
||||||
|
'display': 'Require user to provide their birth date?',
|
||||||
|
'id': 'dobRequired',
|
||||||
|
'tooltip':'With this toggle you may specify whether or not a user has to provide their date of birth when purchasing something. (Keep GDPR in mind when processing data!)',
|
||||||
'value': false,
|
'value': false,
|
||||||
'type': 'toggle',
|
'type': 'toggle',
|
||||||
},
|
},
|
||||||
@@ -154,40 +162,46 @@
|
|||||||
},
|
},
|
||||||
showPaymentSettings () {
|
showPaymentSettings () {
|
||||||
this.$refs.popup.openPopup( 'Payment gateway settings', {
|
this.$refs.popup.openPopup( 'Payment gateway settings', {
|
||||||
|
'link': '/payments/settings',
|
||||||
|
}
|
||||||
|
, 'iframe' );
|
||||||
|
},
|
||||||
|
createAccount() {
|
||||||
|
this.$refs.popup.openPopup( 'Create new admin user', {
|
||||||
'pagesSettings': {
|
'pagesSettings': {
|
||||||
'display': 'Modify pages',
|
'display': 'Modify pages',
|
||||||
'id': 'pagesSettings',
|
'id': 'pagesSettings',
|
||||||
'tooltip':'Change this setting to allow or disallow the selected user to access and change any settings of pages like the start page.',
|
'tooltip':'With this setting you can choose one of the preset permissions for users. Account management is only allowed for the root user.',
|
||||||
'value': false,
|
'value': 'eventManager',
|
||||||
'type': 'toggle',
|
'type': 'select',
|
||||||
|
'restrictions': {
|
||||||
|
'fullAccess': {
|
||||||
|
'value': 'fullAccess',
|
||||||
|
'displayName': 'Full Access'
|
||||||
},
|
},
|
||||||
'locationsSettings': {
|
'eventManager': {
|
||||||
'display': 'Location settings and seat plans',
|
'value': 'eventManager',
|
||||||
'id': 'locationsSettings',
|
'displayName': 'Event Manager'
|
||||||
'tooltip':'Change this setting to allow or disallow the selected user to modify, delete or create locations with their corresponding seat plans.',
|
|
||||||
'value': false,
|
|
||||||
'type': 'toggle',
|
|
||||||
},
|
|
||||||
'plugins': {
|
|
||||||
'display': 'Plugin management',
|
|
||||||
'id': 'plugins',
|
|
||||||
'tooltip':'Change this setting to allow or disallow the selected user to install or uninstall plugins. Some plugins might allow you to set extra permissions inside of their settings panels',
|
|
||||||
'value': false,
|
|
||||||
'type': 'toggle',
|
|
||||||
},
|
|
||||||
'events': {
|
|
||||||
'display': 'Event management',
|
|
||||||
'id': 'events',
|
|
||||||
'tooltip':'Change this setting to allow or disallow the selected user to install or uninstall plugins. Some plugins might allow you to set extra permissions inside of their settings panels',
|
|
||||||
'value': false,
|
|
||||||
'type': 'toggle',
|
|
||||||
},
|
},
|
||||||
'entryControl': {
|
'entryControl': {
|
||||||
'display': 'Entry control',
|
'value': 'entryControl',
|
||||||
'id': 'entryControl',
|
'displayName': 'Entry Control'
|
||||||
'tooltip':'Change this setting to allow or disallow the selected user to execute entry control at the entrance to your event location.',
|
}
|
||||||
'value': true,
|
}
|
||||||
'type': 'toggle',
|
},
|
||||||
|
'username': {
|
||||||
|
'display': 'Username',
|
||||||
|
'id': 'username',
|
||||||
|
'tooltip':'Add a username for this user',
|
||||||
|
'value': '',
|
||||||
|
'type': 'text',
|
||||||
|
},
|
||||||
|
'email': {
|
||||||
|
'display': 'Email',
|
||||||
|
'id': 'email',
|
||||||
|
'tooltip':'Add an email-address for this user',
|
||||||
|
'value': '',
|
||||||
|
'type': 'text',
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
, 'settings' );
|
, 'settings' );
|
||||||
|
|||||||
42
src/webapp/main/src/views/user/PasswordResetView.vue
Normal file
42
src/webapp/main/src/views/user/PasswordResetView.vue
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
<!--
|
||||||
|
* libreevent - PasswordResetView.vue
|
||||||
|
*
|
||||||
|
* Created by Janis Hutz 08/10/2023, Licensed under the GPL V3 License
|
||||||
|
* https://janishutz.com, development@janishutz.com
|
||||||
|
*
|
||||||
|
*
|
||||||
|
-->
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<h1>Password Reset</h1>
|
||||||
|
<p>Please enter the email address connected to your account to begin the password reset process.</p>
|
||||||
|
<input type="email" v-model="email"><br>
|
||||||
|
<button @click="reset()">Reset</button>
|
||||||
|
<notifications ref="notification" location="topright" size="bigger"></notifications>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import notifications from '@/components/notifications/notifications.vue';
|
||||||
|
|
||||||
|
export default {
|
||||||
|
data () {
|
||||||
|
return {
|
||||||
|
email: '',
|
||||||
|
}
|
||||||
|
},
|
||||||
|
components: {
|
||||||
|
notifications,
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
reset() {
|
||||||
|
const startNotification = this.$refs.notification.createNotification( 'Starting password reset', 20, 'progress', 'normal' );
|
||||||
|
this.$refs.notification.cancelNotification( startNotification );
|
||||||
|
this.$refs.notification.createNotification( 'An account with this email address does not exist.', 5, 'error', 'normal' );
|
||||||
|
this.$refs.notification.cancelNotification( startNotification );
|
||||||
|
this.$refs.notification.createNotification( 'Password reset email sent. Please follow the instructions given there.', 30, 'ok', 'normal' );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
Reference in New Issue
Block a user