iconCls: 'fa fa-file-o fa-dark x-fa-tree-template'
},
datacenter: {
- iconCls: 'fa fa-server x-fa-tree-datacenter',
+ iconCls: 'fa fa-server x-fa-tree-datacenter'
}
}
},
iconClsAdd = '-offline';
}
+ // overwrite any other class
+ if (info.hastate === 'error') {
+ iconClsAdd = '-offline';
+ }
+
info.iconCls = defaults.iconCls + iconClsAdd;
if (info.template) {
if (item) {
// test if any grouping attributes changed
// this will also catch migrated nodes
+ // in server view
var i, len;
for (i = 0, len = groups.length; i < len; i++) {
var attr = groups[i];
}
}
+ // explicitely check for node, since
+ // in some views, node is not a grouping
+ // attribute
+ if (!moved && item.data.node !== olditem.data.node) {
+ moved = true;
+ }
+
// tree item has been updated
if ((item.data.text !== olditem.data.text) ||
(item.data.running !== olditem.data.running) ||
(item.data.template !== olditem.data.template) ||
- (item.data.status !== olditem.data.status)) {
+ (item.data.status !== olditem.data.status) ||
+ (item.data.hastate!== olditem.data.hastate)) {
//console.log("changed node/text/running " + olditem.data.id);
changed = true;
}
//rootVisible: false,
//title: 'Resource Tree',
listeners: {
- itemcontextmenu: function(v, record, item, index, event) {
- event.stopEvent();
- //v.select(record);
- var menu;
-
- if (record.data.type === 'qemu' && !record.data.template) {
- menu = Ext.create('PVE.qemu.CmdMenu', {
- pveSelNode: record
- });
- } else if (record.data.type === 'qemu' && record.data.template) {
- menu = Ext.create('PVE.qemu.TemplateMenu', {
- pveSelNode: record
- });
- } else if (record.data.type === 'lxc' && !record.data.template) {
- menu = Ext.create('PVE.lxc.CmdMenu', {
- pveSelNode: record
- });
- } else if (record.data.type === 'lxc' && record.data.template) {
- /* since clone does not work reliably, disable for now
- menu = Ext.create('PVE.lxc.TemplateMenu', {
- pveSelNode: record
- });
- */
- return;
- } else {
- return;
- }
-
- menu.showAt(event.getXY());
- },
+ itemcontextmenu: PVE.Utils.createCmdMenu,
destroy: function() {
rstore.un("load", updateTree);
},
- beforecellmousedown: function (tree, record,item,index,ev) {
+ beforecellmousedown: function (tree, td, cellIndex, record, tr, rowIndex, ev) {
// disable selection when right clicking
- me.allowSelection = !(event.button === 2);
+ me.allowSelection = (ev.button !== 2);
},
beforeselect: function (tree, record, index, eopts) {
var allow = me.allowSelection;
me.allowSelection = true;
return allow;
},
+ itemdblclick: PVE.Utils.openTreeConsole
},
setViewFilter: function(view) {
me.viewFilter = view;
cn.expand();
}
}
+ me.getView().focusRow(node);
}
},
selectById: function(nodeid) {