у сейчас там есть такой код,
Ext.onReady(function(){
var TreeNodeAdd = page.TreeNodeAdd;
var TreeNodeMove = page.TreeNodeMove;
var TreeNodeRename = page.TreeNodeRename;
var TreeNodeDelete = page.TreeNodeDelete
var TreeNodeBeforeStartEdit = page.TreeNodeBeforeStartEdit;
var TreeNodeUrl = page.TreeNodeUrl;
var TabAdd = page.TabAdd;
var TreePanetEdit = function(bottom)
{
if((bottom == 'Add') || (bottom == 'AddChild'))
{
NodeSelect = tree.getSelectionModel().getSelectedNode();
if(bottom == 'Add')
{
NodeEdit = NodeSelect;
}
else
{
NodeEdit = NodeSelect.parentNode;
}
node = NodeChild = TreeNodeAdd(NodeEdit);
if(NodeChild.add)
{
Child = new Ext.tree.TreeNode(NodeChild.add);
NodeEdit.appendChild(Child);
}
}
else if(bottom == 'TreeNodeUp')
{
node = TreeNodeMove('Up');
if(!node.error)
{
tree.loader.load(tree.root);
}
}
else if(bottom == 'TreeNodeDown')
{
node = TreeNodeMove('Down');
if(!node.error)
{
tree.loader.load(tree.root);
}
}
else if(bottom == 'TreeNodeDelete')
{
node = tree.getSelectionModel().getSelectedNode();
node = TreeNodeDelete(node);
if(!node.error)
{
tree.loader.load(tree.root);
}
}
if(node)
{
if(node.error)
{
if(isset('node.error.title') && isset('node.error.text'))
{
Ext.MessageBox.show({
title: node.error.title,
msg: node.error.text,
buttons: Ext.MessageBox.OK,
icon: 'error'
});
}
}
else if(node.msg)
{
if(node.msg.title && node.msg.text)
{
Ext.MessageBox.show({
title: node.msg.title,
msg: node.msg.text,
buttons: Ext.MessageBox.OK,
icon: 'info'
});
}
}
}
}
var TreeToolbar = new Ext.Toolbar({
cls:'TreeToolbar',
items:[
{
id:'add',
iconCls:'add',
handler:function(){TreePanetEdit('Add');},
tooltip:'Добавить сраницу.'
}, {
id:'add_p',
iconCls:'plugin_add',
handler:function(){TreePanetEdit('AddChild')},
tooltip:'Добавить подстраницу.'
},'-',{
id:'up',
iconCls:'arrow-up',
handler:function(){TreePanetEdit('TreeNodeUp')},
tooltip:'переместить выше.'
},{
id:'down',
iconCls:'arrow-down',
handler:function(){TreePanetEdit('TreeNodeDown')},
tooltip:'переместить ниже.'
},'-',{
id:'remove',
iconCls:'delete',
handler:function(){TreePanetEdit('TreeNodeDelete')},
tooltip:'Удалить страницу'
}
]
});
var TreeToolbarMap = TreeToolbar.items.map;
});
var page = new (function(){
this.TreeNodeAdd = function()
{
}
this.TreeNodeUp = function()
{
}
this.TreeNodeDown = function()
{
}
this.TreeNodeRename = function()
{
}
this.TreeNodeDelete = function()
{
}
this.TreeReplace = function()
{
}
this.TreeNodeBeforeStartEdit = function()
{
}
this.TreeNodeUrl = '/admin/src/page_tree_menu:content';
this.TabAdd = function()
{
}
})();
раньше когда я перекидывал функции из page в onReady
функции не видели переменных которые были в onReady
пока возился приключился косяк функции начали выполняться один раз при запуску а потом не использовались,
но это дело я обошёл только вот не понял почему надо писать так
handler:function(){TreePanetEdit('Add');},