From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id 5A72A1FF185 for ; Mon, 23 Jun 2025 16:13:17 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id BF36C14298; Mon, 23 Jun 2025 16:13:45 +0200 (CEST) From: Lukas Wagner To: pbs-devel@lists.proxmox.com Date: Mon, 23 Jun 2025 16:13:11 +0200 Message-Id: <20250623141315.288681-7-l.wagner@proxmox.com> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250623141315.288681-1-l.wagner@proxmox.com> References: <20250623141315.288681-1-l.wagner@proxmox.com> MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.020 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pbs-devel] [PATCH proxmox-backup 5/9] ui: tape backup job: move notification settings to a separate tab X-BeenThere: pbs-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox Backup Server development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox Backup Server development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pbs-devel-bounces@lists.proxmox.com Sender: "pbs-devel" For consistency, use the same UI approach as for PVE's backup jobs. Tape backup jobs now gain a new tab for all notification related settings: ( ) Use global notification settings (x) Use sendmail to send an email (legacy) Recipient: [ ] 'Recipient' is disabled when the first radio control is selected. The term 'Notification System' is altogether from the UI. It is not necessarily clear to a user that this refers to the settings in Configuration > Notifications. Signed-off-by: Lukas Wagner --- www/tape/window/TapeBackupJob.js | 109 +++++++++++++++++++------------ 1 file changed, 67 insertions(+), 42 deletions(-) diff --git a/www/tape/window/TapeBackupJob.js b/www/tape/window/TapeBackupJob.js index c06311bf..ad03b607 100644 --- a/www/tape/window/TapeBackupJob.js +++ b/www/tape/window/TapeBackupJob.js @@ -46,23 +46,6 @@ Ext.define('PBS.TapeManagement.BackupJobEdit', { }, }, - viewModel: { - data: { - 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, @@ -126,31 +109,6 @@ Ext.define('PBS.TapeManagement.BackupJobEdit', { fieldLabel: gettext('Drive'), name: 'drive', }, - { - xtype: 'proxmoxKVComboBox', - comboItems: [ - ['__default__', `${Proxmox.Utils.defaultText} (Email)`], - ['legacy-sendmail', gettext('Email (legacy)')], - ['notification-system', gettext('Notification system')], - ], - fieldLabel: gettext('Notification mode'), - name: 'notification-mode', - bind: { - value: '{notificationMode}', - }, - }, - { - xtype: 'pmxUserSelector', - name: 'notify-user', - fieldLabel: gettext('Notify User'), - emptyText: 'root@pam', - allowBlank: true, - value: null, - renderer: Ext.String.htmlEncode, - bind: { - disabled: '{notificationSystemSelected}', - }, - }, ], column2: [ @@ -260,6 +218,73 @@ Ext.define('PBS.TapeManagement.BackupJobEdit', { }, ], }, + { + xtype: 'inputpanel', + title: gettext('Notifications'), + + viewModel: { + data: { + notificationMode: undefined, + }, + formulas: { + notificationSystemSelected: (get) => + get('notificationMode')['notification-mode'] === 'notification-system', + }, + }, + + onSetValues: function (values) { + let me = this; + + let mode = values['notification-mode']; + me.getViewModel().set('notificationMode', { 'notification-mode': mode }); + + return values; + }, + + items: [ + { + xtype: 'radiogroup', + height: '15px', + layout: { + type: 'vbox', + }, + bind: { + value: '{notificationMode}', + }, + items: [ + { + xtype: 'radiofield', + name: 'notification-mode', + inputValue: 'notification-system', + boxLabel: gettext('Use global notification settings'), + cbind: { + checked: '{isCreate}', + }, + }, + { + xtype: 'radiofield', + name: 'notification-mode', + inputValue: 'legacy-sendmail', + boxLabel: gettext('Use sendmail to send an email (legacy)'), + }, + ], + }, + { + xtype: 'pmxUserSelector', + name: 'notify-user', + fieldLabel: gettext('Recipient'), + emptyText: 'root@pam', + allowBlank: false, + value: null, + renderer: Ext.String.htmlEncode, + padding: '0 0 0 50', + disabled: true, + bind: { + disabled: '{notificationSystemSelected}', + }, + }, + ], + }, ], }, }); -- 2.39.5 _______________________________________________ pbs-devel mailing list pbs-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel