Pman.Tab.AdminCompanies.js
[Pman.Admin] / Pman.Tab.AdminCompanies.js
1 //<script type="text/javascript">
2
3 // Auto generated file - created by app.Builder.js- do not edit directly (at present!)
4
5
6
7 // register the module first
8 Pman.on('beforeload', function()
9 {
10     Pman.register({
11         modKey : '001-Pman.Tab.AdminCompanies',
12         module : Pman.Tab.AdminCompanies,
13         region : 'center',
14         parent : false,
15         name : "unnamed module",
16         disabled : false, 
17         permname: '' 
18     });
19 });
20
21 Pman.Tab.AdminCompanies = new Roo.util.Observable({
22
23     panel : false,
24     disabled : false,
25     parentLayout:  false,
26
27     add : function(parentLayout, region)
28     {
29
30         var _this = this;
31         this.parentLayout = parentLayout;
32
33         this.panel = parentLayout.addxtype({
34             xtype: 'GridPanel',
35             xns: Roo,
36             title : "Companies",
37             fitToframe : true,
38             fitContainer : true,
39             tableName : 'Companies',
40             background : true,
41             region : 'center',
42             listeners : {
43                 activate : function() {
44                     _this.panel = this;
45                     if (_this.grid) {
46                         _this.grid.footer.onClick('first');
47                     }
48                 }
49             },
50             grid : {
51                 xtype: 'Grid',
52                 xns: Roo.grid,
53                 listeners : {
54                     render : function() 
55                     {
56                         _this.grid = this; 
57                         //_this.dialog = Pman.Dialog.FILL_IN
58                         if (_this.panel.active) {
59                            this.footer.onClick('first');
60                         }
61                     },
62                     rowdblclick : function (_self, rowIndex, e)
63                     {
64                         if (!_this.dialog) return;
65                         _this.dialog.show( this.getDataSource().getAt(rowIndex), function() {
66                             _this.grid.footer.onClick('first');
67                         }); 
68                     }
69                 },
70                 autoExpandColumn : 'name',
71                 loadMask : true,
72                 dataSource : {
73                     xtype: 'Store',
74                     xns: Roo.data,
75                     listeners : {
76                         load : function (_self, records, options)
77                         {
78                            try {
79                                 Pman.Tab.Office.grid.footer.onClick('refresh');
80                             } catch (e) {}
81                         }
82                     },
83                     remoteSort : true,
84                     sortInfo : { field : 'code', direction: 'ASC' },
85                     proxy : {
86                         xtype: 'HttpProxy',
87                         xns: Roo.data,
88                         listeners : {
89                             load : function (This, o, arg)
90                             {
91                              
92                             }
93                         },
94                         method : 'GET',
95                         url : baseURL + '/Roo/Companies.php'
96                     },
97                     reader : {
98                         xtype: 'JsonReader',
99                         xns: Roo.data,
100                         totalProperty : 'total',
101                         root : 'data',
102                         id : 'id',
103                         fields : [
104                             {
105                                 'name': 'code',
106                                 'type': 'string'
107                             },
108                             {
109                                 'name': 'name',
110                                 'type': 'string'
111                             },
112                             {
113                                 'name': 'remarks',
114                                 'type': 'string'
115                             },
116                             {
117                                 'name': 'owner_id',
118                                 'type': 'int'
119                             },
120                             {
121                                 'name': 'address',
122                                 'type': 'string'
123                             },
124                             {
125                                 'name': 'tel',
126                                 'type': 'string'
127                             },
128                             {
129                                 'name': 'fax',
130                                 'type': 'string'
131                             },
132                             {
133                                 'name': 'email',
134                                 'type': 'string'
135                             },
136                             {
137                                 'name': 'id',
138                                 'type': 'int'
139                             },
140                             {
141                                 'name': 'isOwner',
142                                 'type': 'int'
143                             },
144                             {
145                                 'name': 'logo_id',
146                                 'type': 'int'
147                             },
148                             {
149                                 'name': 'background_color',
150                                 'type': 'string'
151                             },
152                             {
153                                 'name': 'comptype',
154                                 'type': 'string'
155                             },
156                             {
157                                 'name': 'url',
158                                 'type': 'string'
159                             },
160                             {
161                                 'name': 'main_office_id',
162                                 'type': 'int'
163                             },
164                             {
165                                 'name': 'created_by',
166                                 'type': 'int'
167                             },
168                             {
169                                 'name': 'created_dt',
170                                 'type': 'date',
171                                 'dateFormat': 'Y-m-d'
172                             },
173                             {
174                                 'name': 'updated_by',
175                                 'type': 'int'
176                             },
177                             {
178                                 'name': 'updated_dt',
179                                 'type': 'date',
180                                 'dateFormat': 'Y-m-d'
181                             },
182                             {
183                                 'name': 'passwd',
184                                 'type': 'string'
185                             },
186                             {
187                                 'name': 'dispatch_port',
188                                 'type': 'string'
189                             },
190                             {
191                                 'name': 'province',
192                                 'type': 'string'
193                             },
194                             {
195                                 'name': 'country',
196                                 'type': 'string'
197                             },
198                             {
199                                 'name': 'logo_id_id',
200                                 'type': 'int'
201                             },
202                             {
203                                 'name': 'logo_id_filename',
204                                 'type': 'string'
205                             },
206                             {
207                                 'name': 'logo_id_ontable',
208                                 'type': 'string'
209                             },
210                             {
211                                 'name': 'logo_id_onid',
212                                 'type': 'int'
213                             },
214                             {
215                                 'name': 'logo_id_mimetype',
216                                 'type': 'string'
217                             },
218                             {
219                                 'name': 'logo_id_width',
220                                 'type': 'int'
221                             },
222                             {
223                                 'name': 'logo_id_height',
224                                 'type': 'int'
225                             },
226                             {
227                                 'name': 'logo_id_filesize',
228                                 'type': 'int'
229                             },
230                             {
231                                 'name': 'logo_id_displayorder',
232                                 'type': 'int'
233                             },
234                             {
235                                 'name': 'logo_id_language',
236                                 'type': 'string'
237                             },
238                             {
239                                 'name': 'logo_id_parent_image_id',
240                                 'type': 'int'
241                             },
242                             {
243                                 'name': 'logo_id_created',
244                                 'type': 'date'
245                             },
246                             {
247                                 'name': 'logo_id_imgtype',
248                                 'type': 'string'
249                             },
250                             {
251                                 'name': 'logo_id_linkurl',
252                                 'type': 'string'
253                             },
254                             {
255                                 'name': 'logo_id_descript',
256                                 'type': 'string'
257                             },
258                             {
259                                 'name': 'logo_id_title',
260                                 'type': 'string'
261                             },
262                             {
263                                 'name': 'owner_id_id',
264                                 'type': 'int'
265                             },
266                             {
267                                 'name': 'owner_id_office_id',
268                                 'type': 'int'
269                             },
270                             {
271                                 'name': 'owner_id_name',
272                                 'type': 'string'
273                             },
274                             {
275                                 'name': 'owner_id_phone',
276                                 'type': 'string'
277                             },
278                             {
279                                 'name': 'owner_id_fax',
280                                 'type': 'string'
281                             },
282                             {
283                                 'name': 'owner_id_email',
284                                 'type': 'string'
285                             },
286                             {
287                                 'name': 'owner_id_company_id',
288                                 'type': 'int'
289                             },
290                             {
291                                 'name': 'owner_id_role',
292                                 'type': 'string'
293                             },
294                             {
295                                 'name': 'owner_id_active',
296                                 'type': 'int'
297                             },
298                             {
299                                 'name': 'owner_id_remarks',
300                                 'type': 'string'
301                             },
302                             {
303                                 'name': 'owner_id_passwd',
304                                 'type': 'string'
305                             },
306                             {
307                                 'name': 'owner_id_owner_id',
308                                 'type': 'int'
309                             },
310                             {
311                                 'name': 'owner_id_lang',
312                                 'type': 'string'
313                             },
314                             {
315                                 'name': 'owner_id_no_reset_sent',
316                                 'type': 'int'
317                             },
318                             {
319                                 'name': 'owner_id_action_type',
320                                 'type': 'string'
321                             },
322                             {
323                                 'name': 'owner_id_project_id',
324                                 'type': 'int'
325                             },
326                             {
327                                 'name': 'owner_id_deleted_by',
328                                 'type': 'int'
329                             },
330                             {
331                                 'name': 'owner_id_deleted_dt',
332                                 'type': 'date'
333                             },
334                             {
335                                 'name': 'main_office_id_id',
336                                 'type': 'int'
337                             },
338                             {
339                                 'name': 'main_office_id_company_id',
340                                 'type': 'int'
341                             },
342                             {
343                                 'name': 'main_office_id_name',
344                                 'type': 'string'
345                             },
346                             {
347                                 'name': 'main_office_id_address',
348                                 'type': 'string'
349                             },
350                             {
351                                 'name': 'main_office_id_phone',
352                                 'type': 'string'
353                             },
354                             {
355                                 'name': 'main_office_id_fax',
356                                 'type': 'string'
357                             },
358                             {
359                                 'name': 'main_office_id_email',
360                                 'type': 'string'
361                             },
362                             {
363                                 'name': 'main_office_id_role',
364                                 'type': 'string'
365                             }
366                         ]
367                     }
368                 },
369                 footer : {
370                     xtype: 'PagingToolbar',
371                     xns: Roo,
372                     pageSize : 25,
373                     displayInfo : true,
374                     displayMsg : 'Displaying Companies{0} - {1} of {2}',
375                     emptyMsg : 'No Companies found'
376                 },
377                 toolbar : {
378                     xtype: 'Toolbar',
379                     xns: Roo,
380                     items : [
381                         {
382                             xtype: 'Button',
383                             xns: Roo.Toolbar,
384                             text : "Add",
385                             cls : 'x-btn-text-icon',
386                             icon : Roo.rootURL + 'images/default/dd/drop-add.gif',
387                             listeners : {
388                                 click : function()
389                                 {
390                                     if (!_this.dialog) return;
391                                     _this.dialog.show( { id : 0 } , function() {
392                                         _this.grid.footer.onClick('first');
393                                    }); 
394                                 }
395                             }
396                         },
397                         {
398                             xtype: 'Button',
399                             xns: Roo.Toolbar,
400                             text : "Edit",
401                             cls : 'x-btn-text-icon',
402                             icon : Roo.rootURL + 'images/default/tree/leaf.gif',
403                             listeners : {
404                                 click : function()
405                                 {
406                                     var s = _this.grid.getSelectionModel().getSelections();
407                                     if (!s.length || (s.length > 1))  {
408                                         Roo.MessageBox.alert("Error", s.length ? "Select only one Row" : "Select a Row");
409                                         return;
410                                     }
411                                     if (!_this.dialog) return;
412                                     _this.dialog.show(s[0].data, function() {
413                                         _this.grid.footer.onClick('first');
414                                     }); 
415                                     
416                                 }
417                             }
418                         },
419                         {
420                             xtype: 'Button',
421                             xns: Roo.Toolbar,
422                             text : "Delete",
423                             cls : 'x-btn-text-icon',
424                             icon : rootURL + '/Pman/templates/images/trash.gif',
425                             listeners : {
426                                 click : function()
427                                 {
428                                      Pman.genericDelete(_this, 'Companies'); 
429                                 }
430                             }
431                         }
432                     ]
433                 },
434                 colModel : [
435                     {
436                         xtype: 'ColumnModel',
437                         xns: Roo.grid,
438                         dataIndex : 'comptype',
439                         header : 'Type',
440                         sortable : true,
441                         width : 90,
442                         renderer : function (v,x ,r) {
443                             return Pman.Dialog.Companies.comptypeListToString(r.data.isOwner ? 'OWNER' : v);
444                         }
445                     },
446                     {
447                         xtype: 'ColumnModel',
448                         xns: Roo.grid,
449                         dataIndex : 'code',
450                         header : 'Ref#',
451                         width : 50,
452                         renderer : function(v) { return String.format('{0}', v); }
453                     },
454                     {
455                         xtype: 'ColumnModel',
456                         xns: Roo.grid,
457                         dataIndex : 'name',
458                         header : 'Name',
459                         width : 200,
460                         renderer : function(v,x,r) {
461                             return String.format(r.data.isOwner ? '<B>{0}</B>' : '{0}',v);    
462                         }
463                     },
464                     {
465                         xtype: 'ColumnModel',
466                         xns: Roo.grid,
467                         header : 'Remarks',
468                         width : 200,
469                         dataIndex : 'remarks',
470                         renderer : function(v) { return String.format('{0}', v); }
471                     },
472                     {
473                         xtype: 'ColumnModel',
474                         xns: Roo.grid,
475                         header : 'Owner',
476                         width : 75,
477                         dataIndex : 'owner_id',
478                         renderer : function(v) { return String.format('{0}', v); }
479                     },
480                     {
481                         xtype: 'ColumnModel',
482                         xns: Roo.grid,
483                         header : 'Address',
484                         width : 200,
485                         dataIndex : 'address',
486                         renderer : function(v) { return String.format('{0}', v); }
487                     },
488                     {
489                         xtype: 'ColumnModel',
490                         xns: Roo.grid,
491                         header : 'Tel',
492                         width : 200,
493                         dataIndex : 'tel',
494                         renderer : function(v) { return String.format('{0}', v); }
495                     },
496                     {
497                         xtype: 'ColumnModel',
498                         xns: Roo.grid,
499                         header : 'Fax',
500                         width : 200,
501                         dataIndex : 'fax',
502                         renderer : function(v) { return String.format('{0}', v); }
503                     },
504                     {
505                         xtype: 'ColumnModel',
506                         xns: Roo.grid,
507                         header : 'Email',
508                         width : 200,
509                         dataIndex : 'email',
510                         renderer : function(v) { return String.format('{0}', v); }
511                     },
512                     {
513                         xtype: 'ColumnModel',
514                         xns: Roo.grid,
515                         header : 'Id',
516                         width : 75,
517                         dataIndex : 'id',
518                         renderer : function(v) { return String.format('{0}', v); }
519                     },
520                     {
521                         xtype: 'ColumnModel',
522                         xns: Roo.grid,
523                         header : 'IsOwner',
524                         width : 75,
525                         dataIndex : 'isOwner',
526                         renderer : function(v) { return String.format('{0}', v); }
527                     },
528                     {
529                         xtype: 'ColumnModel',
530                         xns: Roo.grid,
531                         header : 'Logo',
532                         width : 75,
533                         dataIndex : 'logo_id',
534                         renderer : function(v) { return String.format('{0}', v); }
535                     },
536                     {
537                         xtype: 'ColumnModel',
538                         xns: Roo.grid,
539                         header : 'Background color',
540                         width : 200,
541                         dataIndex : 'background_color',
542                         renderer : function(v) { return String.format('{0}', v); }
543                     },
544                     {
545                         xtype: 'ColumnModel',
546                         xns: Roo.grid,
547                         header : 'Comptype',
548                         width : 200,
549                         dataIndex : 'comptype',
550                         renderer : function(v) { return String.format('{0}', v); }
551                     },
552                     {
553                         xtype: 'ColumnModel',
554                         xns: Roo.grid,
555                         header : 'Url',
556                         width : 200,
557                         dataIndex : 'url',
558                         renderer : function(v) { return String.format('{0}', v); }
559                     },
560                     {
561                         xtype: 'ColumnModel',
562                         xns: Roo.grid,
563                         header : 'Main office',
564                         width : 75,
565                         dataIndex : 'main_office_id',
566                         renderer : function(v) { return String.format('{0}', v); }
567                     },
568                     {
569                         xtype: 'ColumnModel',
570                         xns: Roo.grid,
571                         header : 'Created by',
572                         width : 75,
573                         dataIndex : 'created_by',
574                         renderer : function(v) { return String.format('{0}', v); }
575                     },
576                     {
577                         xtype: 'ColumnModel',
578                         xns: Roo.grid,
579                         header : 'Created dt',
580                         width : 75,
581                         dataIndex : 'created_dt',
582                         renderer : function(v) { return String.format('{0}', v ? v.format('d/M/Y') : ''); }
583                     },
584                     {
585                         xtype: 'ColumnModel',
586                         xns: Roo.grid,
587                         header : 'Updated by',
588                         width : 75,
589                         dataIndex : 'updated_by',
590                         renderer : function(v) { return String.format('{0}', v); }
591                     },
592                     {
593                         xtype: 'ColumnModel',
594                         xns: Roo.grid,
595                         header : 'Updated dt',
596                         width : 75,
597                         dataIndex : 'updated_dt',
598                         renderer : function(v) { return String.format('{0}', v ? v.format('d/M/Y') : ''); }
599                     },
600                     {
601                         xtype: 'ColumnModel',
602                         xns: Roo.grid,
603                         header : 'Passwd',
604                         width : 200,
605                         dataIndex : 'passwd',
606                         renderer : function(v) { return String.format('{0}', v); }
607                     },
608                     {
609                         xtype: 'ColumnModel',
610                         xns: Roo.grid,
611                         header : 'Dispatch port',
612                         width : 200,
613                         dataIndex : 'dispatch_port',
614                         renderer : function(v) { return String.format('{0}', v); }
615                     },
616                     {
617                         xtype: 'ColumnModel',
618                         xns: Roo.grid,
619                         header : 'Province',
620                         width : 200,
621                         dataIndex : 'province',
622                         renderer : function(v) { return String.format('{0}', v); }
623                     },
624                     {
625                         xtype: 'ColumnModel',
626                         xns: Roo.grid,
627                         header : 'Country',
628                         width : 200,
629                         dataIndex : 'country',
630                         renderer : function(v) { return String.format('{0}', v); }
631                     }
632                 ]
633             }
634         });
635         this.layout = this.panel.layout;
636
637     }
638 });