[pve-devel] [PATCH manager 1/2] ui: dc: backup: improve UX for the different 'notification-mode's
Lukas Wagner
l.wagner at proxmox.com
Mon Jan 8 11:43:56 CET 2024
ping
On 11/23/23 17:09, Lukas Wagner wrote:
> - Switch order of 'mailto' and 'mailnotification' field
> - When mode is 'auto', disable 'mailtnotification' field
> - When mode is 'auto' and 'mailto' is empty, show
> hint that the notification system will be used
>
> Signed-off-by: Lukas Wagner <l.wagner at proxmox.com>
> ---
> www/manager6/dc/Backup.js | 37 +++++++++++++++++++++++++++++++------
> 1 file changed, 31 insertions(+), 6 deletions(-)
>
> diff --git a/www/manager6/dc/Backup.js b/www/manager6/dc/Backup.js
> index 70903bdc..780315db 100644
> --- a/www/manager6/dc/Backup.js
> +++ b/www/manager6/dc/Backup.js
> @@ -207,13 +207,26 @@ Ext.define('PVE.dc.BackupEdit', {
> data: {
> selMode: 'include',
> notificationMode: '__default__',
> + mailto: '',
> + mailNotification: '',
> },
>
> formulas: {
> poolMode: (get) => get('selMode') === 'pool',
> - disableVMSelection: (get) => get('selMode') !== 'include' && get('selMode') !== 'exclude',
> + disableVMSelection: (get) => get('selMode') !== 'include' &&
> + get('selMode') !== 'exclude',
> showMailtoFields: (get) =>
> ['auto', 'legacy-sendmail', '__default__'].includes(get('notificationMode')),
> +
> + enableMailnotificationField: (get) => {
> + let mode = get('notificationMode');
> + let mailto = get('mailto');
> +
> + return (['auto', '__default__'].includes(mode) && mailto) ||
> + mode === 'legacy-sendmail';
> + },
> + hintTextVisible: (get) =>
> + ['auto', '__default__'].includes(get('notificationMode')) && !get('mailto'),
> },
> },
>
> @@ -325,6 +338,15 @@ Ext.define('PVE.dc.BackupEdit', {
> value: '{notificationMode}',
> },
> },
> + {
> + xtype: 'textfield',
> + fieldLabel: gettext('Send email to'),
> + name: 'mailto',
> + bind: {
> + hidden: '{!showMailtoFields}',
> + value: '{mailto}',
> + },
> + },
> {
> xtype: 'pveEmailNotificationSelector',
> fieldLabel: gettext('Send email'),
> @@ -334,15 +356,18 @@ Ext.define('PVE.dc.BackupEdit', {
> deleteEmpty: '{!isCreate}',
> },
> bind: {
> - disabled: '{!showMailtoFields}',
> + hidden: '{!showMailtoFields}',
> + disabled: '{!enableMailnotificationField}',
> + value: '{mailNotification}',
> },
> },
> {
> - xtype: 'textfield',
> - fieldLabel: gettext('Send email to'),
> - name: 'mailto',
> + xtype: 'displayfield',
> + userCls: 'pmx-hint',
> + hidden: true,
> + value: gettext('No email configured, the notification system will be used'),
> bind: {
> - disabled: '{!showMailtoFields}',
> + hidden: '{!hintTextVisible}',
> },
> },
> {
--
- Lukas
More information about the pve-devel
mailing list