Pman.Dialog.XtupleItem.bjs
[Pman.Xtuple] / Pman.Dialog.XtupleItem.bjs
1 {
2     "name" : "Pman.Dialog.XtupleItem",
3     "parent" : "",
4     "title" : "",
5     "path" : "/home/edward/gitlive/web.xtuple/Pman/Xtuple/Pman.Dialog.XtupleItem.bjs",
6     "permname" : "",
7     "modOrder" : "001",
8     "items" : [
9         {
10             "listeners" : {
11                 "show" : "function (_self)\n{\n     _this.dialog.layout.getRegion('center').showPanel(0);\n}"
12             },
13             "modal" : true,
14             "collapsible" : false,
15             "title" : "Edit / Create item",
16             "xtype" : "LayoutDialog",
17             "width" : 800,
18             "$ xns" : "Roo",
19             "closable" : false,
20             "resizable" : false,
21             "height" : 550,
22             "items" : [
23                 {
24                     "alwaysShowTabs" : true,
25                     "xtype" : "LayoutRegion",
26                     "tabPosition" : "top",
27                     "$ xns" : "Roo",
28                     "* prop" : "center"
29                 },
30                 {
31                     "region" : "center",
32                     "title" : "Detail",
33                     "xtype" : "ContentPanel",
34                     "$ xns" : "Roo",
35                     "items" : [
36                         {
37                             "listeners" : {
38                                 "|actioncomplete" : "function(_self,action)\n{\n    if (action.type == 'setdata') {\n       _this.form.findField('item_number').el.dom.readOnly = true;\n       _this.form.findField('item_type').disabled = true; \n       \n       if(_this.data.item_id * 1 > 0){\n            \n            this.load({ \n                method: 'GET', \n                params: {\n                     '_id' : _this.data.item_id,\n                     '_with_itemsite' : 1,\n                     '_with_itemcost' : 1,\n                     '_with_prodcat' : 1 ,\n                     '_with_salesaccnt' : 1 \n                }\n            });\n            return;\n       }\n       // if it's new..\n       _this.form.findField('item_number').el.dom.readOnly = false;\n       _this.form.findField('item_type').disabled = false; \n       _this.form.findField('item_salesaccnt').setValue('');\n       \n       return;\n    }\n    if (action.type == 'load') {\n       _this.form.findField('item_type').showHide();\n        return;\n    }\n    if (action.type =='submit') {\n    \n        var id = _this.form.findField('item_id').getValue() * 1;\n        if (id < 1) {\n        \n            this.load({ \n                method: 'GET', \n                params: {\n                     '_id' : action.result.data.item_id,\n                     '_with_itemsite' : 1,\n                     '_with_itemcost' : 1,\n                     '_with_prodcat' : 1 ,\n                     '_with_salesaccnt' : 1 \n                }\n            });\n            return;\n        }\n        _this.dialog.hide();\n    \n         if (_this.callback) {\n            _this.callback.call(_this, _this.form.getValues());\n         }\n         _this.form.reset();\n         return;\n    }\n}\n",
39                                 "|rendered" : "function (form)\n{\n    _this.form= form;\n}\n"
40                             },
41                             "$ url" : "baseURL + '/Roo/item.php'",
42                             "method" : "POST",
43                             "style" : "margin:10px;",
44                             "xtype" : "Form",
45                             "labelWidth" : 120,
46                             "$ xns" : "Roo.form",
47                             "items" : [
48                                 {
49                                     "fieldLabel" : "SKU",
50                                     "xtype" : "TextField",
51                                     "allowBlank" : false,
52                                     "width" : 200,
53                                     "$ xns" : "Roo.form",
54                                     "name" : "item_number"
55                                 },
56                                 {
57                                     "fieldLabel" : "Description",
58                                     "xtype" : "TextField",
59                                     "width" : 400,
60                                     "$ xns" : "Roo.form",
61                                     "name" : "item_descrip1"
62                                 },
63                                 {
64                                     "fieldLabel" : "Description (2)",
65                                     "xtype" : "TextField",
66                                     "width" : 400,
67                                     "$ xns" : "Roo.form",
68                                     "name" : "item_descrip2"
69                                 },
70                                 {
71                                     "xtype" : "Column",
72                                     "labelWidth" : 120,
73                                     "$ xns" : "Roo.form",
74                                     "items" : [
75                                         {
76                                             "listeners" : {
77                                                 "beforeselect" : "function (combo, record, index)\n{\n    (function() { combo.showHide(); }).defer(100);\n}"
78                                             },
79                                             "listWidth" : 200,
80                                             "triggerAction" : "all",
81                                             "fieldLabel" : "Type",
82                                             "displayField" : "fname",
83                                             "emptyText" : "Select Type",
84                                             "hiddenName" : "item_type",
85                                             "valueField" : "ftype",
86                                             "xtype" : "ComboBox",
87                                             "allowBlank" : false,
88                                             "$ showHide" : "function() {\n\n    var it = this.getValue();\n    \n    var options = [ \n        'item_itemcost_id_itemcost_curr_id',\n        'item_itemcost_id_itemcost_actcost',\n        'item_itemsite_id_itemsite_reorderlevel',\n        'item_itemsite_id_itemsite_leadtime',\n        'item_itemsite_id_itemsite_location_id',\n        'item_itemsite_id_itemsite_loccntrl',\n        'item_itemsite_id_itemsite_stocked',\n        'item_itemsite_id_itemsite_perishable',\n        \n        'item_itemsite_id_itemsite_safetystock',\n        'item_itemsite_id_itemsite_controlmethod',\n        'item_itemsite_id_itemsite_plancode_id',\n        'item_itemsite_id_itemsite_costcat_id',\n        'item_itemsite_id_itemsite_active',\n        'item_itemsite_id_itemsite_sold'\n        \n    ];\n    \n    var r_req = [ \n        'item_listprice'\n    ];\n    \n    var state = true;\n    \n    _this.standardCostFieldSet.show();\n    _this.itemsiteFieldSet.show();\n    _this.form.findField('_update_related').setValue(1);\n    \n    switch(it) {\n        case 'K':\n            state = false;\n\n            _this.form.findField('item_listprice').allowBlank = false;\n            _this.form.findField('item_listprice').actionMode = 'fieldEl';\n            _this.form.findField('item_listprice').hideMode = 'display';\n            _this.form.findField('item_listprice').show();\n                        \n            break;\n            \n        case 'R': // refrence\n            options = options.concat(r_req);\n            state = false;\n            _this.standardCostFieldSet.hide();\n            break;\n            \n        case 'P': // purchased..\n            options = options.concat(r_req);\n            // must have\n            break;\n    }\n    \n    Roo.each(options, function(n) {\n        var ff = _this.form.findField(n);\n        ff.allowBlank = !state;\n        ff.actionMode = 'fieldEl';\n        ff.hideMode = 'display';\n        state ? ff.show() : ff.hide(); \n        \n    });\n    \n    \n    if(!state){\n        _this.standardCostFieldSet.hide();\n        _this.itemsiteFieldSet.hide();\n        _this.form.findField('_update_related').setValue(0);\n    }\n    \n  \n           \n}\n",
89                                             "editable" : false,
90                                             "width" : 200,
91                                             "$ xns" : "Roo.form",
92                                             "mode" : "local",
93                                             "name" : "item_type_name",
94                                             "tpl" : "<div class=\"x-grid-cell-text x-btn button\"><b>{fname}</b> </div>",
95                                             "items" : [
96                                                 {
97                                                     "xtype" : "SimpleStore",
98                                                     "$ data" : "[ \n    [ 'P', \"Purchased (eg. a standard product)\"],\n    [ 'R' , \"Reference (Non-Product)\"],\n    [ 'K', \"Kit (made up of products)\"]  \n]\n",
99                                                     "$ fields" : "[  'ftype', 'fname']",
100                                                     "$ xns" : "Roo.data",
101                                                     "* prop" : "store"
102                                                 }
103                                             ]
104                                         },
105                                         {
106                                             "listWidth" : 400,
107                                             "triggerAction" : "all",
108                                             "fieldLabel" : "Class",
109                                             "forceSelection" : true,
110                                             "selectOnFocus" : true,
111                                             "pageSize" : 20,
112                                             "displayField" : "classcode_code",
113                                             "emptyText" : "Select classcode",
114                                             "hiddenName" : "item_classcode_id",
115                                             "minChars" : 2,
116                                             "valueField" : "classcode_id",
117                                             "xtype" : "ComboBox",
118                                             "allowBlank" : false,
119                                             "typeAhead" : true,
120                                             "editable" : false,
121                                             "width" : 200,
122                                             "$ xns" : "Roo.form",
123                                             "name" : "item_classcode_id_classcode_code",
124                                             "qtip" : "Select classcode",
125                                             "queryParam" : "",
126                                             "tpl" : "<div class=\"x-grid-cell-text x-btn button\"><b>{classcode_code}</b> </div>",
127                                             "loadingText" : "Searching...",
128                                             "items" : [
129                                                 {
130                                                     "listeners" : {
131                                                         "|beforeload" : "function (_self, o){\n    o.params = o.params || {};\n    // set more here\n}\n"
132                                                     },
133                                                     "xtype" : "Store",
134                                                     "remoteSort" : true,
135                                                     "$ sortInfo" : "{ direction : 'ASC', field: 'id' }",
136                                                     "$ xns" : "Roo.data",
137                                                     "* prop" : "store",
138                                                     "items" : [
139                                                         {
140                                                             "$ url" : "baseURL + '/Roo/classcode.php'",
141                                                             "xtype" : "HttpProxy",
142                                                             "method" : "GET",
143                                                             "$ xns" : "Roo.data",
144                                                             "* prop" : "proxy"
145                                                         },
146                                                         {
147                                                             "id" : "id",
148                                                             "root" : "data",
149                                                             "xtype" : "JsonReader",
150                                                             "$ xns" : "Roo.data",
151                                                             "$ fields" : "[{\"name\":\"id\",\"type\":\"int\"},{\"name\":\"classcode_code\",\"type\":\"string\"}]",
152                                                             "* prop" : "reader",
153                                                             "totalProperty" : "total"
154                                                         }
155                                                     ]
156                                                 }
157                                             ]
158                                         },
159                                         {
160                                             "fieldLabel" : "Weight",
161                                             "xtype" : "NumberField",
162                                             "allowBlank" : false,
163                                             "allowDecimals" : true,
164                                             "decimalPrecision" : 2,
165                                             "width" : 200,
166                                             "$ xns" : "Roo.form",
167                                             "name" : "item_prodweight"
168                                         },
169                                         {
170                                             "fieldLabel" : "Item comments",
171                                             "xtype" : "TextArea",
172                                             "width" : 200,
173                                             "$ xns" : "Roo.form",
174                                             "name" : "item_comments",
175                                             "height" : 100
176                                         },
177                                         {
178                                             "fieldLabel" : "Item sold",
179                                             "inputValue" : true,
180                                             "xtype" : "Checkbox",
181                                             "valueOff" : 0,
182                                             "width" : 75,
183                                             "$ xns" : "Roo.form",
184                                             "name" : "item_sold"
185                                         },
186                                         {
187                                             "fieldLabel" : "Item active",
188                                             "inputValue" : true,
189                                             "xtype" : "Checkbox",
190                                             "valueOff" : 0,
191                                             "width" : 75,
192                                             "$ xns" : "Roo.form",
193                                             "name" : "item_active"
194                                         },
195                                         {
196                                             "listeners" : {
197                                                 "add" : "function (combo)\n{\n    Pman.Dialog.XtupleProdcat.show({prodcat_id : 0});\n}",
198                                                 "edit" : "function (combo, record)\n{\n    var s = _this.form.findField('item_prodcat_id').getValue() * 1;\n    if(s < 1){\n        Roo.MessageBox.alert('Error','Please select a account assignment');\n        return;\n    }\n    Pman.Dialog.XtupleProdcat.show({prodcat_id : s});\n}"
199                                             },
200                                             "alwaysQuery" : true,
201                                             "listWidth" : 400,
202                                             "triggerAction" : "all",
203                                             "fieldLabel" : "Product Category",
204                                             "forceSelection" : true,
205                                             "selectOnFocus" : true,
206                                             "pageSize" : 20,
207                                             "displayField" : "prodcat_code",
208                                             "emptyText" : "Select Category",
209                                             "hiddenName" : "item_prodcat_id",
210                                             "minChars" : 2,
211                                             "valueField" : "prodcat_id",
212                                             "xtype" : "ComboBox",
213                                             "allowBlank" : false,
214                                             "typeAhead" : true,
215                                             "editable" : false,
216                                             "width" : 200,
217                                             "$ xns" : "Roo.form",
218                                             "name" : "item_prodcat_id_prodcat_code",
219                                             "qtip" : "Select prodcat",
220                                             "queryParam" : "",
221                                             "tpl" : "<div class=\"x-grid-cell-text x-btn button\"><b>{prodcat_code}</b> </div>",
222                                             "loadingText" : "Searching...",
223                                             "items" : [
224                                                 {
225                                                     "listeners" : {
226                                                         "|beforeload" : "function (_self, o){\n    o.params = o.params || {};\n    // set more here\n}\n"
227                                                     },
228                                                     "xtype" : "Store",
229                                                     "remoteSort" : true,
230                                                     "$ xns" : "Roo.data",
231                                                     "$ sortInfo" : "{ direction : 'ASC', field: 'id' }",
232                                                     "* prop" : "store",
233                                                     "items" : [
234                                                         {
235                                                             "$ url" : "baseURL + '/Roo/prodcat.php'",
236                                                             "xtype" : "HttpProxy",
237                                                             "method" : "GET",
238                                                             "$ xns" : "Roo.data",
239                                                             "* prop" : "proxy"
240                                                         },
241                                                         {
242                                                             "id" : "id",
243                                                             "root" : "data",
244                                                             "xtype" : "JsonReader",
245                                                             "$ xns" : "Roo.data",
246                                                             "$ fields" : "[{\"name\":\"id\",\"type\":\"int\"},{\"name\":\"prodcat_code\",\"type\":\"string\"}]",
247                                                             "* prop" : "reader",
248                                                             "totalProperty" : "total"
249                                                         }
250                                                     ]
251                                                 }
252                                             ]
253                                         },
254                                         {
255                                             "fieldLabel" : "Sales Account",
256                                             "xtype" : "DisplayField",
257                                             "$ xns" : "Roo.form",
258                                             "name" : "item_salesaccnt"
259                                         },
260                                         {
261                                             "fieldLabel" : "Item listprice",
262                                             "xtype" : "NumberField",
263                                             "width" : 200,
264                                             "$ xns" : "Roo.form",
265                                             "name" : "item_listprice"
266                                         },
267                                         {
268                                             "listeners" : {
269                                                 "render" : "function (_self)\n{\n    _this.standardCostFieldSet = _self;\n}"
270                                             },
271                                             "style" : "width:320px",
272                                             "xtype" : "FieldSet",
273                                             "legend" : "Standard Cost",
274                                             "$ xns" : "Roo.form",
275                                             "items" : [
276                                                 {
277                                                     "listWidth" : 400,
278                                                     "triggerAction" : "all",
279                                                     "fieldLabel" : "Currency",
280                                                     "forceSelection" : true,
281                                                     "selectOnFocus" : true,
282                                                     "pageSize" : 20,
283                                                     "displayField" : "curr_name",
284                                                     "emptyText" : "Select Currency",
285                                                     "hiddenName" : "item_itemcost_id_itemcost_curr_id",
286                                                     "minChars" : 2,
287                                                     "valueField" : "curr_id",
288                                                     "xtype" : "ComboBox",
289                                                     "allowBlank" : false,
290                                                     "typeAhead" : true,
291                                                     "editable" : false,
292                                                     "width" : 200,
293                                                     "$ xns" : "Roo.form",
294                                                     "name" : "curr_name",
295                                                     "qtip" : "Select Currency",
296                                                     "queryParam" : "query[curr_name]",
297                                                     "tpl" : "<div class=\"x-grid-cell-text x-btn button\"><b>{curr_name}</b> </div>",
298                                                     "loadingText" : "Searching...",
299                                                     "items" : [
300                                                         {
301                                                             "listeners" : {
302                                                                 "|beforeload" : "function (_self, o){\n    o.params = o.params || {};\n    // set more here\n   \n}\n"
303                                                             },
304                                                             "xtype" : "Store",
305                                                             "remoteSort" : true,
306                                                             "$ sortInfo" : "{ direction : 'ASC', field: 'curr_symbol' }",
307                                                             "$ xns" : "Roo.data",
308                                                             "* prop" : "store",
309                                                             "items" : [
310                                                                 {
311                                                                     "$ url" : "baseURL + '/Roo/curr_symbol.php'",
312                                                                     "xtype" : "HttpProxy",
313                                                                     "method" : "GET",
314                                                                     "$ xns" : "Roo.data",
315                                                                     "* prop" : "proxy"
316                                                                 },
317                                                                 {
318                                                                     "id" : "curr_id",
319                                                                     "root" : "data",
320                                                                     "xtype" : "JsonReader",
321                                                                     "$ xns" : "Roo.data",
322                                                                     "$ fields" : "[{\"name\":\"curr_id\",\"type\":\"int\"},\"curr_symbol\"]",
323                                                                     "* prop" : "reader",
324                                                                     "totalProperty" : "total"
325                                                                 }
326                                                             ]
327                                                         }
328                                                     ]
329                                                 },
330                                                 {
331                                                     "fieldLabel" : "Value",
332                                                     "xtype" : "NumberField",
333                                                     "allowBlank" : false,
334                                                     "width" : 200,
335                                                     "$ xns" : "Roo.form",
336                                                     "name" : "item_itemcost_id_itemcost_actcost"
337                                                 }
338                                             ]
339                                         }
340                                     ]
341                                 },
342                                 {
343                                     "xtype" : "Column",
344                                     "$ xns" : "Roo.form",
345                                     "items" : [
346                                         {
347                                             "listeners" : {
348                                                 "render" : "function (_self)\n{\n    _this.itemsiteFieldSet = _self;\n}"
349                                             },
350                                             "xtype" : "FieldSet",
351                                             "legend" : "Itemsite Settings",
352                                             "$ xns" : "Roo.form",
353                                             "String/Object/Function style" : "width:335px;",
354                                             "Number labelWidth" : 120,
355                                             "items" : [
356                                                 {
357                                                     "fieldLabel" : "Reorder Level",
358                                                     "xtype" : "NumberField",
359                                                     "allowBlank" : false,
360                                                     "width" : 200,
361                                                     "$ xns" : "Roo.form",
362                                                     "name" : "item_itemsite_id_itemsite_reorderlevel"
363                                                 },
364                                                 {
365                                                     "fieldLabel" : "Stock Safety Level",
366                                                     "xtype" : "NumberField",
367                                                     "allowBlank" : false,
368                                                     "width" : 200,
369                                                     "$ xns" : "Roo.form",
370                                                     "name" : "item_itemsite_id_itemsite_safetystock"
371                                                 },
372                                                 {
373                                                     "fieldLabel" : "Lead time (Days)",
374                                                     "xtype" : "NumberField",
375                                                     "allowBlank" : false,
376                                                     "width" : 200,
377                                                     "$ xns" : "Roo.form",
378                                                     "name" : "item_itemsite_id_itemsite_leadtime"
379                                                 },
380                                                 {
381                                                     "listWidth" : 200,
382                                                     "triggerAction" : "all",
383                                                     "fieldLabel" : "Control Method",
384                                                     "displayField" : "fname",
385                                                     "hiddenName" : "item_itemsite_id_itemsite_controlmethod",
386                                                     "valueField" : "ftype",
387                                                     "xtype" : "ComboBox",
388                                                     "allowBlank" : false,
389                                                     "editable" : false,
390                                                     "width" : 200,
391                                                     "$ xns" : "Roo.form",
392                                                     "mode" : "local",
393                                                     "name" : "item_itemsite_id_itemsite_controlmethod_name",
394                                                     "tpl" : "<div class=\"x-grid-cell-text x-btn button\"><b>{fname}</b> </div>",
395                                                     "items" : [
396                                                         {
397                                                             "xtype" : "SimpleStore",
398                                                             "$ data" : "[ \n    [ 'N', \"None\"],\n    [ 'R' , \"Regular\"]\n]\n",
399                                                             "$ fields" : "[  'ftype', 'fname']",
400                                                             "$ xns" : "Roo.data",
401                                                             "* prop" : "store"
402                                                         }
403                                                     ]
404                                                 },
405                                                 {
406                                                     "listWidth" : 400,
407                                                     "triggerAction" : "all",
408                                                     "fieldLabel" : "Planner Code",
409                                                     "forceSelection" : true,
410                                                     "selectOnFocus" : true,
411                                                     "pageSize" : 20,
412                                                     "displayField" : "plancode_name",
413                                                     "emptyText" : "Select plancode",
414                                                     "hiddenName" : "item_itemsite_id_itemsite_plancode_id",
415                                                     "minChars" : 2,
416                                                     "valueField" : "plancode_id",
417                                                     "xtype" : "ComboBox",
418                                                     "allowBlank" : false,
419                                                     "typeAhead" : true,
420                                                     "editable" : false,
421                                                     "width" : 200,
422                                                     "$ xns" : "Roo.form",
423                                                     "name" : "plancode_name",
424                                                     "qtip" : "Select plancode",
425                                                     "queryParam" : "",
426                                                     "tpl" : "<div class=\"x-grid-cell-text x-btn button\"><b>{plancode_name}</b> </div>",
427                                                     "loadingText" : "Searching...",
428                                                     "items" : [
429                                                         {
430                                                             "listeners" : {
431                                                                 "|beforeload" : "function (_self, o){\n    o.params = o.params || {};\n    // set more here\n}\n"
432                                                             },
433                                                             "xtype" : "Store",
434                                                             "remoteSort" : true,
435                                                             "$ xns" : "Roo.data",
436                                                             "$ sortInfo" : "{ direction : 'ASC', field: 'id' }",
437                                                             "* prop" : "store",
438                                                             "items" : [
439                                                                 {
440                                                                     "$ url" : "baseURL + '/Roo/plancode.php'",
441                                                                     "xtype" : "HttpProxy",
442                                                                     "method" : "GET",
443                                                                     "$ xns" : "Roo.data",
444                                                                     "* prop" : "proxy"
445                                                                 },
446                                                                 {
447                                                                     "id" : "id",
448                                                                     "root" : "data",
449                                                                     "xtype" : "JsonReader",
450                                                                     "$ xns" : "Roo.data",
451                                                                     "$ fields" : "[{\"name\":\"id\",\"type\":\"int\"},{\"name\":\"plancode_code\",\"type\":\"string\"}]",
452                                                                     "* prop" : "reader",
453                                                                     "totalProperty" : "total"
454                                                                 }
455                                                             ]
456                                                         }
457                                                     ]
458                                                 },
459                                                 {
460                                                     "listWidth" : 400,
461                                                     "triggerAction" : "all",
462                                                     "fieldLabel" : "Costcat",
463                                                     "forceSelection" : true,
464                                                     "selectOnFocus" : true,
465                                                     "pageSize" : 20,
466                                                     "displayField" : "costcat_code",
467                                                     "emptyText" : "Select costcat",
468                                                     "hiddenName" : "item_itemsite_id_itemsite_costcat_id",
469                                                     "minChars" : 2,
470                                                     "valueField" : "costcat_id",
471                                                     "xtype" : "ComboBox",
472                                                     "allowBlank" : false,
473                                                     "typeAhead" : true,
474                                                     "editable" : false,
475                                                     "width" : 200,
476                                                     "$ xns" : "Roo.form",
477                                                     "name" : "costcat_code",
478                                                     "qtip" : "Select costcat",
479                                                     "queryParam" : "",
480                                                     "tpl" : "<div class=\"x-grid-cell-text x-btn button\"><b>{costcat_code}</b> </div>",
481                                                     "loadingText" : "Searching...",
482                                                     "items" : [
483                                                         {
484                                                             "listeners" : {
485                                                                 "|beforeload" : "function (_self, o){\n    o.params = o.params || {};\n    // set more here\n}\n"
486                                                             },
487                                                             "xtype" : "Store",
488                                                             "remoteSort" : true,
489                                                             "$ xns" : "Roo.data",
490                                                             "$ sortInfo" : "{ direction : 'ASC', field: 'id' }",
491                                                             "* prop" : "store",
492                                                             "items" : [
493                                                                 {
494                                                                     "$ url" : "baseURL + '/Roo/costcat.php'",
495                                                                     "xtype" : "HttpProxy",
496                                                                     "method" : "GET",
497                                                                     "$ xns" : "Roo.data",
498                                                                     "* prop" : "proxy"
499                                                                 },
500                                                                 {
501                                                                     "id" : "id",
502                                                                     "root" : "data",
503                                                                     "xtype" : "JsonReader",
504                                                                     "$ xns" : "Roo.data",
505                                                                     "$ fields" : "[{\"name\":\"id\",\"type\":\"int\"},{\"name\":\"costcat_code\",\"type\":\"string\"}]",
506                                                                     "* prop" : "reader",
507                                                                     "totalProperty" : "total"
508                                                                 }
509                                                             ]
510                                                         }
511                                                     ]
512                                                 },
513                                                 {
514                                                     "fieldLabel" : "Active",
515                                                     "inputValue" : true,
516                                                     "xtype" : "Checkbox",
517                                                     "valueOff" : 0,
518                                                     "width" : 75,
519                                                     "$ xns" : "Roo.form",
520                                                     "name" : "item_itemsite_id_itemsite_active"
521                                                 },
522                                                 {
523                                                     "fieldLabel" : "Sold",
524                                                     "inputValue" : true,
525                                                     "xtype" : "Checkbox",
526                                                     "valueOff" : 0,
527                                                     "width" : 75,
528                                                     "$ xns" : "Roo.form",
529                                                     "name" : "item_itemsite_id_itemsite_sold"
530                                                 },
531                                                 {
532                                                     "fieldLabel" : "Stocked",
533                                                     "inputValue" : true,
534                                                     "xtype" : "Checkbox",
535                                                     "valueOff" : 0,
536                                                     "width" : 75,
537                                                     "$ xns" : "Roo.form",
538                                                     "name" : "item_itemsite_id_itemsite_stocked"
539                                                 },
540                                                 {
541                                                     "fieldLabel" : "Perishable",
542                                                     "inputValue" : true,
543                                                     "xtype" : "Checkbox",
544                                                     "valueOff" : 0,
545                                                     "width" : 75,
546                                                     "$ xns" : "Roo.form",
547                                                     "name" : "item_itemsite_id_itemsite_perishable"
548                                                 },
549                                                 {
550                                                     "fieldLabel" : "Multi Location",
551                                                     "inputValue" : true,
552                                                     "xtype" : "Checkbox",
553                                                     "valueOff" : 0,
554                                                     "width" : 100,
555                                                     "$ xns" : "Roo.form",
556                                                     "name" : "item_itemsite_id_itemsite_loccntrl"
557                                                 },
558                                                 {
559                                                     "listWidth" : 400,
560                                                     "triggerAction" : "all",
561                                                     "fieldLabel" : "Default Location",
562                                                     "forceSelection" : true,
563                                                     "selectOnFocus" : true,
564                                                     "pageSize" : 200,
565                                                     "displayField" : "location_name",
566                                                     "emptyText" : "Default Location",
567                                                     "hiddenName" : "item_itemsite_id_itemsite_location_id",
568                                                     "minChars" : 2,
569                                                     "valueField" : "location_id",
570                                                     "xtype" : "ComboBox",
571                                                     "allowBlank" : false,
572                                                     "typeAhead" : false,
573                                                     "editable" : true,
574                                                     "width" : 200,
575                                                     "$ xns" : "Roo.form",
576                                                     "name" : "location_name",
577                                                     "qtip" : "Select terms",
578                                                     "queryParam" : "query[location_name]",
579                                                     "tpl" : "<div class=\"x-grid-cell-text x-btn button\"><b>{location_name}</b> </div>",
580                                                     "loadingText" : "Searching...",
581                                                     "items" : [
582                                                         {
583                                                             "listeners" : {
584                                                                 "|beforeload" : "function (_self, o){\n    o.params = o.params || {};\n    // set more here\n     o.params.location_netable = 1;\n     o.params._notinternalcompany = 1;\n     o.params.location_restrict = 0;\n}\n"
585                                                             },
586                                                             "xtype" : "Store",
587                                                             "remoteSort" : true,
588                                                             "$ sortInfo" : "{ direction : 'ASC', field: 'location_name' }",
589                                                             "$ xns" : "Roo.data",
590                                                             "* prop" : "store",
591                                                             "items" : [
592                                                                 {
593                                                                     "$ url" : "baseURL + '/Roo/location.php'",
594                                                                     "method" : "GET",
595                                                                     "xtype" : "HttpProxy",
596                                                                     "$ xns" : "Roo.data",
597                                                                     "* prop" : "proxy"
598                                                                 },
599                                                                 {
600                                                                     "id" : "location_id",
601                                                                     "root" : "data",
602                                                                     "xtype" : "JsonReader",
603                                                                     "$ fields" : "[{\"name\":\"location_id\",\"type\":\"int\"},\"location_name\"]",
604                                                                     "$ xns" : "Roo.data",
605                                                                     "* prop" : "reader",
606                                                                     "totalProperty" : "total"
607                                                                 }
608                                                             ]
609                                                         }
610                                                     ]
611                                                 }
612                                             ]
613                                         }
614                                     ]
615                                 },
616                                 {
617                                     "xtype" : "Hidden",
618                                     "$ xns" : "Roo.form",
619                                     "width" : 75,
620                                     "name" : "item_id"
621                                 },
622                                 {
623                                     "value" : 1,
624                                     "xtype" : "Hidden",
625                                     "width" : 75,
626                                     "$ xns" : "Roo.form",
627                                     "name" : "_update_related"
628                                 }
629                             ]
630                         }
631                     ]
632                 },
633                 {
634                     "listeners" : {
635                         "|activate" : "function() {\n    _this.lpanel = this;\n    Roo.log('run1!!');\n    Roo.log(MODULE);\n    try { if (MODULE.isBuilder) {\n        return;\n    } } catch(e) { }\n    \n    var id = _this.form.findField('item_id').getValue() * 1;\n    if (id < 1) {\n        Roo.MessageBox.alert(\"Save First\", \"Save the item first, before adding parts\");\n        _this.dialog.layout.getRegion('center').showPanel(0);\n        return;\n    }\n    \n    if (_this.partsgrid) {\n        _this.partsgrid.footer.onClick('first');\n    \n     }\n}"
636                     },
637                     "background" : true,
638                     "region" : "center",
639                     "fitToframe" : true,
640                     "title" : "Item Parts",
641                     "xtype" : "GridPanel",
642                     "fitContainer" : true,
643                     "$ xns" : "Roo",
644                     "tableName" : "ipshead",
645                     "items" : [
646                         {
647                             "listeners" : {
648                                 "beforeedit" : "function (e)\n{\n    if(e.field != 'ipshead_ipsitem_price'){\n        return false;\n    }\n    \n}",
649                                 "|render" : "function() \n{\n    _this.partsgrid = this; \n    //_this.dialog = Pman.Dialog.FILL_IN\n    if (_this.partspanel.active) {\n       this.footer.onClick('first');\n    }\n}",
650                                 "afteredit" : "function (e)\n{\n    if(e.originalValue == e.value){\n        return false;\n    }\n    return false;\n    \n    \n    var id = _this.form.findField('item_id').getValue() * 1;\n    if(id < 1){\n        return false;\n    }\n    \n    new Pman.Request({\n        method : 'POST',\n        url : baseURL + '/Roo/ipsiteminfo',\n        mask : 'Saving',\n        params : {\n            ipsitem_ipshead_id : e.record.data.ipshead_id,\n            ipsitem_item_id : id,\n            ipsitem_price : e.record.data.ipshead_ipsitem_price,\n            ipsitem_id : e.record.data.ipshead_ipsitem_id\n        }\n    \n    });\n        \n         \n        \n        \n}"
651                             },
652                             "autoExpandColumn" : "bom_item_id_item_descrip",
653                             "xtype" : "EditorGrid",
654                             "loadMask" : true,
655                             "clicksToEdit" : 1,
656                             "$ xns" : "Roo.grid",
657                             "* prop" : "grid",
658                             "items" : [
659                                 {
660                                     "listeners" : {
661                                         "beforeload" : "function (_self, o)\n{\n   o.params = o.params || {};\n   \n   var id  = _this.form.findField('item_id').getValue() * 1;\n   if(id < 1){\n        return false;\n   }\n   \n   o.params.bom_parent_item_id = id;\n}"
662                                     },
663                                     "xtype" : "Store",
664                                     "remoteSort" : true,
665                                     "$ sortInfo" : "{ field : 'bom_item_id_item_name', direction: 'ASC' }",
666                                     "$ xns" : "Roo.data",
667                                     "* prop" : "dataSource",
668                                     "items" : [
669                                         {
670                                             "$ url" : "baseURL + '/Roo/ipshead.php'",
671                                             "xtype" : "HttpProxy",
672                                             "method" : "GET",
673                                             "$ xns" : "Roo.data",
674                                             "* prop" : "proxy"
675                                         },
676                                         {
677                                             "id" : "bom_id",
678                                             "root" : "data",
679                                             "xtype" : "JsonReader",
680                                             "$ fields" : "[\n    {\n        'name': 'ipshead_id',\n        'type': 'int'\n    },\n    {\n        'name': 'ipshead_name',\n        'type': 'string'\n    }\n]",
681                                             "$ xns" : "Roo.data",
682                                             "* prop" : "reader",
683                                             "totalProperty" : "total"
684                                         }
685                                     ]
686                                 },
687                                 {
688                                     "pageSize" : 50,
689                                     "xtype" : "PagingToolbar",
690                                     "emptyMsg" : "Nothing found",
691                                     "$ xns" : "Roo",
692                                     "displayMsg" : "Displaying records {0} - {1} of {2}",
693                                     "displayInfo" : true,
694                                     "* prop" : "footer"
695                                 },
696                                 {
697                                     "xtype" : "ColumnModel",
698                                     "header" : "Name",
699                                     "width" : 150,
700                                     "$ renderer" : "function(v) { return String.format('{0}', v); }",
701                                     "$ xns" : "Roo.grid",
702                                     "* prop" : "colModel[]",
703                                     "dataIndex" : "bom_item_id_item_name"
704                                 },
705                                 {
706                                     "xtype" : "ColumnModel",
707                                     "header" : "Description",
708                                     "width" : 150,
709                                     "$ renderer" : "function(v) { return String.format('{0}', v); }",
710                                     "$ xns" : "Roo.grid",
711                                     "* prop" : "colModel[]",
712                                     "dataIndex" : "bom_item_id_item_descrip"
713                                 },
714                                 {
715                                     "xtype" : "ColumnModel",
716                                     "header" : "Qty",
717                                     "width" : 100,
718                                     "$ renderer" : "function(v) { return String.format('{0}', v); }",
719                                     "$ xns" : "Roo.grid",
720                                     "* prop" : "colModel[]",
721                                     "dataIndex" : "bom_qtyper"
722                                 }
723                             ]
724                         }
725                     ]
726                 },
727                 {
728                     "listeners" : {
729                         "|activate" : "function() {\n    _this.panel = this;\n    \n    try { if (MODULE.isBuilder) {\n        return;\n    } } catch(e) { }\n    \n    var id = _this.form.findField('item_id').getValue() * 1;\n    if (id < 1) {\n        Roo.MessageBox.alert(\"Save First\", \"Save the item first, before adding image\");\n        _this.dialog.layout.getRegion('center').showPanel(0);\n        return;\n    }\n    \n    if (_this.grid) {\n        _this.grid.footer.onClick('first');\n    \n     }\n}"
730                     },
731                     "region" : "center",
732                     "fitToframe" : true,
733                     "background" : true,
734                     "title" : "Reference Files",
735                     "xtype" : "GridPanel",
736                     "fitContainer" : true,
737                     "$ xns" : "Roo",
738                     "tableName" : "Images",
739                     "items" : [
740                         {
741                             "listeners" : {
742                                 "|rowdblclick" : "function (_self, rowIndex, e)\n{\n  \n   var s =  _self.getDataSource().getAt(rowIndex);\n   new Pman.Download({\n        url : baseURL + '/Images/Download/' + s.data.id\n    });\n   \n}",
743                                 "|render" : "function() { \n    _this.grid = this; \n\n    if (_this.panel.active) {\n       this.footer.onClick('first');\n    }\n}"
744                             },
745                             "autoExpandColumn" : "id",
746                             "xtype" : "Grid",
747                             "loadMask" : true,
748                             "$ xns" : "Roo.grid",
749                             "* prop" : "grid",
750                             "items" : [
751                                 {
752                                     "listeners" : {
753                                         "beforeload" : "function (_self, o)\n{\n    o.params = o.params || {};\n    \n    var id = _this.form.findField('item_id').getValue();\n    \n    if(id * 1 < 1){\n        return false;\n    }\n    \n    o.params.onid = id;\n    o.params.ontable = 'item';\n    \n}"
754                                     },
755                                     "xtype" : "Store",
756                                     "remoteSort" : true,
757                                     "$ sortInfo" : "{ field: 'created' , direction: 'DESC' }",
758                                     "$ xns" : "Roo.data",
759                                     "* prop" : "dataSource",
760                                     "items" : [
761                                         {
762                                             "id" : "id",
763                                             "root" : "data",
764                                             "xtype" : "JsonReader",
765                                             "$ 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 H:i:s'\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]",
766                                             "$ xns" : "Roo.data",
767                                             "* prop" : "reader",
768                                             "totalProperty" : "total"
769                                         },
770                                         {
771                                             "$ url" : "baseURL + '/Roo/Images.php'",
772                                             "xtype" : "HttpProxy",
773                                             "method" : "GET",
774                                             "$ xns" : "Roo.data",
775                                             "* prop" : "proxy"
776                                         }
777                                     ]
778                                 },
779                                 {
780                                     "pageSize" : 25,
781                                     "xtype" : "PagingToolbar",
782                                     "emptyMsg" : "No Images found",
783                                     "$ xns" : "Roo",
784                                     "displayInfo" : true,
785                                     "displayMsg" : "Displaying Images  {0} - {1} of {2}",
786                                     "* prop" : "footer"
787                                 },
788                                 {
789                                     "xtype" : "Toolbar",
790                                     "$ xns" : "Roo",
791                                     "* prop" : "toolbar",
792                                     "items" : [
793                                         {
794                                             "listeners" : {
795                                                 "|click" : "function()\n{\n    Pman.Dialog.Image.show({\n        id : 0, \n        ontable: 'item',\n        onid: _this.form.findField('item_id').getValue() * 1,\n        imgtype : ''\n    }, function(data){\n        if (!data) { return; } \n        _this.grid.footer.onClick('first');\n    }); \n\n}       "
796                                             },
797                                             "text" : "Add",
798                                             "xtype" : "Button",
799                                             "cls" : "x-btn-text-icon",
800                                             "$ icon" : "Roo.rootURL + 'images/default/dd/drop-add.gif'",
801                                             "$ xns" : "Roo.Toolbar"
802                                         },
803                                         {
804                                             "listeners" : {
805                                                 "|click" : "function()\n{\n    Pman.genericDelete(_this, 'Images'); \n}\n        "
806                                             },
807                                             "text" : "Delete",
808                                             "xtype" : "Button",
809                                             "cls" : "x-btn-text-icon",
810                                             "$ icon" : "rootURL + '/Pman/templates/images/trash.gif'",
811                                             "$ xns" : "Roo.Toolbar"
812                                         }
813                                     ]
814                                 },
815                                 {
816                                     "xtype" : "ColumnModel",
817                                     "sortable" : true,
818                                     "header" : "Created",
819                                     "width" : 200,
820                                     "$ renderer" : "function(v,x,r) {\n       return String.format('{0}<br/><i>{1}</i><br/>{2}<br/><i>{3}x{4}</i>',\n            v.format('d/M/Y'), r.data.mimetype, r.data.filename,\n    r.data.width, r.data.height\n    ); \n}\n     ",
821                                     "$ xns" : "Roo.grid",
822                                     "* prop" : "colModel[]",
823                                     "dataIndex" : "created"
824                                 },
825                                 {
826                                     "xtype" : "ColumnModel",
827                                     "width" : 100,
828                                     "header" : "Image",
829                                     "$ renderer" : "function(v,x,r) { return String.format('<img src=\"{0}/Images/Thumb/100/{1}/{2}\" height=\"100\">', baseURL, v, r.data.filename); }",
830                                     "$ xns" : "Roo.grid",
831                                     "* prop" : "colModel[]",
832                                     "dataIndex" : "id"
833                                 }
834                             ]
835                         }
836                     ]
837                 },
838                 {
839                     "listeners" : {
840                         "|activate" : "function() {\n    _this.lpanel = this;\n    \n    try { if (MODULE.isBuilder) {\n        return;\n    } } catch(e) { }\n    \n    var id = _this.form.findField('item_id').getValue() * 1;\n    if (id < 1) {\n        Roo.MessageBox.alert(\"Save First\", \"Save the item first, before adding image\");\n        _this.dialog.layout.getRegion('center').showPanel(0);\n        return;\n    }\n    \n    if (_this.lgrid) {\n        _this.lgrid.footer.onClick('first');\n    \n     }\n}"
841                     },
842                     "region" : "center",
843                     "fitToframe" : true,
844                     "background" : true,
845                     "title" : "Price List",
846                     "xtype" : "GridPanel",
847                     "fitContainer" : true,
848                     "$ xns" : "Roo",
849                     "tableName" : "ipshead",
850                     "items" : [
851                         {
852                             "listeners" : {
853                                 "beforeedit" : "function (e)\n{\n    if(e.field != 'ipshead_ipsitem_price'){\n        return false;\n    }\n    \n}",
854                                 "|render" : "function() \n{\n    _this.lgrid = this; \n    //_this.dialog = Pman.Dialog.FILL_IN\n    if (_this.lpanel.active) {\n       this.footer.onClick('first');\n    }\n}",
855                                 "afteredit" : "function (e)\n{\n    if(e.originalValue == e.value){\n        return false;\n    }\n    \n    var id = _this.form.findField('item_id').getValue() * 1;\n    if(id < 1){\n        return false;\n    }\n    \n    new Pman.Request({\n        method : 'POST',\n        url : baseURL + '/Roo/ipsiteminfo',\n        mask : 'Saving',\n        params : {\n            ipsitem_ipshead_id : e.record.data.ipshead_id,\n            ipsitem_item_id : id,\n            ipsitem_price : e.record.data.ipshead_ipsitem_price,\n            ipsitem_id : e.record.data.ipshead_ipsitem_id\n        }\n    \n    });\n        \n         \n        \n        \n}"
856                             },
857                             "autoExpandColumn" : "ipshead_descrip",
858                             "xtype" : "EditorGrid",
859                             "loadMask" : true,
860                             "clicksToEdit" : 1,
861                             "$ xns" : "Roo.grid",
862                             "* prop" : "grid",
863                             "items" : [
864                                 {
865                                     "listeners" : {
866                                         "beforeload" : "function (_self, o)\n{\n   o.params = o.params || {};\n   \n   var id  = _this.form.findField('item_id').getValue() * 1;\n   if(id < 1){\n        return false;\n   }\n   \n   o.params._with_item = id;\n}"
867                                     },
868                                     "xtype" : "Store",
869                                     "remoteSort" : true,
870                                     "$ sortInfo" : "{ field : 'ipshead_id', direction: 'ASC' }",
871                                     "$ xns" : "Roo.data",
872                                     "* prop" : "dataSource",
873                                     "items" : [
874                                         {
875                                             "$ url" : "baseURL + '/Roo/ipshead.php'",
876                                             "method" : "GET",
877                                             "xtype" : "HttpProxy",
878                                             "$ xns" : "Roo.data",
879                                             "* prop" : "proxy"
880                                         },
881                                         {
882                                             "id" : "ipshead_id",
883                                             "root" : "data",
884                                             "xtype" : "JsonReader",
885                                             "$ fields" : "[\n    {\n        'name': 'ipshead_id',\n        'type': 'int'\n    },\n    {\n        'name': 'ipshead_name',\n        'type': 'string'\n    }\n]",
886                                             "$ xns" : "Roo.data",
887                                             "* prop" : "reader",
888                                             "totalProperty" : "total"
889                                         }
890                                     ]
891                                 },
892                                 {
893                                     "pageSize" : 50,
894                                     "xtype" : "PagingToolbar",
895                                     "emptyMsg" : "Nothing found",
896                                     "$ xns" : "Roo",
897                                     "displayMsg" : "Displaying records {0} - {1} of {2}",
898                                     "displayInfo" : true,
899                                     "* prop" : "footer"
900                                 },
901                                 {
902                                     "xtype" : "ColumnModel",
903                                     "width" : 150,
904                                     "header" : "Name",
905                                     "$ renderer" : "function(v) { return String.format('{0}', v); }",
906                                     "$ xns" : "Roo.grid",
907                                     "* prop" : "colModel[]",
908                                     "dataIndex" : "ipshead_name"
909                                 },
910                                 {
911                                     "xtype" : "ColumnModel",
912                                     "width" : 150,
913                                     "header" : "Description",
914                                     "$ renderer" : "function(v) { return String.format('{0}', v); }",
915                                     "$ xns" : "Roo.grid",
916                                     "* prop" : "colModel[]",
917                                     "dataIndex" : "ipshead_descrip"
918                                 },
919                                 {
920                                     "xtype" : "ColumnModel",
921                                     "width" : 100,
922                                     "header" : "Currency",
923                                     "$ renderer" : "function(v) { return String.format('{0}', v); }",
924                                     "$ xns" : "Roo.grid",
925                                     "* prop" : "colModel[]",
926                                     "dataIndex" : "ipshead_curr_id_curr_name"
927                                 },
928                                 {
929                                     "align" : "right",
930                                     "xtype" : "ColumnModel",
931                                     "header" : "Price",
932                                     "width" : 120,
933                                     "$ renderer" : "function(v) { return String.format('{0}', Roo.util.Format.number(v*1,2)); }",
934                                     "$ xns" : "Roo.grid",
935                                     "* prop" : "colModel[]",
936                                     "dataIndex" : "ipshead_ipsitem_price",
937                                     "items" : [
938                                         {
939                                             "xtype" : "GridEditor",
940                                             "$ xns" : "Roo.grid",
941                                             "* prop" : "editor",
942                                             "items" : [
943                                                 {
944                                                     "xtype" : "NumberField",
945                                                     "cls" : "align-right",
946                                                     "decimalPrecision" : 2,
947                                                     "$ xns" : "Roo.form",
948                                                     "* prop" : "field"
949                                                 }
950                                             ]
951                                         }
952                                     ]
953                                 }
954                             ]
955                         }
956                     ]
957                 },
958                 {
959                     "listeners" : {
960                         "|activate" : "function() {\n    _this.itemsrcpanel = this;\n    if (_this.itemsrcgrid) {\n        _this.itemsrcgrid.footer.onClick('first');\n    }\n}"
961                     },
962                     "region" : "center",
963                     "fitToframe" : true,
964                     "background" : true,
965                     "title" : "Suppliers",
966                     "xtype" : "GridPanel",
967                     "fitContainer" : true,
968                     "$ xns" : "Roo",
969                     "tableName" : "itemsrc",
970                     "items" : [
971                         {
972                             "listeners" : {
973                                 "|rowdblclick" : "function (_self, rowIndex, e)\n{\n    if (!_this.dialog) return;\n    _this.dialog.show( this.getDataSource().getAt(rowIndex).data, function() {\n        _this.grid.footer.onClick('first');\n    }); \n}\n",
974                                 "|render" : "function() \n{\n    _this.itemsrcgrid = this; \n    //_this.dialog = Pman.Dialog.FILL_IN\n    \n}",
975                                 "afteredit" : "function (e)\n{\n    e.record.commit();\n}"
976                             },
977                             "autoExpandColumn" : "itemsrc_comments",
978                             "xtype" : "EditorGrid",
979                             "loadMask" : true,
980                             "clicksToEdit" : 1,
981                             "$ xns" : "Roo.grid",
982                             "* prop" : "grid",
983                             "items" : [
984                                 {
985                                     "listeners" : {
986                                         "update" : "function (_self, record, operation)\n{\n    Roo.log(operation);\n      Roo.log(record);\n   \n    if (operation != 'commit') {\n        return;\n    }\n    if (record.data.itemsrc_vend_id * 1 < 1) {\n        return; // do not save.\n    }\n    if (record.data.itemsrc_id * 1 < 0) {\n        return; // do not save. -- updating at present...\n    }\n    \n    var p = Roo.apply({}, record.data);\n    record.set('itemsrc_id', -1);    \n    \n    new Pman.Request({\n        url : baseURL + '/Roo/Itemsrc',\n        params : p,\n        method : 'POST',\n        success: function(res) {\n            if (record.data.itemsrc_id *1  < 1) { \n                record.set('itemsrc_id', res.data.itemsrc_id);\n            }\n        }\n    });\n    \n    \n}",
987                                         "beforeload" : "function (_self, o)\n{\n    \n    var id = 1 * _this.form.findField('item_id').getValue();\n    if (!id) {\n        this.removeAll();\n        return false;\n    }\n    o.params.itemsrc_item_id = id;\n}"
988                                     },
989                                     "xtype" : "Store",
990                                     "remoteSort" : true,
991                                     "$ sortInfo" : "{ field : 'itemsrc_vend_id_vend_name', direction: 'ASC' }",
992                                     "$ xns" : "Roo.data",
993                                     "* prop" : "dataSource",
994                                     "items" : [
995                                         {
996                                             "$ url" : "baseURL + '/Roo/itemsrc.php'",
997                                             "xtype" : "HttpProxy",
998                                             "method" : "GET",
999                                             "$ xns" : "Roo.data",
1000                                             "* prop" : "proxy"
1001                                         },
1002                                         {
1003                                             "id" : "id",
1004                                             "root" : "data",
1005                                             "xtype" : "JsonReader",
1006                                             "$ xns" : "Roo.data",
1007                                             "$ fields" : "[\n    {\n        'name': 'itemsrc_id',\n        'type': 'int'\n    },\n    {\n        'name': 'itemsrc_item_id',\n        'type': 'int'\n    },\n    {\n        'name': 'itemsrc_item_id',\n        'type': 'int'\n    },\n    {\n        'name': 'itemsrc_vend_id',\n        'type': 'int'\n    },\n    {\n        'name': 'itemsrc_vend_id',\n        'type': 'int'\n    },\n    {\n        'name': 'itemsrc_vend_item_number',\n        'type': 'string'\n    },\n    {\n        'name': 'itemsrc_vend_item_descrip',\n        'type': 'string'\n    },\n    {\n        'name': 'itemsrc_comments',\n        'type': 'string'\n    },\n    {\n        'name': 'itemsrc_vend_uom',\n        'type': 'string'\n    },\n    {\n        'name': 'itemsrc_invvendoruomratio',\n        'type': 'float'\n    },\n    {\n        'name': 'itemsrc_minordqty',\n        'type': 'float'\n    },\n    {\n        'name': 'itemsrc_multordqty',\n        'type': 'float'\n    },\n    {\n        'name': 'itemsrc_leadtime',\n        'type': 'int'\n    },\n    {\n        'name': 'itemsrc_ranking',\n        'type': 'int'\n    },\n    {\n        'name': 'itemsrc_active',\n        'type': 'int'\n    },\n    {\n        'name': 'itemsrc_manuf_name',\n        'type': 'string'\n    },\n    {\n        'name': 'itemsrc_manuf_item_number',\n        'type': 'string'\n    },\n    {\n        'name': 'itemsrc_manuf_item_descrip',\n        'type': 'string'\n    },\n    {\n        'name': 'itemsrc_default',\n        'type': 'int'\n    },\n    {\n        'name': 'itemsrc_upccode',\n        'type': 'string'\n    }\n]",
1008                                             "* prop" : "reader",
1009                                             "totalProperty" : "total"
1010                                         }
1011                                     ]
1012                                 },
1013                                 {
1014                                     "pageSize" : 25,
1015                                     "xtype" : "PagingToolbar",
1016                                     "emptyMsg" : "No itemsrc found",
1017                                     "$ xns" : "Roo",
1018                                     "displayInfo" : true,
1019                                     "displayMsg" : "Displaying itemsrc{0} - {1} of {2}",
1020                                     "* prop" : "footer"
1021                                 },
1022                                 {
1023                                     "xtype" : "Toolbar",
1024                                     "$ xns" : "Roo",
1025                                     "* prop" : "toolbar",
1026                                     "items" : [
1027                                         {
1028                                             "listeners" : {
1029                                                 "|click" : "function()\n{\n     \n    Roo.log(\"add presed\");\n     \n    // work out last \n    var grid = _this.itemsrcgrid;\n     \n    // uses form defaults or last row value.\n    var nr = grid.ds.reader.newRow({\n             itemsrc_id : 0,\n        itemsrc_item_id : _this.form.findField('item_id').getValue(),\n\n         itemsrc_vend_id : 0,\n         itemsrc_vend_item_number : '',\n         itemsrc_vend_item_descrip : '',\n         itemsrc_comments           : '',\n         itemsrc_vend_uom  :           'EA',\n         itemsrc_invvendoruomratio : 1.0,\n         itemsrc_minordqty        : 0,\n         itemsrc_multordqty        : 0,\n         itemsrc_leadtime         :  30,\n         itemsrc_ranking         :   0,\n         itemsrc_active          :   true,\n         itemsrc_manuf_name       :  '',\n         itemsrc_manuf_item_number : '',\n         itemsrc_manuf_item_descrip: '',\n         itemsrc_default          : true,\n         itemsrc_upccode    : ''\n                        \n    });\n    grid.stopEditing();\n    grid.ds.insert(0, nr); \n    grid.startEditing(0, 0); // type..\n\n}\n \n"
1030                                             },
1031                                             "text" : "Add",
1032                                             "xtype" : "Button",
1033                                             "cls" : "x-btn-text-icon",
1034                                             "$ icon" : "Roo.rootURL + 'images/default/dd/drop-add.gif'",
1035                                             "$ xns" : "Roo.Toolbar"
1036                                         }
1037                                     ]
1038                                 },
1039                                 {
1040                                     "xtype" : "ColumnModel",
1041                                     "width" : 120,
1042                                     "header" : "Vendor",
1043                                     "$ renderer" : "function(v,x,r) { return String.format('{0}', r.data.itemsrc_vend_id_vend_name); }",
1044                                     "$ xns" : "Roo.grid",
1045                                     "* prop" : "colModel[]",
1046                                     "dataIndex" : "itemsrc_vend_id",
1047                                     "items" : [
1048                                         {
1049                                             "xtype" : "GridEditor",
1050                                             "$ xns" : "Roo.grid",
1051                                             "* prop" : "editor",
1052                                             "items" : [
1053                                                 {
1054                                                     "listWidth" : 400,
1055                                                     "triggerAction" : "all",
1056                                                     "forceSelection" : true,
1057                                                     "selectOnFocus" : true,
1058                                                     "pageSize" : 20,
1059                                                     "displayField" : "vend_name",
1060                                                     "emptyText" : "Select Vendor",
1061                                                     "hiddenName" : "itemsrc_vend_id",
1062                                                     "minChars" : 2,
1063                                                     "valueField" : "vend_id",
1064                                                     "xtype" : "ComboBox",
1065                                                     "allowBlank" : false,
1066                                                     "typeAhead" : true,
1067                                                     "editable" : true,
1068                                                     "width" : 300,
1069                                                     "$ xns" : "Roo.form",
1070                                                     "* prop" : "field",
1071                                                     "name" : "itemsrc_vend_id_vend_name",
1072                                                     "qtip" : "Select vendinfo",
1073                                                     "queryParam" : "q[search]",
1074                                                     "tpl" : "<div class=\"x-grid-cell-text x-btn button\"><b>{vend_name}</b> </div>",
1075                                                     "loadingText" : "Searching...",
1076                                                     "items" : [
1077                                                         {
1078                                                             "listeners" : {
1079                                                                 "|beforeload" : "function (_self, o){\n    o.params = o.params || {};\n    // set more here\n}\n"
1080                                                             },
1081                                                             "xtype" : "Store",
1082                                                             "remoteSort" : true,
1083                                                             "$ xns" : "Roo.data",
1084                                                             "$ sortInfo" : "{ direction : 'ASC', field: 'id' }",
1085                                                             "* prop" : "store",
1086                                                             "items" : [
1087                                                                 {
1088                                                                     "$ url" : "baseURL + '/Roo/vendinfo.php'",
1089                                                                     "xtype" : "HttpProxy",
1090                                                                     "method" : "GET",
1091                                                                     "$ xns" : "Roo.data",
1092                                                                     "* prop" : "proxy"
1093                                                                 },
1094                                                                 {
1095                                                                     "id" : "id",
1096                                                                     "root" : "data",
1097                                                                     "xtype" : "JsonReader",
1098                                                                     "$ xns" : "Roo.data",
1099                                                                     "$ fields" : "[{\"name\":\"id\",\"type\":\"int\"},{\"name\":\"vend_name\",\"type\":\"string\"}]",
1100                                                                     "* prop" : "reader",
1101                                                                     "totalProperty" : "total"
1102                                                                 }
1103                                                             ]
1104                                                         }
1105                                                     ]
1106                                                 }
1107                                             ]
1108                                         }
1109                                     ]
1110                                 },
1111                                 {
1112                                     "xtype" : "ColumnModel",
1113                                     "width" : 100,
1114                                     "header" : "Vendor Ref#",
1115                                     "$ renderer" : "function(v) { return String.format('{0}', v); }",
1116                                     "$ xns" : "Roo.grid",
1117                                     "* prop" : "colModel[]",
1118                                     "dataIndex" : "itemsrc_vend_item_number",
1119                                     "items" : [
1120                                         {
1121                                             "xtype" : "GridEditor",
1122                                             "$ xns" : "Roo.grid",
1123                                             "* prop" : "editor",
1124                                             "items" : [
1125                                                 {
1126                                                     "xtype" : "TextField",
1127                                                     "$ xns" : "Roo.form",
1128                                                     "* prop" : "field"
1129                                                 }
1130                                             ]
1131                                         }
1132                                     ]
1133                                 },
1134                                 {
1135                                     "xtype" : "ColumnModel",
1136                                     "width" : 200,
1137                                     "header" : "Comments",
1138                                     "$ renderer" : "function(v) { return String.format('{0}', v); }",
1139                                     "$ xns" : "Roo.grid",
1140                                     "* prop" : "colModel[]",
1141                                     "dataIndex" : "itemsrc_comments",
1142                                     "items" : [
1143                                         {
1144                                             "xtype" : "GridEditor",
1145                                             "$ xns" : "Roo.grid",
1146                                             "* prop" : "editor",
1147                                             "items" : [
1148                                                 {
1149                                                     "xtype" : "TextField",
1150                                                     "$ xns" : "Roo.form",
1151                                                     "* prop" : "field"
1152                                                 }
1153                                             ]
1154                                         }
1155                                     ]
1156                                 },
1157                                 {
1158                                     "xtype" : "ColumnModel",
1159                                     "width" : 50,
1160                                     "header" : "UOM",
1161                                     "$ renderer" : "function(v) { return String.format('{0}', v); }",
1162                                     "$ xns" : "Roo.grid",
1163                                     "* prop" : "colModel[]",
1164                                     "dataIndex" : "itemsrc_vend_uom"
1165                                 },
1166                                 {
1167                                     "align" : "right",
1168                                     "xtype" : "ColumnModel",
1169                                     "header" : "Min Qty",
1170                                     "width" : 50,
1171                                     "$ renderer" : "function(v) { return String.format('{0}', v); }",
1172                                     "$ xns" : "Roo.grid",
1173                                     "* prop" : "colModel[]",
1174                                     "dataIndex" : "itemsrc_minordqty",
1175                                     "items" : [
1176                                         {
1177                                             "xtype" : "GridEditor",
1178                                             "$ xns" : "Roo.grid",
1179                                             "* prop" : "editor",
1180                                             "items" : [
1181                                                 {
1182                                                     "minValue" : 0,
1183                                                     "xtype" : "NumberField",
1184                                                     "decimalPrecision" : 0,
1185                                                     "$ xns" : "Roo.form",
1186                                                     "* prop" : "field"
1187                                                 }
1188                                             ]
1189                                         }
1190                                     ]
1191                                 },
1192                                 {
1193                                     "align" : "right",
1194                                     "xtype" : "ColumnModel",
1195                                     "header" : "Lead time",
1196                                     "width" : 75,
1197                                     "$ renderer" : "function(v) { return String.format('{0}', v); }",
1198                                     "$ xns" : "Roo.grid",
1199                                     "* prop" : "colModel[]",
1200                                     "dataIndex" : "itemsrc_leadtime",
1201                                     "items" : [
1202                                         {
1203                                             "xtype" : "GridEditor",
1204                                             "$ xns" : "Roo.grid",
1205                                             "* prop" : "editor",
1206                                             "items" : [
1207                                                 {
1208                                                     "minValue" : 0,
1209                                                     "xtype" : "NumberField",
1210                                                     "decimalPrecision" : 0,
1211                                                     "$ xns" : "Roo.form",
1212                                                     "* prop" : "field"
1213                                                 }
1214                                             ]
1215                                         }
1216                                     ]
1217                                 },
1218                                 {
1219                                     "xtype" : "ColumnModel",
1220                                     "width" : 50,
1221                                     "header" : "Active",
1222                                     "$ renderer" : "function(v) { return String.format('{0}', v); }",
1223                                     "$ xns" : "Roo.grid",
1224                                     "* prop" : "colModel[]",
1225                                     "dataIndex" : "itemsrc_active"
1226                                 }
1227                             ]
1228                         }
1229                     ]
1230                 },
1231                 {
1232                     "listeners" : {
1233                         "|activate" : "function() {\n    _this.hpanel = this;\n    if (_this.hgrid) {\n        _this.hgrid.footer.onClick('first');\n    }\n}"
1234                     },
1235                     "region" : "center",
1236                     "fitToframe" : true,
1237                     "background" : true,
1238                     "title" : "History",
1239                     "xtype" : "GridPanel",
1240                     "fitContainer" : true,
1241                     "$ xns" : "Roo",
1242                     "tableName" : "events",
1243                     "items" : [
1244                         {
1245                             "listeners" : {
1246                                 "|render" : "function() \n{\n    _this.hgrid = this; \n    if (_this.hpanel.active) {\n       this.footer.onClick('first');\n    }\n}"
1247                             },
1248                             "autoExpandColumn" : "remarks",
1249                             "xtype" : "Grid",
1250                             "loadMask" : true,
1251                             "$ xns" : "Roo.grid",
1252                             "* prop" : "grid",
1253                             "items" : [
1254                                 {
1255                                     "listeners" : {
1256                                         "beforeload" : "function (_self, options)\n{\n    options.params = options.params || {};\n    \n    options.params.on_table = 'item';\n    options.params.on_id = _this.form.findField('item_id').getValue();\n}"
1257                                     },
1258                                     "xtype" : "Store",
1259                                     "remoteSort" : true,
1260                                     "$ sortInfo" : "{ field : 'event_when', direction: 'DESC' }",
1261                                     "$ xns" : "Roo.data",
1262                                     "* prop" : "dataSource",
1263                                     "items" : [
1264                                         {
1265                                             "$ url" : "baseURL + '/Roo/events.php'",
1266                                             "method" : "GET",
1267                                             "xtype" : "HttpProxy",
1268                                             "$ xns" : "Roo.data",
1269                                             "* prop" : "proxy"
1270                                         },
1271                                         {
1272                                             "id" : "id",
1273                                             "root" : "data",
1274                                             "xtype" : "JsonReader",
1275                                             "$ fields" : "[\n    {\n        'name': 'event_when',\n        'type': 'date'\n    },\n    {\n        'name': 'action',\n        'type': 'string'\n    },\n    {\n        'name': 'ipaddr',\n        'type': 'string'\n    },\n    {\n        'name': 'person_id_name',\n        'type': 'string'\n    },\n    {\n        'name': 'remarks',\n        'type': 'string'\n    }\n]",
1276                                             "$ xns" : "Roo.data",
1277                                             "* prop" : "reader",
1278                                             "totalProperty" : "total"
1279                                         }
1280                                     ]
1281                                 },
1282                                 {
1283                                     "pageSize" : 25,
1284                                     "xtype" : "PagingToolbar",
1285                                     "emptyMsg" : "No Events found",
1286                                     "$ xns" : "Roo",
1287                                     "displayMsg" : "Displaying events{0} - {1} of {2}",
1288                                     "displayInfo" : true,
1289                                     "* prop" : "footer"
1290                                 },
1291                                 {
1292                                     "xtype" : "ColumnModel",
1293                                     "width" : 120,
1294                                     "header" : "Changed",
1295                                     "$ renderer" : "function(v) { return String.format('{0}', v ? v.format('d/M/Y H:i:s') : ''); }",
1296                                     "$ xns" : "Roo.grid",
1297                                     "* prop" : "colModel[]",
1298                                     "dataIndex" : "event_when"
1299                                 },
1300                                 {
1301                                     "xtype" : "ColumnModel",
1302                                     "width" : 200,
1303                                     "header" : "Action",
1304                                     "$ renderer" : "function(v,x,r) { return String.format('{0} - {1}', v, r.data.on_table); }",
1305                                     "$ xns" : "Roo.grid",
1306                                     "* prop" : "colModel[]",
1307                                     "dataIndex" : "action"
1308                                 },
1309                                 {
1310                                     "xtype" : "ColumnModel",
1311                                     "width" : 200,
1312                                     "header" : "IP Address",
1313                                     "$ renderer" : "function(v) { return String.format('{0}', v); }",
1314                                     "$ xns" : "Roo.grid",
1315                                     "* prop" : "colModel[]",
1316                                     "dataIndex" : "ipaddr"
1317                                 },
1318                                 {
1319                                     "xtype" : "ColumnModel",
1320                                     "width" : 75,
1321                                     "header" : "Who",
1322                                     "$ renderer" : "function(v) { return String.format('{0}', v); }",
1323                                     "$ xns" : "Roo.grid",
1324                                     "* prop" : "colModel[]",
1325                                     "dataIndex" : "person_id_name"
1326                                 },
1327                                 {
1328                                     "xtype" : "ColumnModel",
1329                                     "width" : 200,
1330                                     "header" : "Notes",
1331                                     "$ renderer" : "function(v) { return String.format('{0}', v); }",
1332                                     "$ xns" : "Roo.grid",
1333                                     "* prop" : "colModel[]",
1334                                     "dataIndex" : "remarks"
1335                                 }
1336                             ]
1337                         }
1338                     ]
1339                 },
1340                 {
1341                     "listeners" : {
1342                         "click" : "function (_self, e)\n{\n    _this.dialog.hide();\n}"
1343                     },
1344                     "text" : "Cancel",
1345                     "xtype" : "Button",
1346                     "$ xns" : "Roo",
1347                     "* prop" : "buttons[]"
1348                 },
1349                 {
1350                     "listeners" : {
1351                         "render" : "function (_self)\n{\n    _this.saveBtn = this;\n}",
1352                         "click" : "function (_self, e)\n{\n    // do some checks?\n     \n    \n  //  _this.dialog.el.mask(\"Saving\");\n    _this.form.doAction(\"submit\");\n\n}"
1353                     },
1354                     "text" : "Save",
1355                     "xtype" : "Button",
1356                     "$ xns" : "Roo",
1357                     "* prop" : "buttons[]"
1358                 }
1359             ]
1360         }
1361     ]
1362 }