]>
git.datanom.net - omvzfs.git/blob - gui/js/omv/module/admin/storage/zfs/Overview.js
fe72e89a529b4a9a35279b55cdf84dd3cd16520e
1 // require("js/omv/tree/Panel.js")
2 // require("js/omv/module/admin/service/zfs/TreePanel.js")
3 // require("js/omv/workspace/window/Grid.js")
5 Ext
.define("OMV.module.admin.services.zfs.AddObject", {
6 extend
: "OMV.workspace.window.Form",
11 "OMV.data.reader.RpcArray"
15 rpcSetMethod
: "addObject",
18 getFormItems: function() {
23 fieldLabel
: _("Object Type"),
26 [ "filesystem", "Filesystem" ],
27 [ "snapshot", "Snapshot" ],
28 [ "volume", "Volume" ]
36 change: function(combo
, value
) {
37 var sizeField
= this.findField("size");
41 sizeField
.allowBlank
= false;
45 sizeField
.allowBlank
= true;
54 fieldLabel
: _("Prefix"),
60 fieldLabel
: _("Name"),
64 text
: _("Name of the new object. Prefix will prepend the name. Please omit leading /")
70 fieldLabel
: _("Size"),
74 text
: _("Size of the volume e.g. 5mb,100gb,1tb etc")
82 Ext
.define("OMV.module.admin.service.zfs.EditProperties", {
83 extend
: "OMV.workspace.window.Grid",
91 rpcSetMethod
: "setProperties",
93 title
: _("Edit properties"),
97 getGridConfig: function() {
100 var rowEditing
= Ext
.create('Ext.grid.plugin.RowEditing', {
102 pluginId
: 'rowEditing',
104 validateedit: function(editor
, e
, eOpts
) {
105 e
.record
.set("modified", "true");
107 beforeedit: function(editor
, e
, eOpts
) {
108 if (e
.record
.get("property") === "mountpoint") {
109 e
.grid
.getPlugin('rowEditing').editor
.form
.findField("value").disable();
110 e
.grid
.getPlugin('rowEditing').editor
.form
.findField("property").disable();
111 } else if (e
.record
.get("newproperty") === "false") {
112 e
.grid
.getPlugin('rowEditing').editor
.form
.findField("value").enable();
113 e
.grid
.getPlugin('rowEditing').editor
.form
.findField("property").disable();
115 e
.grid
.getPlugin('rowEditing').editor
.form
.findField("value").enable();
116 e
.grid
.getPlugin('rowEditing').editor
.form
.findField("property").enable();
123 var store
= Ext
.create("OMV.data.Store", {
125 model
: OMV
.data
.Model
.createImplicit({
127 { name
: "property", type
: "string" },
128 { name
: "value", type
: "string" },
129 { name
: "source", type
: "string" },
130 { name
: "modified", type
: "string" },
131 { name
: "newproperty", type
: "string", defaultValue
: "false" }
138 method
: "getProperties",
150 stateId
: "8c3dc800-bdbb-11e3-b1b6-0800200c9a66",
152 plugins
: [rowEditing
],
155 text
: "Add property",
156 icon
: "images/add.png",
157 iconCls
: Ext
.baseCSSPrefix
+ "btn-icon-16x16",
158 handler: function(view
) {
159 Ext
.define('Property', {
160 extend
: 'Ext.data.Model',
169 var newProperty
= Ext
.create("Property", {
176 rowEditing
.cancelEdit();
177 store
.insert(0, newProperty
);
178 rowEditing
.startEdit();
184 dataIndex
: "property",
207 xtype
: 'actioncolumn',
209 icon
: "images/checkmark.png",
211 handler: function(view
, rowIndex
, colIndex
, item
, e
, record
, row
) {
212 OMV
.RpcObserver
.request({
213 msg
: _("Updating property..."),
220 property
: record
.get("property")
223 finish : function() {
224 view
.getStore().reload();
228 isDisabled: function(view
, rowIdx
, colIdx
, item
, record
) {
229 var src
= record
.get("source");
230 if(src
=== "local") {
238 dataIndex
: "newproperty",
239 stateId
: "newproperty",
245 dataIndex
: "modified",
252 getRpcSetParams: function() {
255 var values
= me
.getValues();
256 Ext
.Array
.each(values
, function(value
) {
257 if(value
.modified
=== "false")
260 "property": value
.property
,
261 "value": value
.value
,
267 properties
: properties
274 Ext
.define("OMV.module.admin.services.zfs.CreateShare", {
275 extend
: "OMV.workspace.window.Form",
279 "OMV.data.proxy.Rpc",
280 "OMV.data.reader.RpcArray"
284 rpcSetMethod
: "createShare",
287 getFormItems: function() {
292 fieldLabel
: _("Name"),
297 fieldLabel
: _("Path"),
303 fieldLabel
: _("Permissions"),
305 store
: Ext
.create("Ext.data.ArrayStore", {
306 fields
: [ "value", "text" ],
308 [ "700", _("Administrator: read/write, Users: no access, Others: no access") ],
309 [ "750", _("Administrator: read/write, Users: read-only, Others: no access") ],
310 [ "770", _("Administrator: read/write, Users: read/write, Others: no access") ],
311 [ "755", _("Administrator: read/write, Users: read-only, Others: read-only") ],
312 [ "775", _("Administrator: read/write, Users: read/write, Others: read-only") ],
313 [ "777", _("Everyone: read/write") ]
316 displayField
: "text",
320 showItemTooltip
: true,
321 triggerAction
: "all",
325 text
: _("The file mode of the shared folder path.")
330 fieldLabel
: _("Comment"),
346 Ext
.define("OMV.module.admin.service.zfs.Overview", {
347 extend
: "OMV.module.admin.services.zfs.TreePanel",
350 rpcGetMethod
: "getObjectTree",
359 stateId
: "cec54550-bc2a-11e3-a5e2-0800200c9a66",
376 xtype
: 'actioncolumn',
377 tooltip
: 'Create shared folder',
379 icon
: 'images/checkmark.png',
380 handler: function(view
, rowIndex
, colIndex
, item
, e
, record
, row
) {
382 Ext
.create("OMV.module.admin.services.zfs.CreateShare", {
383 title
: _("Create shared folder"),
384 rpcGetMethod
: "getSharedParams",
386 name
: record
.get('path'),
387 type
: record
.get('type')
391 isDisabled: function(view
, rowIdx
, colIdx
, item
, record
) {
392 var src
= record
.get("type");
393 if((src
=== "Filesystem") && (record
.get("shared") === "false")) {
403 xtype
: 'actioncolumn',
406 icon
: 'images/zfs_mag.png'
415 initComponent: function() {
419 store
: Ext
.create("Ext.data.TreeStore", {
421 model
: OMV
.data
.Model
.createImplicit({
423 { name
: "name", type
: "string" },
424 { name
: "type", type
: "string" },
425 { name
: "id", type
: "string" },
426 { name
: "path", type
: "string" },
427 { name
: "origin", type
: "string", defaultValue
: "none" },
428 { name
: "shared", type
: "string", defaultValue
: "false" }
435 method
: "getObjectTree",
441 me
.callParent(arguments
);
444 onAddObjButton: function() {
446 var sm
= me
.getSelectionModel();
447 var records
= sm
.getSelection();
448 var record
= records
[0];
449 Ext
.create("OMV.module.admin.services.zfs.AddObject", {
450 title
: _("Add Object"),
451 rpcGetMethod
: "passParam",
454 value
: record
.get('path')
465 onEditButton: function() {
467 var sm
= me
.getSelectionModel();
468 var records
= sm
.getSelection();
469 var record
= records
[0];
470 Ext
.create("OMV.module.admin.service.zfs.EditProperties", {
471 name
: record
.get("path"),
472 type
: record
.get("type")
476 doDeletion: function(record
) {
480 callback
: me
.onDeletion
,
483 method
: "deleteObject",
485 name
: record
.get('path'),
486 type
: record
.get('type')
494 OMV
.WorkspaceManager
.registerPanel({
496 path
: "/service/zfs",
499 className
: "OMV.module.admin.service.zfs.Overview"
This page took 0.109583 seconds and 4 git commands to generate.