comments inline
On 4/2/20 1:34 PM, Dominic Jäger wrote:
Default is no recursion.
This commit depends on "Recursive search for iso and vztmpl" in pve-storage.
Signed-off-by: Dominic Jäger <d.jae...@proxmox.com>
---
Changes since RFC:
* [0] became obsolte
* This did not exist in RFC
[0] https://pve.proxmox.com/pipermail/pve-devel/2019-December/040886.html
www/manager6/storage/ContentView.js | 23 +++++++++++++++++++++--
1 file changed, 21 insertions(+), 2 deletions(-)
diff --git a/www/manager6/storage/ContentView.js
b/www/manager6/storage/ContentView.js
index 001efc7f..5c6f1418 100644
--- a/www/manager6/storage/ContentView.js
+++ b/www/manager6/storage/ContentView.js
@@ -379,12 +379,15 @@ Ext.define('PVE.storage.ContentView', {
}
var baseurl = "/nodes/" + nodename + "/storage/" + storage + "/content";
+ me.sp = Ext.state.Manager.getProvider();
+
var store = Ext.create('Ext.data.Store',{
model: 'pve-storage-content',
groupField: 'content',
proxy: {
type: 'proxmox',
- url: '/api2/json' + baseurl
+ url: '/api2/json' + baseurl + '?recursive='
+ + (me.sp.get('recursive-search')|0), // API expects integer
four things here:
1. i would prefer to get that info out early and simply use a variable
let recursive = me.sp.get... above and here only use the variable
2. we now can use modern js syntax, so a template string is allowed:
`/api2/json${baseurl}?recursive=${recursive}`
(we could even use extjs' query string builder for this)
3. the api expects integer, but why do here convert a string
to int to string again? why not save a string directly?
4. there is nothing in this patch that sets this
why not introduce this in the next patch?
},
sorters: {
property: 'volid',
@@ -578,7 +581,23 @@ Ext.define('PVE.storage.ContentView', {
]);
}
}
- }
+ },
+ {
+ xtype: 'proxmoxcheckbox',
+ fieldLabel: gettext('Recursive'),
+ labelWidth: 65,
+ name : 'recursive',
+ checked: false,
+ listeners: {
+ change: function(box, value) {
+ me.store.proxy.url = me.store.proxy.url.replace(
+ /recursive=\d/,
+ "recursive=" + (value|0) // API expects integer
i would rather have a helper function that assembles the url
and reuse it here instead of string replacement
also you can set the checked/unchecked value to strings
---
uncheckedValue: '0',
checkedValue: '0',
---
(not sure about the names, please see the docs)
then its not needed to convert to int/string
+ );
+ reload();
+ },
+ },
+ },
],
columns: [
{
_______________________________________________
pve-devel mailing list
pve-devel@pve.proxmox.com
https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel