Pman.Tab.BAdminCoreEnum.bjs
[Pman.BAdmin] / Pman.Tab.BAdminCoreEnum.bjs
1 {
2  "name" : "Pman.Tab.BAdminCoreEnum",
3  "parent" : "Pman.Tab.BAdmin",
4  "title" : "",
5  "path" : "/home/edward/gitlive/Pman.BAdmin/Pman.Tab.BAdminCoreEnum.bjs",
6  "permname" : "",
7  "modOrder" : "005",
8  "strings" : {
9   "ec211f7c20af43e742bf2570c3cb84f9" : "Add",
10   "2df80d5febcde0c10a66818488622b7c" : "Pulldown Options",
11   "7dce122004969d56ae2e0245cb754d35" : "Edit",
12   "01abfc750a0c942167651c40d088531d" : "#",
13   "dae8ace18bdcbcc6ae5aece263e14fe8" : "Options",
14   "b48968e1c912da07df5e8d6d246291ec" : "Display Name",
15   "f2d346b1bb7c1c85ab6f7f21e3666b9f" : "Types",
16   "49ee3087348e8d44e1feda1917443987" : "Name",
17   "f2a6c498fb90ee345d997f888fce3b18" : "Delete",
18   "4d3d769b812b6faa6b76e1a8abaece2d" : "Active"
19  },
20  "items" : [
21   {
22    "xtype" : "Nest",
23    "$ xns" : "Roo.bootstrap.panel",
24    "String title" : "Pulldown Options",
25    "Boolean background" : true,
26    "items" : [
27     {
28      "xtype" : "Border",
29      "$ xns" : "Roo.bootstrap.layout",
30      "* prop" : "layout",
31      "items" : [
32       {
33        "String tabPosition" : "top",
34        "Boolean hideTabs" : true,
35        "xtype" : "Region",
36        "$ xns" : "Roo.bootstrap.layout",
37        "* prop" : "center"
38       },
39       {
40        "String tabPosition" : "top",
41        "Number width" : 350,
42        "xtype" : "Region",
43        "Boolean hideTabs" : true,
44        "$ xns" : "Roo.bootstrap.layout",
45        "* prop" : "west",
46        "Boolean split" : true
47       },
48       {
49        "listeners" : {
50         "activate" : "function (_self)\n{\n    _this.type_edit_btn.hide();\n    \n    if(_this.type_grid) {\n        _this.type_grid.footer.onClick('first');\n    }\n}",
51         "render" : "function (_self)\n{\n    _this.type_panel = _self; \n}"
52        },
53        "Boolean fitContainer" : true,
54        "xtype" : "Grid",
55        "Boolean fitToFrame" : true,
56        "String region" : "west",
57        "$ xns" : "Roo.bootstrap.panel",
58        "String title" : "Types",
59        "Boolean background" : false,
60        "Boolean closable" : false,
61        "items" : [
62         {
63          "xtype" : "NavSimplebar",
64          "$ xns" : "Roo.bootstrap",
65          "* prop" : "toolbar",
66          "items" : [
67           {
68            "xtype" : "NavGroup",
69            "$ xns" : "Roo.bootstrap",
70            "items" : [
71             {
72              "xtype" : "NavItem",
73              "$ xns" : "Roo.bootstrap",
74              "items" : [
75               {
76                "listeners" : {
77                 "click" : "function (_self, e)\n{\n    Pman.Dialog.BAdminCoreEnum.show({ \n        id : 0\n    }, function(res) {\n        _this.type_grid.footer.onClick('first');\n    });\n\n}"
78                },
79                "String weight" : "default",
80                "xtype" : "Button",
81                "$ xns" : "Roo.bootstrap",
82                "String html" : "Add",
83                "String style" : "margin: 10px;",
84                "String glyphicon" : "plus"
85               },
86               {
87                "listeners" : {
88                 "render" : "function (_self)\n{\n    _this.type_edit_btn = this;\n    \n    this.hide();\n}",
89                 "click" : "function (_self, e)\n{\n    var sel = _this.type_grid.getSelectionModel().getSelected();\n    \n    if(!sel || sel.data.id * 1 < 1){\n        Roo.bootstrap.MessageBox.alert('Error', 'Please select a type');\n        return;\n    }\n\n    Pman.Dialog.BAdminCoreEnum.show({ \n        id : sel.data.id\n    }, function(res) {\n        _this.type_grid.footer.onClick('first');\n    });\n}"
90                },
91                "String weight" : "default",
92                "xtype" : "Button",
93                "$ xns" : "Roo.bootstrap",
94                "String html" : "Edit",
95                "String style" : "margin: 10px;",
96                "String glyphicon" : "edit"
97               }
98              ]
99             }
100            ]
101           }
102          ]
103         },
104         {
105          "listeners" : {
106           "rowdblclick" : "function (_self, el, rowIndex, e)\n{\n    var r = _this.type_grid.store.getAt(rowIndex);\n    \n    if(!r || r.data.id * 1 < 1){\n        return;\n    }\n    \n    Pman.Dialog.BAdminCoreEnum.show({ \n        id : r.data.id\n    }, function(res) {\n        _this.type_grid.footer.onClick('first');\n    });\n}",
107           "render" : "function (_self)\n{\n    _this.type_grid = _self; \n   \n}"
108          },
109          "String cls" : "table-fixed",
110          "Boolean cellSelection" : true,
111          "boolean hover" : true,
112          "boolean striped" : false,
113          "xtype" : "Table",
114          "boolean responsive" : true,
115          "Boolean rowSelection" : true,
116          "$ xns" : "Roo.bootstrap",
117          "Boolean loadMask" : true,
118          "* prop" : "grid",
119          "items" : [
120           {
121            "listeners" : {
122             "selectionchange" : "function (_self)\n{\n    _this.type_edit_btn.hide();\n    \n    if(this.getSelected()){\n        _this.type_edit_btn.show();\n    }\n    \n    _this.option_grid.store.load({});\n}"
123            },
124            "Boolean singleSelect" : true,
125            "xtype" : "RowSelectionModel",
126            "$ xns" : "Roo.bootstrap.Table",
127            "* prop" : "sm"
128           },
129           {
130            "listeners" : {
131             "beforeload" : "function (_self, o)\n{\n    o.params = o.params || {};\n    \n    o.params['query[empty_etype]'] = 1;\n    \n}",
132             "load" : "function (_self, records, options)\n{\n    _this.type_edit_btn.hide();\n}"
133            },
134            "$ Object sortInfo" : "{ field : 'display_name', direction: 'ASC' }",
135            "xtype" : "Store",
136            "boolean remoteSort" : true,
137            "$ xns" : "Roo.data",
138            "* prop" : "store",
139            "items" : [
140             {
141              "$ Array fields" : "[\n    {\n        'name': 'id',\n        'type': 'int'\n    },\n    {\n        'name': 'etype',\n        'type': 'string'\n    },\n    {\n        'name': 'name',\n        'type': 'string'\n    },\n    {\n        'name': 'display_name',\n        'type': 'string'\n    },\n    {\n        'name': 'active',\n        'type': 'int'\n    },\n    {\n        'name': 'seqid',\n        'type': 'int'\n    }\n]",
142              "xtype" : "JsonReader",
143              "String root" : "data",
144              "$ xns" : "Roo.data",
145              "String id" : "id",
146              "* prop" : "reader",
147              "String totalProperty" : "total"
148             },
149             {
150              "$ url" : "baseURL + '/Roo/core_enum.php'",
151              "xtype" : "HttpProxy",
152              "$ xns" : "Roo.data",
153              "String method" : "GET",
154              "* prop" : "proxy"
155             }
156            ]
157           },
158           {
159            "String header" : "Name",
160            "String cursor" : "pointer",
161            "String dataIndex" : "display_name",
162            "xtype" : "ColumnModel",
163            "Number xs" : 12,
164            "$ xns" : "Roo.grid",
165            "$ renderer" : "function(v,x,r) {\n    if (v.match(/Coba/g) || v.match(/Risk Question/g)) {\n        return String.format('<span tooltip=\"{1}\">Coba: {0}</span>', v, r.data.name);\n    }\n    \n    return String.format('<span tooltip=\"{1}\">{0}</span>', v, r.data.name); \n}",
166            "Boolean sortable" : true,
167            "* prop" : "cm[]"
168           },
169           {
170            "Number pageSize" : 100,
171            "Boolean displayInfo" : false,
172            "xtype" : "PagingToolbar",
173            "$ xns" : "Roo.bootstrap",
174            "* prop" : "footer",
175            "string name" : "footer"
176           }
177          ]
178         }
179        ]
180       },
181       {
182        "listeners" : {
183         "activate" : "function (_self)\n{\n    _this.edit_btn.hide();\n    _this.delete_btn.hide();\n    \n    if (_this.option_grid) {\n        _this.option_grid.store.load({});\n    }\n}",
184         "render" : "function (_self)\n{\n    _this.option_panel = _self;\n}"
185        },
186        "Boolean fitContainer" : true,
187        "xtype" : "Grid",
188        "Boolean fitToFrame" : true,
189        "String region" : "center",
190        "$ xns" : "Roo.bootstrap.panel",
191        "String title" : "Options",
192        "Boolean background" : false,
193        "items" : [
194         {
195          "xtype" : "NavSimplebar",
196          "$ xns" : "Roo.bootstrap",
197          "* prop" : "toolbar",
198          "items" : [
199           {
200            "xtype" : "NavGroup",
201            "$ xns" : "Roo.bootstrap",
202            "items" : [
203             {
204              "xtype" : "NavItem",
205              "$ xns" : "Roo.bootstrap",
206              "items" : [
207               {
208                "listeners" : {
209                 "click" : "function (_self, e)\n{\n    var sel = _this.type_grid.getSelectionModel().getSelected();\n    \n    if(!sel || sel.data.id * 1 < 1 || !sel.data.name.length ){\n        Roo.bootstrap.MessageBox.alert('Error', 'Please select a type');\n        return;\n    }\n\n    Pman.Dialog.BAdminCoreEnum.show({ \n        id : 0,\n        etype : sel.data.name\n    }, function(res) {\n        _this.option_grid.store.load({});\n    });\n\n}"
210                },
211                "String weight" : "default",
212                "xtype" : "Button",
213                "$ xns" : "Roo.bootstrap",
214                "String html" : "Add",
215                "String style" : "margin: 10px;",
216                "String glyphicon" : "plus"
217               },
218               {
219                "listeners" : {
220                 "render" : "function (_self)\n{\n    _this.edit_btn = this;\n    \n    this.hide();\n}",
221                 "click" : "function (_self, e)\n{\n    var sel = _this.option_grid.getSelectionModel().getSelected();\n    \n    if(!sel || sel.data.id * 1 < 1){\n        Roo.bootstrap.MessageBox.alert('Error', 'Please select a option');\n        return;\n    }\n\n    Pman.Dialog.BAdminCoreEnum.show({ \n        id : sel.data.id\n    }, function(res) {\n        _this.option_grid.store.load({});\n    });\n\n}"
222                },
223                "String weight" : "default",
224                "xtype" : "Button",
225                "$ xns" : "Roo.bootstrap",
226                "String html" : "Edit",
227                "String style" : "margin: 10px;",
228                "String glyphicon" : "edit"
229               },
230               {
231                "listeners" : {
232                 "render" : "function (_self)\n{\n    _this.delete_btn = this;\n    \n    this.hide();\n}",
233                 "click" : "function (_self, e)\n{\n    var sel = _this.option_grid.getSelectionModel().getSelected();\n    \n    if(!sel || sel.data.id * 1 < 1){\n        Roo.bootstrap.MessageBox.alert('Error', 'Please select a option');\n        return;\n    }\n\n    new Pman.Request({\n        url: baseURL + '/Roo/Core_enum.php',\n        method : 'POST',\n        params : {\n            _delete : sel.data.id\n        }, \n        success : function(res) {\n            _this.option_grid.store.load({});\n        }\n    });\n\n}"
234                },
235                "String weight" : "primary",
236                "xtype" : "Button",
237                "$ xns" : "Roo.bootstrap",
238                "String html" : "Delete",
239                "String style" : "margin: 10px;",
240                "String glyphicon" : "trash"
241               }
242              ]
243             }
244            ]
245           }
246          ]
247         },
248         {
249          "listeners" : {
250           "rowdblclick" : "function (_self, el, rowIndex, e)\n{\n    var sel = _this.option_grid.store.getAt(rowIndex);\n    \n    if(!sel || sel.data.id * 1 < 1){\n        return;\n    }\n    \n    Pman.Dialog.BAdminCoreEnum.show({ \n        id : sel.data.id\n    }, function(res) {\n        _this.option_grid.store.load({});\n    });\n    \n}",
251           "cellclick" : "function (_self, el, rowIndex, columnIndex, e)\n{\n    var di = _this.option_grid.colModel.getDataIndex(columnIndex);\n    \n    if (di != 'active') {\n        return;\n    }\n     \n    var rec = _this.option_grid.store.getAt(rowIndex);\n    \n    rec.set('active', rec.data.active ? 0 : 1);\n    \n    rec.commit();\n}",
252           "render" : "function (_self)\n{\n    _this.option_grid = _self; \n\n}"
253          },
254          "Boolean cellSelection" : true,
255          "String cls" : "table-fixed",
256          "Boolean footerShow" : false,
257          "boolean hover" : true,
258          "boolean striped" : true,
259          "xtype" : "Table",
260          "boolean responsive" : true,
261          "Boolean rowSelection" : true,
262          "$ xns" : "Roo.bootstrap",
263          "Boolean loadMask" : true,
264          "* prop" : "grid",
265          "items" : [
266           {
267            "listeners" : {
268             "selectionchange" : "function (_self)\n{\n    _this.edit_btn.hide();\n    _this.delete_btn.hide();\n    \n    if (!this.getSelected()) {\n        return;\n    }\n    \n    _this.edit_btn.show();\n    _this.delete_btn.show();\n    \n}"
269            },
270            "Boolean singleSelect" : true,
271            "xtype" : "RowSelectionModel",
272            "$ xns" : "Roo.bootstrap.Table",
273            "* prop" : "sm"
274           },
275           {
276            "listeners" : {
277             "update" : "function (_self, record, operation)\n{\n    if (operation != 'commit') {\n        return;\n    }\n\n    new Pman.Request({\n        url : baseURL + '/Roo/Core_enum',\n        method :'POST',\n        params : {\n            id : record.data.id,\n            active: record.data.active\n        },\n        success : function() {\n\n        },\n        failure : function() \n        {\n            Roo.bootstrap.MessageBox.alert(\"Error\", \"saving failed\", function() {\n                _this.grid.footer.onClick('first');\n            });\n        }\n    });\n}",
278             "beforeload" : "function (_self, o)\n{\n    o.params = o.params || {};\n    \n    var sel = _this.type_grid.getSelectionModel().getSelected();\n    \n    if(!sel || sel.data.id * 1 < 1 || !sel.data.name.length){\n        this.removeAll();\n        return false;\n    }\n    \n    o.params.etype = sel.data.name;\n    \n}",
279             "load" : "function (_self, records, options)\n{\n    _this.edit_btn.hide();\n    _this.delete_btn.hide();\n}"
280            },
281            "xtype" : "Store",
282            "boolean remoteSort" : true,
283            "$ xns" : "Roo.data",
284            "$ sortinfo" : "{ field : 'display_name', direction: 'ASC' }",
285            "* prop" : "store",
286            "items" : [
287             {
288              "$ Array fields" : "[\n    {\n        'name': 'id',\n        'type': 'int'\n    },\n    {\n        'name': 'etype',\n        'type': 'string'\n    },\n    {\n        'name': 'name',\n        'type': 'string'\n    },\n    {\n        'name': 'display_name',\n        'type': 'string'\n    },\n    {\n        'name': 'active',\n        'type': 'int'\n    },\n    {\n        'name': 'seqid',\n        'type': 'int'\n    }\n]",
289              "xtype" : "JsonReader",
290              "String root" : "data",
291              "$ xns" : "Roo.data",
292              "String id" : "id",
293              "* prop" : "reader",
294              "String totalProperty" : "total"
295             },
296             {
297              "$ url" : "baseURL + '/Roo/core_enum.php'",
298              "xtype" : "HttpProxy",
299              "$ xns" : "Roo.data",
300              "String method" : "GET",
301              "* prop" : "proxy"
302             }
303            ]
304           },
305           {
306            "String header" : "#",
307            "String cursor" : "pointer",
308            "String dataIndex" : "id",
309            "Number md" : 2,
310            "xtype" : "ColumnModel",
311            "Number xs" : 2,
312            "$ xns" : "Roo.grid",
313            "$ renderer" : "function(v,x,r) {\n    //console.log(r.data.seqid);\n    //return String.format('{0}', v ? v : '');\n    \n    return \n        String.format('{0}', r.data.seqid ? r.data.seqid : '')\n        +\" <span style='color:lightgrey'>\"\n        + String.format('{0}', r.data.id ? r.data.id : '')\n        +\"</span>\";\n}",
314            "Boolean sortable" : false,
315            "* prop" : "cm[]",
316            "Number sm" : 2
317           },
318           {
319            "String header" : "Name",
320            "String cursor" : "pointer",
321            "Number md" : 4,
322            "String dataIndex" : "name",
323            "xtype" : "ColumnModel",
324            "Number xs" : 4,
325            "$ xns" : "Roo.grid",
326            "$ renderer" : "function(v,x,r) { \n    return String.format('{0}', v ? v : '');\n}",
327            "Boolean sortable" : false,
328            "* prop" : "cm[]",
329            "Number sm" : 4
330           },
331           {
332            "String header" : "Display Name",
333            "String cursor" : "pointer",
334            "String dataIndex" : "display_name",
335            "Number md" : 4,
336            "xtype" : "ColumnModel",
337            "Number xs" : 4,
338            "$ xns" : "Roo.grid",
339            "$ renderer" : "function(v,x,r) { \n    return String.format('{0}', v ? v : '');\n}",
340            "Boolean sortable" : false,
341            "* prop" : "cm[]",
342            "Number sm" : 4
343           },
344           {
345            "String header" : "Active",
346            "String cursor" : "pointer",
347            "Number md" : 2,
348            "String dataIndex" : "active",
349            "xtype" : "ColumnModel",
350            "Number xs" : 2,
351            "$ xns" : "Roo.grid",
352            "$ renderer" : "function(v,x,r) { \n    var state = v > 0 ?  '-checked' : '';\n\n    return '<img class=\"x-grid-check-icon' + state + '\" src=\"' + Roo.BLANK_IMAGE_URL + '\"/>';\n}",
353            "Boolean sortable" : false,
354            "* prop" : "cm[]",
355            "Number sm" : 2
356           }
357          ]
358         }
359        ]
360       }
361      ]
362     }
363    ]
364   }
365  ]
366 }