{ "id": "roo-file-201", "name": "Pman.Tab.BuilderDatabase", "parent": "Pman.Tab.Builder", "title": "Pman.Tab.BuilderDatabase", "path": "/home/edward/gitlive/Pman.Builder/Pman.Tab.BuilderDatabase.bjs", "items": [ { "listeners": { "activate": "function (_self)\n{\n _this.treepanel.tree.root.reload();\n}" }, "background": true, "region": "center", "title": "Manage Database", "xtype": "NestedLayoutPanel", "|xns": "Roo", "items": [ { "|xns": "Roo", "xtype": "BorderLayout", "*prop": "layout", "items": [ { "*prop": "west", "split": true, "width": 150, "xtype": "LayoutRegion", "|xns": "Roo" }, { "*prop": "center", "xtype": "LayoutRegion", "|xns": "Roo" }, { "listeners": { "render": "function (_self)\n{\n _this.treepanel = _self;\n}" }, "region": "west", "xtype": "TreePanel", "|xns": "Roo", "items": [ { "|xns": "Roo", "xtype": "Toolbar", "*prop": "toolbar", "items": [ { "listeners": { "click": "function (_self, e)\n{\n _this.treepanel.tree.root.reload();\n}" }, "text": "Refresh/Manage Tables", "xtype": "SplitButton", "|xns": "Roo.Toolbar", "items": [ { "|xns": "Roo.menu", "xtype": "Menu", "*prop": "menu", "items": [ { "text": "Add Table/Container", "xtype": "Item", "|xns": "Roo.menu" }, { "|xns": "Roo.menu", "xtype": "Separator" }, { "listeners": { "click": "function (_self, e)\n{\n new Pman.Request({\n method: 'GET',\n url: baseURL + '/Roo/Builder_tables.php',\n params : {\n _sync : 1\n }\n });\n \n}" }, "text": "Sync Tables", "xtype": "Item", "|xns": "Roo.menu" }, { "|xns": "Roo.menu", "xtype": "Separator" }, { "listeners": { "click": "function (_self, e)\n{\n/*\n var node = _this.treepanel.tree.getSelectionModel().getSelectedNode(); \n \n if(!node){\n Roo.MessageBox.alert('Error', 'Please select a table');\n return;\n } \n \n Roo.log(node.attributes.name);\n */\n new Pman.Download({\n url : baseURL + '/Roo/Builder_tables.php',\n timeout : 900000,\n params : {\n _dumpDatabase : 1\n },\n method : 'GET',\n success : function() {\n \n }\n });\n}" }, "text": "Export Data", "xtype": "Item", "|xns": "Roo.menu" } ] } ] } ] }, { "listeners": { "beforeload": "function (node)\n{\n if (!_this.panel.active) {\n return false;\n }\n}", "contextmenu": "function (node, e)\n{\n if (!node.expanded || node.leaf) {\n return;\n }\n\n _this.treepanel.menu = Roo.factory(_this.treepanel.menu);\n _this.treepanel.menu.show(node.ui.anchor,'tr');\n _this.cxnode = node;\n}", "beforenodedrop": "function (dropEvent)\n{\n Roo.log(dropEvent);\n var node = dropEvent.dropNode;\n var targ = dropEvent.target;\n var parent = dropEvent.target;\n switch(dropEvent.point) {\n case 'below': \n case 'above': \n parent = dropEvent.target.parentNode;\n break;\n default:\n break;\n }\n // technically you should not be able to drag tables into other modules..\n if (parent.attributes.id < 1) {\n dropEvent.cancel = 1;\n }\n new Pman.Request({\n url : baseURL + '/Roo/Builder_tables',\n params : {\n id : node.attributes.id,\n parent_id : parent.attributes.id\n }\n });\n \n \n}" }, "*prop": "tree", "containerScroll": true, "ddGroup": "dbtree", "enableDD": true, "rootVisible": false, "xtype": "TreePanel", "|xns": "Roo.tree", "items": [ { "listeners": { "create": "function (_self, attr)\n{\n Roo.log(\"CREATE\");\n try {\n attr.text = attr.name.length ? attr.name : attr.descrip;\n \n attr.leaf = attr.name.length ? true : false;\n attr.html = String.format('{0}{1}',\n attr.name,\n attr.descrip\n );\n } catch(e) {\n Roo.log(e);\n }\n Roo.log(attr);\n\n}" }, "*prop": "loader", "queryParam": "parent_id", "requestMethod": "GET", "root": "data", "xtype": "TreeLoader", "|baseParams": " { _tree: 1, 'sort': 'name', dir: 'ASC', limit : 9999 }", "|dataUrl": "baseURL + '/Roo/Builder_tables.php'", "|xns": "Roo.tree" }, { "|xns": "Roo.tree", "xtype": "MultiSelectionModel", "*prop": "sm" }, { "*prop": "root", "text": "TOP LEVEL", "xtype": "AsyncTreeNode", "|xns": "Roo.tree" }, { "listeners": { "beforenodeedit": "function (_self,node)\n{\n Roo.log('before start edit');\n Roo.log(this.editNode);\n if (node.attributes.name.length) {\n return false;\n }\n return true;\n \n}", "complete": "function (_self, value, startValue)\n{\n Roo.log(this.editNode);\n\n var attr = this.editNode.attributes;\n \n var pa = this.editNode.parentNode.attributes;\n Roo.log(pa);\n var pr = {\n \n parent_id : pa.id,\n descrip : value,\n name : '',\n dbschema : ''\n };\n \n if (attr.id > 0) {\n pr.id = attr.id;\n }\n \n new Pman.Request({\n url : baseURL + '/Roo/Builder_tables',\n method : 'POST',\n params : pr\n });\n \n \n \n}" }, "*prop": "editor", "xtype": "TreeEditor", "|xns": "Roo.tree" } ] }, { "|xns": "Roo.menu", "xtype": "Menu", "*prop": "menu", "items": [ { "listeners": { "click": "function (_self, e)\n{\n _this.nIndex = _this.nIndex || 0;\n \n var m = _this.cxnode.firstChild ? 'insertBefore' : 'appendChild';\n var tree = _this.treepanel.tree;\n \n var n = tree.loader.createNode({\n id : -1,\n descrip :'New Group ' + (++_this.nIndex), \n name : ''\n }); \n \n var node = _this.cxnode[m]( n , _this.cxnode.firstChild);\n setTimeout(function(){\n tree.editor.editNode = node;\n tree.editor.startEdit(node.ui.textNode);\n }, 10);\n}" }, "text": "Add Group", "xtype": "Item", "|xns": "Roo.menu" }, { "|xns": "Roo.menu", "xtype": "Separator" }, { "listeners": { "click": "function (_self, e)\n{\n _this.nIndex = _this.nIndex || 0;\n \n _this.cxnode;\n // try and delete it..\n new Pman.Request({\n url : baseURL + '/Roo/Builder_tables',\n params : {\n _delete : _this.cxnode.attributes.id\n },\n success : function() {\n _this.cxnode.parentNode.removeChild(_this.cxnode);\n _this.cxnode = false;\n \n }\n });\n \n}" }, "text": "Remove Group", "xtype": "Item", "|xns": "Roo.menu" } ] } ] }, { "listeners": { "|activate": "function() {\n _this.panel = this;\n if (_this.grid) {\n _this.grid.footer.onClick('first');\n }\n}" }, "background": true, "fitContainer": true, "fitToframe": true, "region": "center", "tableName": "Tables", "title": "Tables", "xtype": "GridPanel", "|xns": "Roo", "items": [ { "listeners": { "|render": "function() \n{\n _this.grid = this; \n //_this.dialog = Pman.Dialog.FILL_IN\n if (_this.panel.active) {\n this.footer.onClick('first');\n }\n}", "|rowdblclick": "function (_self, rowIndex, e)\n{\n if (!_this.dialog) return;\n _this.dialog.show( this.getDataSource().getAt(rowIndex), function() {\n _this.grid.footer.onClick('first');\n }); \n}\n" }, "*prop": "grid", "autoExpandColumn": "table", "loadMask": true, "xtype": "Grid", "|xns": "Roo.grid", "items": [ { "*prop": "dataSource", "xtype": "Store", "remoteSort": true, "|sortInfo": "{ field : 'filename', direction: 'ASC' }", "|xns": "Roo.data", "items": [ { "*prop": "proxy", "method": "GET", "xtype": "HttpProxy", "|url": "baseURL + '/Builder/ERM.php'", "|xns": "Roo.data" }, { "|xns": "Roo.data", "xtype": "JsonReader", "totalProperty": "total", "root": "data", "*prop": "reader", "id": "id", "|fields": "[\n {\n 'name': 'id',\n 'type': 'int'\n },\n {\n 'name': 'filename',\n 'type': 'string'\n },\n {\n 'name': 'ontable',\n 'type': 'string'\n },\n {\n 'name': 'onid',\n 'type': 'int'\n },\n {\n 'name': 'mimetype',\n 'type': 'string'\n },\n {\n 'name': 'width',\n 'type': 'int'\n },\n {\n 'name': 'height',\n 'type': 'int'\n },\n {\n 'name': 'filesize',\n 'type': 'int'\n },\n {\n 'name': 'displayorder',\n 'type': 'int'\n },\n {\n 'name': 'language',\n 'type': 'string'\n },\n {\n 'name': 'parent_image_id',\n 'type': 'int'\n },\n {\n 'name': 'created',\n 'type': 'date',\n 'dateFormat': 'Y-m-d'\n },\n {\n 'name': 'imgtype',\n 'type': 'string'\n },\n {\n 'name': 'linkurl',\n 'type': 'string'\n },\n {\n 'name': 'descript',\n 'type': 'string'\n },\n {\n 'name': 'title',\n 'type': 'string'\n },\n {\n 'name': 'credit',\n 'type': 'string'\n },\n {\n 'name': 'source',\n 'type': 'string'\n },\n {\n 'name': 'parent_image_id_id',\n 'type': 'int'\n },\n {\n 'name': 'parent_image_id_filename',\n 'type': 'string'\n },\n {\n 'name': 'parent_image_id_ontable',\n 'type': 'string'\n },\n {\n 'name': 'parent_image_id_onid',\n 'type': 'int'\n },\n {\n 'name': 'parent_image_id_mimetype',\n 'type': 'string'\n },\n {\n 'name': 'parent_image_id_width',\n 'type': 'int'\n },\n {\n 'name': 'parent_image_id_height',\n 'type': 'int'\n },\n {\n 'name': 'parent_image_id_filesize',\n 'type': 'int'\n },\n {\n 'name': 'parent_image_id_displayorder',\n 'type': 'int'\n },\n {\n 'name': 'parent_image_id_language',\n 'type': 'string'\n },\n {\n 'name': 'parent_image_id_parent_image_id',\n 'type': 'int'\n },\n {\n 'name': 'parent_image_id_created',\n 'type': 'date'\n },\n {\n 'name': 'parent_image_id_imgtype',\n 'type': 'string'\n },\n {\n 'name': 'parent_image_id_linkurl',\n 'type': 'string'\n },\n {\n 'name': 'parent_image_id_descript',\n 'type': 'string'\n },\n {\n 'name': 'parent_image_id_title',\n 'type': 'string'\n },\n {\n 'name': 'parent_image_id_credit',\n 'type': 'string'\n },\n {\n 'name': 'parent_image_id_source',\n 'type': 'string'\n }\n]" } ] }, { "*prop": "footer", "xtype": "PagingToolbar", "pageSize": 25, "displayInfo": true, "displayMsg": "Displaying Images{0} - {1} of {2}", "emptyMsg": "No Images found", "|xns": "Roo" }, { "*prop": "toolbar", "xtype": "Toolbar", "|xns": "Roo", "items": [ { "listeners": { "|click": "function()\n{\n Roo.MessageBox.alert(\"Updating\", \"Updating the cache\");\n new Pman.Request({\n url : baseURL + '/Core/RefreshDatabaseCache',\n method : 'GET',\n success : function() {\n Roo.MessageBox.hide();\n }\n });\n}\n" }, "cls": "x-btn-text-icon", "text": "Refresh Schema", "xtype": "Button", "|icon": "Roo.rootURL + 'images/default/dd/drop-add.gif'", "|xns": "Roo.Toolbar" } ] }, { "*prop": "colModel[]", "dataIndex": "table", "header": "Table", "width": 200, "xtype": "ColumnModel", "|renderer": "function(v) { return String.format('{0}', v); }", "|xns": "Roo.grid" } ] } ] } ] } ] } ], "permname": "", "modOrder": "999" }