ui: tape backup: add selector for 'notification-mode'

Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
Tested-by: Gabriel Goller <g.goller@proxmox.com>
Reviewed-by: Gabriel Goller <g.goller@proxmox.com>
Tested-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
Lukas Wagner 2024-04-23 13:52:15 +02:00 committed by Thomas Lamprecht
parent 5e2ab2765c
commit 168e2f2967
2 changed files with 35 additions and 1 deletions

View File

@ -8,6 +8,15 @@ Ext.define('PBS.TapeManagement.TapeBackupWindow', {
showTaskViewer: true,
isCreate: true,
viewModel: {
data: {
notificationMode: 'notification-system',
},
formulas: {
notificationSystemSelected: (get) => get('notificationMode') === 'notification-system',
},
},
items: [
{
xtype: 'inputpanel',
@ -81,6 +90,19 @@ Ext.define('PBS.TapeManagement.TapeBackupWindow', {
name: 'eject-media',
fieldLabel: gettext('Eject Media'),
},
{
xtype: 'proxmoxKVComboBox',
labelWidth: 150,
comboItems: [
['legacy-sendmail', gettext('Email (legacy)')],
['notification-system', gettext('Notification system')],
],
fieldLabel: gettext('Notification mode'),
name: 'notification-mode',
bind: {
value: '{notificationMode}',
},
},
{
xtype: 'pmxUserSelector',
labelWidth: 150,
@ -90,6 +112,9 @@ Ext.define('PBS.TapeManagement.TapeBackupWindow', {
value: null,
allowBlank: true,
skipEmptyText: true,
bind: {
disabled: "{notificationSystemSelected}",
},
renderer: Ext.String.htmlEncode,
},
],

View File

@ -48,13 +48,21 @@ Ext.define('PBS.TapeManagement.BackupJobEdit', {
viewModel: {
data: {
notificationMode: 'notification-system',
notificationMode: '__default__',
},
formulas: {
notificationSystemSelected: (get) => get('notificationMode') === 'notification-system',
},
},
initComponent: function() {
let me = this;
// Automatically select the new system for new jobs
let mode = me.isCreate ? "notification-system" : "__default__";
me.getViewModel().set('notificationMode', mode);
me.callParent();
},
items: {
xtype: 'tabpanel',
bodyPadding: 10,
@ -121,6 +129,7 @@ Ext.define('PBS.TapeManagement.BackupJobEdit', {
{
xtype: 'proxmoxKVComboBox',
comboItems: [
['__default__', `${Proxmox.Utils.defaultText} (Email)`],
['legacy-sendmail', gettext('Email (legacy)')],
['notification-system', gettext('Notification system')],
],