all lists on lists.proxmox.com
 help / color / mirror / Atom feed
* [pbs-devel] [PATCH proxmox-backup 1/3] ui: tape/TapeInventory: change to regular store
@ 2021-02-15 14:22 Dominik Csapak
  2021-02-15 14:22 ` [pbs-devel] [PATCH proxmox-backup 2/3] ui: tape/TapeInventory: add 'Add Tape' button Dominik Csapak
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Dominik Csapak @ 2021-02-15 14:22 UTC (permalink / raw)
  To: pbs-devel

listing the media can potentially hang (changer status), so do not
reload in the background, only on activate

also increase the timeout to 5 minutes and add a reload button

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
---
 www/tape/TapeInventory.js | 28 ++++++++++------------------
 1 file changed, 10 insertions(+), 18 deletions(-)

diff --git a/www/tape/TapeInventory.js b/www/tape/TapeInventory.js
index 4bac4072..c641e492 100644
--- a/www/tape/TapeInventory.js
+++ b/www/tape/TapeInventory.js
@@ -18,6 +18,7 @@ Ext.define('pbs-model-tapes', {
     proxy: {
 	type: 'proxmox',
 	url: '/api2/json/tape/media/list',
+	timeout: 5*60*1000,
     },
 });
 
@@ -71,35 +72,26 @@ Ext.define('PBS.TapeManagement.TapeInventory', {
 	},
 
 	reload: function() {
-	    this.getView().getStore().rstore.load();
-	},
-
-	stopStore: function() {
-	    this.getView().getStore().rstore.stopUpdate();
-	},
-
-	startStore: function() {
-	    this.getView().getStore().rstore.startUpdate();
+	    this.getView().getStore().load();
 	},
     },
 
     listeners: {
-	beforedestroy: 'stopStore',
-	deactivate: 'stopStore',
-	activate: 'startStore',
+	activate: 'reload',
     },
 
     store: {
-	type: 'diff',
-	rstore: {
-	    type: 'update',
-	    storeid: 'proxmox-tape-tapes',
-	    model: 'pbs-model-tapes',
-	},
+	storeid: 'proxmox-tape-tapes',
+	model: 'pbs-model-tapes',
 	sorters: 'label-text',
     },
 
     tbar: [
+	{
+	    text: gettext('Reload'),
+	    handler: 'reload',
+	},
+	'-',
 	{
 	    xtype: 'proxmoxButton',
 	    text: gettext('Set Tape Location'),
-- 
2.20.1





^ permalink raw reply	[flat|nested] 4+ messages in thread

* [pbs-devel] [PATCH proxmox-backup 2/3] ui: tape/TapeInventory: add 'Add Tape' button
  2021-02-15 14:22 [pbs-devel] [PATCH proxmox-backup 1/3] ui: tape/TapeInventory: change to regular store Dominik Csapak
@ 2021-02-15 14:22 ` Dominik Csapak
  2021-02-15 14:22 ` [pbs-devel] [PATCH proxmox-backup 3/3] ui: tape/TapeManagement: change Text of Backup/Tape Inventory Dominik Csapak
  2021-02-16  7:34 ` [pbs-devel] applied: [PATCH proxmox-backup 1/3] ui: tape/TapeInventory: change to regular store Dietmar Maurer
  2 siblings, 0 replies; 4+ messages in thread
From: Dominik Csapak @ 2021-02-15 14:22 UTC (permalink / raw)
  To: pbs-devel

by adapting and reusing the 'LabelMedia' window

shows a short notice about inserting the correct tape in the drive
and now allows to select a drive

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
---
 www/tape/TapeInventory.js     |  8 ++++++++
 www/tape/window/LabelMedia.js | 36 ++++++++++++++++++++++++-----------
 2 files changed, 33 insertions(+), 11 deletions(-)

diff --git a/www/tape/TapeInventory.js b/www/tape/TapeInventory.js
index c641e492..25dea1ba 100644
--- a/www/tape/TapeInventory.js
+++ b/www/tape/TapeInventory.js
@@ -29,6 +29,10 @@ Ext.define('PBS.TapeManagement.TapeInventory', {
     controller: {
 	xclass: 'Ext.app.ViewController',
 
+	addTape: function() {
+	    Ext.create('PBS.TapeManagement.LabelMediaWindow').show();
+	},
+
 	moveToVault: function() {
 	    let me = this;
 	    let view = me.getView();
@@ -92,6 +96,10 @@ Ext.define('PBS.TapeManagement.TapeInventory', {
 	    handler: 'reload',
 	},
 	'-',
+	{
+	    text: gettext('Add Tape'),
+	    handler: 'addTape',
+	},
 	{
 	    xtype: 'proxmoxButton',
 	    text: gettext('Set Tape Location'),
diff --git a/www/tape/window/LabelMedia.js b/www/tape/window/LabelMedia.js
index 563f59f0..b3dd8f48 100644
--- a/www/tape/window/LabelMedia.js
+++ b/www/tape/window/LabelMedia.js
@@ -8,16 +8,41 @@ Ext.define('PBS.TapeManagement.LabelMediaWindow', {
     title: gettext('Label Media'),
     submitText: gettext('OK'),
 
+    url: '/api2/extjs/tape/drive/',
+
+    cbindData: function(config) {
+	let me = this;
+	return {
+	    driveid: config.driveid,
+	};
+    },
+
     method: 'POST',
 
     showProgress: true,
 
+    submitUrl: function(url, values) {
+	let driveid = encodeURIComponent(values.drive);
+	delete values.drive;
+	return `${url}/${driveid}/label-media`;
+    },
+
     items: [
 	{
 	    xtype: 'displayfield',
+	    cls: 'pmx-hint',
+	    value: gettext('Make sure that the correct tape is inserted the selected drive and type in the label written on the tape.'),
+	},
+	{
+	    xtype: 'pmxDisplayEditField',
 	    fieldLabel: gettext('Drive'),
+	    name: 'drive',
+	    editConfig: {
+		xtype: 'pbsDriveSelector',
+	    },
 	    cbind: {
 		value: '{driveid}',
+		editable: '{!driveid}',
 	    },
 	},
 	{
@@ -34,16 +59,5 @@ Ext.define('PBS.TapeManagement.LabelMediaWindow', {
 	    skipEmptyText: true,
 	},
     ],
-
-    initComponent: function() {
-	let me = this;
-	if (!me.driveid) {
-	    throw "no driveid given";
-	}
-
-	let driveid = encodeURIComponent(me.driveid);
-	me.url = `/api2/extjs/tape/drive/${driveid}/label-media`;
-	me.callParent();
-    },
 });
 
-- 
2.20.1





^ permalink raw reply	[flat|nested] 4+ messages in thread

* [pbs-devel] [PATCH proxmox-backup 3/3] ui: tape/TapeManagement: change Text of Backup/Tape Inventory
  2021-02-15 14:22 [pbs-devel] [PATCH proxmox-backup 1/3] ui: tape/TapeInventory: change to regular store Dominik Csapak
  2021-02-15 14:22 ` [pbs-devel] [PATCH proxmox-backup 2/3] ui: tape/TapeInventory: add 'Add Tape' button Dominik Csapak
@ 2021-02-15 14:22 ` Dominik Csapak
  2021-02-16  7:34 ` [pbs-devel] applied: [PATCH proxmox-backup 1/3] ui: tape/TapeInventory: change to regular store Dietmar Maurer
  2 siblings, 0 replies; 4+ messages in thread
From: Dominik Csapak @ 2021-02-15 14:22 UTC (permalink / raw)
  To: pbs-devel

to 'Content' and 'Inventory' respectively

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
---
 www/tape/TapeManagement.js | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/www/tape/TapeManagement.js b/www/tape/TapeManagement.js
index 127c431b..c0c4409c 100644
--- a/www/tape/TapeManagement.js
+++ b/www/tape/TapeManagement.js
@@ -12,12 +12,12 @@ Ext.define('PBS.TapeManagement', {
 
     items: [
 	{
-	    title: gettext('Backup'),
-	    itemId: 'backup',
+	    title: gettext('Content'),
+	    itemId: 'content',
 	    xtype: 'pbsBackupOverview',
 	},
 	{
-	    title: gettext('Tape Inventory'),
+	    title: gettext('Inventory'),
 	    itemId: 'inventory',
 	    xtype: 'pbsTapeInventory',
 	},
-- 
2.20.1





^ permalink raw reply	[flat|nested] 4+ messages in thread

* [pbs-devel] applied: [PATCH proxmox-backup 1/3] ui: tape/TapeInventory: change to regular store
  2021-02-15 14:22 [pbs-devel] [PATCH proxmox-backup 1/3] ui: tape/TapeInventory: change to regular store Dominik Csapak
  2021-02-15 14:22 ` [pbs-devel] [PATCH proxmox-backup 2/3] ui: tape/TapeInventory: add 'Add Tape' button Dominik Csapak
  2021-02-15 14:22 ` [pbs-devel] [PATCH proxmox-backup 3/3] ui: tape/TapeManagement: change Text of Backup/Tape Inventory Dominik Csapak
@ 2021-02-16  7:34 ` Dietmar Maurer
  2 siblings, 0 replies; 4+ messages in thread
From: Dietmar Maurer @ 2021-02-16  7:34 UTC (permalink / raw)
  To: Proxmox Backup Server development discussion, Dominik Csapak

applied all 3 patches




^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2021-02-16  7:34 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-15 14:22 [pbs-devel] [PATCH proxmox-backup 1/3] ui: tape/TapeInventory: change to regular store Dominik Csapak
2021-02-15 14:22 ` [pbs-devel] [PATCH proxmox-backup 2/3] ui: tape/TapeInventory: add 'Add Tape' button Dominik Csapak
2021-02-15 14:22 ` [pbs-devel] [PATCH proxmox-backup 3/3] ui: tape/TapeManagement: change Text of Backup/Tape Inventory Dominik Csapak
2021-02-16  7:34 ` [pbs-devel] applied: [PATCH proxmox-backup 1/3] ui: tape/TapeInventory: change to regular store Dietmar Maurer

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal