{
"id": "roo-file-184",
"name": "Pman.Dialog.BuilderAddTable",
"parent": "",
"title": "",
"path": "/home/edward/gitlive/Pman.Builder/Pman.Dialog.BuilderAddTable.bjs",
"items": [
{
"listeners": {
"show": "function (_self)\n{\n _this.grid.ds.load({});\n}"
},
"closable": false,
"collapsible": false,
"height": 500,
"modal": true,
"resizable": false,
"title": "Select columns to use",
"width": 900,
"xtype": "LayoutDialog",
"|xns": "Roo",
"items": [
{
"|xns": "Roo",
"xtype": "LayoutRegion",
"*prop": "center"
},
{
"listeners": {
"|activate": "function() {\n _this.panel = this;\n if (_this.grid) {\n _this.grid.ds.load({});\n }\n}"
},
"background": false,
"fitContainer": true,
"fitToframe": true,
"region": "center",
"tableName": "Images",
"title": "Images",
"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.ds.load({});\n }\n}",
"cellclick": "function (_self, ri, ci , e)\n{\n if (ci > 1) {return; }\n \n var rec = this.ds.getAt(ri);\n var di = this.cm.getDataIndex(ci);\n rec.set(di, (rec.data[di] * 1) ? 0 : 1);\n rec.commit();\n \n \n \n}"
},
"*prop": "grid",
"autoExpandColumn": "desc",
"clicksToEdit": 1,
"loadMask": true,
"xtype": "EditorGrid",
"|xns": "Roo.grid",
"items": [
{
"listeners": {
"beforeload": "function (_self, options)\n{\n if (typeof(_this.data) == 'undefined') {\n return false;\n \n }\n options.params = options.params || {};\n options.params.table = _this.data.table;\n}",
"load": "function (_self, records, options)\n{\n // after load, if we have configuration already, overlay that \n if (typeof(_this.data.cols) == 'undefined') {\n return;\n }\n _this.data.cols_ex = _this.data.cols_ex || [];\n var cmap = {}\n Roo.each(_this.data.cols, function (col) {\n cmap[col.column] = col;\n \n });\n Roo.each(records, function (col) {\n col.set('use_ex', _this.data.cols_ex.indexOf(col.data.column) > -1 ? 1 : 0);\n\n if (typeof(cmap[col.data.column]) != 'undefined') {\n\n col.set('title', typeof(cmap[col.data.column].title) == 'undefined' ? '' : cmap[col.data.column].title);\n col.set('use', 1);\n }\n if (!col.data.title.length) {\n \n if (col.data.columnshort.substring(0, col.data.table.length) == col.data.table) {\n // it's prefixed with table name..\n col.set('title', col.data.columnshort.substring(col.data.table.length+1));\n } else {\n col.set('title', col.data.columnshort);\n }\n } \n \n\n // what about descption..\n });\n \n \n \n}"
},
"*prop": "dataSource",
"remoteSort": true,
"xtype": "Store",
"|sortInfo": "{ field : 'filename', direction: 'ASC' }",
"|xns": "Roo.data",
"items": [
{
"*prop": "proxy",
"method": "GET",
"xtype": "HttpProxy",
"|url": "baseURL + '/Builder/ERM.php'",
"|xns": "Roo.data"
},
{
"*prop": "reader",
"id": "id",
"root": "data",
"totalProperty": "total",
"xtype": "JsonReader",
"|fields": "[\n { name: 'use', type: 'int'} , \n { name: 'use_ex', type: 'int'}, \n 'table', 'column', 'ctype', 'desc', 'columnshort', 'title'\n]",
"|xns": "Roo.data"
}
]
},
{
"*prop": "toolbar",
"xtype": "Toolbar",
"|xns": "Roo",
"items": [
{
"listeners": {
"|click": "function()\n{\n \n}\n"
},
"cls": "x-btn-text-icon",
"text": "Add",
"xtype": "Button",
"|icon": "Roo.rootURL + 'images/default/dd/drop-add.gif'",
"|xns": "Roo.Toolbar"
},
{
"listeners": {
"|click": "function()\n{\n // Pman.genericDelete(_this, 'Images'); \n}\n "
},
"cls": "x-btn-text-icon",
"text": "Delete",
"xtype": "Button",
"|icon": "rootURL + '/Pman/templates/images/trash.gif'",
"|xns": "Roo.Toolbar"
}
]
},
{
"*prop": "colModel[]",
"dataIndex": "use",
"header": "Use",
"width": 50,
"xtype": "ColumnModel",
"|renderer": "function(v) { \n var state = v> 0 ? '-checked' : '';\n\n return '';\n}",
"|xns": "Roo.grid"
},
{
"*prop": "colModel[]",
"dataIndex": "use_ex",
"header": "Display/Expand",
"width": 100,
"xtype": "ColumnModel",
"|renderer": "function(v) { \n var state = v> 0 ? '-checked' : '';\n\n return '';\n \n }",
"|xns": "Roo.grid"
},
{
"*prop": "colModel[]",
"dataIndex": "column",
"header": "Column",
"width": 150,
"xtype": "ColumnModel",
"|renderer": "function(v,x,r) { \n if (r.data.table == _this.data.table) {\n \n return String.format('{0}', v); \n }\n return String.format('{0}...{1}', r.data.table, r.data.columnshort); \n}",
"|xns": "Roo.grid"
},
{
"*prop": "colModel[]",
"dataIndex": "title",
"header": "Title",
"width": 150,
"xtype": "ColumnModel",
"|renderer": "function(v,x,r) { \n \n var u = r.data.use * 1;\n u += (r.data.use_ex*1);\n \n return String.format('{0}', u ? v : ''); \n}",
"|xns": "Roo.grid",
"items": [
{
"|xns": "Roo.grid",
"xtype": "GridEditor",
"*prop": "editor",
"items": [
{
"|xns": "Roo.form",
"xtype": "TextField",
"*prop": "field"
}
]
}
]
},
{
"*prop": "colModel[]",
"dataIndex": "ctype",
"header": "Type",
"width": 50,
"xtype": "ColumnModel",
"|renderer": "function(v) {\n\n return v;\n }",
"|xns": "Roo.grid"
},
{
"*prop": "colModel[]",
"dataIndex": "desc",
"header": "Description",
"width": 200,
"xtype": "ColumnModel",
"|renderer": "function(v) { return String.format('{0}', v); }",
"|xns": "Roo.grid"
}
]
}
]
},
{
"listeners": {
"click": "function (_self, e)\n{\n _this.dialog.hide();\n}"
},
"*prop": "buttons[]",
"text": "Cancel",
"xtype": "Button",
"|xns": "Roo"
},
{
"listeners": {
"click": "function (_self, e)\n{\n var ret = Roo.applyIf({ cols : [], cols_ex: [] }, _this.data);\n \n _this.grid.ds.each(function(r) {\n \n if (r.data.use*1) {\n \n var d = Roo.apply({}, r.json);\n Roo.apply(d, r.data);\n ret.cols.push(d);\n \n }\n if (r.data.use_ex*1) {\n ret.cols_ex.push( r.data.column );\n }\n\n });\n \n if (!ret.cols_ex.length) {\n Roo.MessageBox.alert(\"Error\", \"Select at least one Display/expand col\");\n return;\n }\n Roo.log(ret);\n\n _this.dialog.hide();\n _this.callback(ret);\n \n\n}"
},
"*prop": "buttons[]",
"text": "Next",
"xtype": "Button",
"|xns": "Roo"
}
]
}
],
"permname": "",
"modOrder": "001"
}