1 //<script type="text/javascript">
3 // Auto generated file - created by app.Builder.js- do not edit directly (at present!)
5 Roo.namespace('Pman.Tab');
7 Pman.Tab.AdminContacts = new Roo.XComponent({
10 '99b344c8ae43e3e7213862b8f35c4e51' :"Select Company",
11 '1c76cbfe21c6f44c1d1e59d54f3e4420' :"Company",
12 'ce8ae9da5b7cd6c3df2929543a9af92d' :"Email",
13 '8444e81d652b084d70c71cd7d19ac0cf' :"Displaying Person{0} - {1} of {2}",
14 '13348442cc6a27032d2b4aa28b75a5d3' :"Search",
15 'ec211f7c20af43e742bf2570c3cb84f9' :"Add",
16 '9e727fdd3aec8274f46685441900280d' :"Project",
17 '7dce122004969d56ae2e0245cb754d35' :"Edit",
18 '4110db87ce3ac86d603d03d691616b1e' :"Drag person to add or remove from group",
19 'b47a519aebda8fdb4b59bdae6eb2bff0' :"Show No Company",
20 '1243daf593fa297e07ab03bf06d925af' :"Searching...",
21 'bcc254b55c4a1babdf1dcb82c207506b' :"Phone",
22 '9675747b5ab12d05f18518761e68a533' :"Select Companies",
23 '40bed7cf9b3d4bb3a3d7a7e3eb18c5eb' :"Person",
24 'f1174ecbbc232f948717979daf04cf08' :"No Person found",
25 'ec3249f16ee5880d4c1acb752e5c925f' :"Switch to Selected User",
26 'a93806efd0cc7a149f0f03e2b9a0f862' :"Bulk Add",
27 'f2a6c498fb90ee345d997f888fce3b18' :"Delete",
28 'a1fa27779242b4902f7ae3bdd5c6d508' :"Type",
29 '49ee3087348e8d44e1feda1917443987' :"Name",
30 'bbbabdbe1b262f75d99d62880b953be1' :"Role",
31 '4d3d769b812b6faa6b76e1a8abaece2d' :"Active",
32 'd4d25ad0a12e8d30e9d8d35230f6d1d3' :"Show Removed",
33 '9810aa2b9f44401be4bf73188ef2b67d' :"Fax"
36 part : ["Admin", "Contacts" ],
37 order : '001-Pman.Tab.AdminContacts',
39 parent : 'Pman.Tab.AdminContactsManager',
40 name : "Pman.Tab.AdminContacts",
42 permname : 'Core.Person',
54 title : _this._strings['40bed7cf9b3d4bb3a3d7a7e3eb18c5eb'] /* Person */,
59 activate : function() {
62 _this.grid.footer.onClick('first');
67 autoExpandColumn : 'name',
75 cellclick : function (_self, rowIndex, columnIndex, e)
78 var di = this.colModel.getDataIndex(columnIndex);
83 var rec = _this.grid.ds.getAt(rowIndex);
85 rec.set('active', rec.data.active ? 0 : 1);
94 _this.dialog = Pman.Dialog.PersonEdit;
97 //_this.dialog = Pman.Dialog.FILL_IN
98 if (_this.panel.active) {
99 this.footer.onClick('first');
102 rowdblclick : function (_self, rowIndex, e)
107 _this.dialog.show( this.getDataSource().getAt(rowIndex), function() {
108 _this.grid.footer.onClick('first');
114 displayMsg : _this._strings['8444e81d652b084d70c71cd7d19ac0cf'] /* Displaying Person{0} - {1} of {2} */,
115 emptyMsg : _this._strings['f1174ecbbc232f948717979daf04cf08'] /* No Person found */,
119 xtype : 'PagingToolbar',
122 text : _this._strings['4110db87ce3ac86d603d03d691616b1e'] /* Drag person to add or remove from group */,
124 '|xns' : 'Roo.Toolbar',
135 text : _this._strings['13348442cc6a27032d2b4aa28b75a5d3'] /* Search */,
137 '|xns' : 'Roo.Toolbar',
145 render : function (_self)
147 _this.searchBox = _self;
149 show : function (_self,e)
151 if (e.getCharCode() != 13) {
154 _this.grid.footer.onClick('first');
156 specialkey : function (_self, e)
158 if (e.getKey() == 13) {
159 _this.grid.footer.onClick('first');
165 displayField : 'name',
167 emptyText : _this._strings['99b344c8ae43e3e7213862b8f35c4e51'] /* Select Company */,
168 forceSelection : true,
169 hiddenName : 'company_id',
171 loadingText : _this._strings['1243daf593fa297e07ab03bf06d925af'] /* Searching... */,
173 name : 'company_name',
175 qtip : _this._strings['9675747b5ab12d05f18518761e68a533'] /* Select Companies */,
176 queryParam : 'query[name]',
177 selectOnFocus : true,
178 tpl : '<div class=\"x-grid-cell-text x-btn button\"><b>{name}</b> </div>',
179 triggerAction : 'all',
187 render : function (_self)
189 _this.companyCombo = _self;
191 select : function (combo, record, index)
193 _this.grid.footer.onClick.defer(300,_this.grid.footer,[ 'first'] );
198 sortInfo : { direction : 'ASC', field: 'name' },
203 beforeload : function (_self, o){
204 o.params = o.params || {};
210 url : baseURL + '/Roo/Companies.php',
216 fields : [{"name":"id","type":"int"},{"name":"code","type":"string"}],
219 totalProperty : 'total',
228 icon : rootURL + '/Pman/templates/images/search.gif',
230 '|xns' : 'Roo.Toolbar',
233 click : function (_self, e)
235 _this.grid.footer.onClick('first');
241 icon : rootURL + '/Pman/templates/images/edit-clear.gif',
243 '|xns' : 'Roo.Toolbar',
246 click : function (_self, e)
248 _this.searchBox.setValue('');
249 _this.grid.footer.onClick('first');
255 text : _this._strings['d4d25ad0a12e8d30e9d8d35230f6d1d3'] /* Show Removed */,
257 '|xns' : 'Roo.Toolbar',
260 render : function (_self)
262 _this.activeButton = _self;
264 toggle : function (_self, pressed)
266 _this.grid.footer.onClick('first');
267 this.setText(pressed ? "Show Active" : "Show Removed");
275 text : _this._strings['b47a519aebda8fdb4b59bdae6eb2bff0'] /* Show No Company */,
277 '|xns' : 'Roo.Toolbar',
280 render : function (_self)
282 _this.active_company_button = _self;
284 toggle : function (_self, pressed)
286 _this.grid.footer.onClick('first');
287 this.setText(pressed ? "Show Company" : "Show No Company");
294 text : _this._strings['ec3249f16ee5880d4c1acb752e5c925f'] /* Switch to Selected User */,
296 '|xns' : 'Roo.Toolbar',
299 click : function (_self, e)
301 var s = _this.grid.getSelectionModel().getSelections();
303 Roo.MessageBox.alert("Error", "Select a Person");
308 url : baseURL + '/Login.php',
311 'switch' : s[0].data.id
313 success : function (){
314 document.location = baseURL + '?ts=' + Math.random();
316 failure : function (d){
318 Roo.MessageBox.alert("Error", d);
326 '|xns' : 'Roo.Toolbar',
330 cls : 'x-btn-text-icon',
331 icon : Roo.rootURL + 'images/default/dd/drop-add.gif',
332 text : _this._strings['ec211f7c20af43e742bf2570c3cb84f9'] /* Add */,
334 '|xns' : 'Roo.Toolbar',
340 _this.dialog.show( { id : 0 } , function() {
341 _this.grid.footer.onClick('first');
347 cls : 'x-btn-text-icon',
348 icon : Roo.rootURL + 'images/default/dd/drop-add.gif',
349 text : _this._strings['a93806efd0cc7a149f0f03e2b9a0f862'] /* Bulk Add */,
351 '|xns' : 'Roo.Toolbar',
357 Pman.Dialog.PersonBulkAdd.show( { id : 0 } , function() {
358 _this.grid.footer.onClick('first');
364 cls : 'x-btn-text-icon',
365 icon : Roo.rootURL + 'images/default/tree/leaf.gif',
366 text : _this._strings['7dce122004969d56ae2e0245cb754d35'] /* Edit */,
368 '|xns' : 'Roo.Toolbar',
373 var s = _this.grid.getSelectionModel().getSelections();
374 if (!s.length || (s.length > 1)) {
375 Roo.MessageBox.alert("Error", s.length ? "Select only one Row" : "Select a Row");
379 _this.dialog.show(s[0].data, function() {
380 _this.grid.footer.onClick('first');
387 cls : 'x-btn-text-icon',
388 icon : rootURL + '/Pman/templates/images/trash.gif',
389 text : _this._strings['f2a6c498fb90ee345d997f888fce3b18'] /* Delete */,
391 '|xns' : 'Roo.Toolbar',
396 Pman.genericDelete(_this, 'Person');
404 sortInfo : { field : 'name', direction: 'ASC' },
409 beforeload : function (_self, o)
411 if(!_this.active_company_button.pressed){
412 o.params['!company_id_comptype'] = 'OWNER';
415 o.params['query[search]'] = _this.searchBox.getValue();
417 if (!_this.activeButton) {return; false;}
419 if (_this.companyCombo && _this.companyCombo.getValue()) {
420 o.params.company_id = _this.companyCombo.getValue();
424 o.params.active = _this.activeButton.pressed ? 0 : 1;
426 if(_this.active_company_button.pressed){
427 o.params.company_id = 0;
430 var c = Pman.Tab.AdminContactsManager.layout.getRegion('west').getActivePanel();
436 var tms = c.grid.getSelectionModel().getSelected();
442 if(c.tableName == 'Groups'){
443 o.params['query[in_group]'] = tms.data.id;
444 o.params['query[type]'] = 2; // group type..
446 o.params['query[in_country]'] = (tms.data.country*1 == -1) ? '' : tms.data.country;
447 o.params['query[in_group]'] = 0;
448 o.params['query[type]'] = 2;
451 if (Pman.Tab.AdminContactsGroup && Pman.Tab.AdminContactsGroup.grid) {
457 if(Pman.Tab.AdminCountries && Pman.Tab.AdminCountries.grid){
458 var tms = Pman.Tab.AdminCountries.grid.getSelectionModel().getSelected();
466 //o.params['query[name]'] = _this.searchBox.getValue();
469 update : function (_self, record, operation)
471 if (operation != 'commit') {
474 // only used to change active status.
477 url : baseURL + '/Roo/Person.php',
481 active: record.data.active
484 success : function() {
487 _this.grid.ds.remove(record);
492 Roo.MessageBox.alert("Error", "saving failed", function() {
493 _this.grid.footer.onClick('first');
501 url : baseURL + '/Roo/Person.php',
509 totalProperty : 'total',
517 dataIndex : 'project_id_code',
518 header : _this._strings['9e727fdd3aec8274f46685441900280d'] /* Project */,
520 renderer : function(v,x,r) {
521 return String.format('<span qtip="{0}">{1}</span>',
522 r.data.project_id_name,
529 xtype : 'ColumnModel'
532 dataIndex : 'company_id_comptype',
533 header : _this._strings['a1fa27779242b4902f7ae3bdd5c6d508'] /* Type */,
534 renderer : function(v,x,r) {
535 if (r.data.office_id) {
536 return String.format('{0} - {1}', v, r.data.office_id_name);
538 return String.format('{0}', v);
544 xtype : 'ColumnModel'
547 dataIndex : 'company_id_name',
548 header : _this._strings['1c76cbfe21c6f44c1d1e59d54f3e4420'] /* Company */,
549 renderer : function(v,x,r) {
550 if (r.data.office_id) {
551 return String.format('{0} - {1}', v, r.data.office_id_name);
553 return String.format('{0}', v);
559 xtype : 'ColumnModel'
563 header : _this._strings['49ee3087348e8d44e1feda1917443987'] /* Name */,
564 renderer : function(v) { return String.format('{0}', v); },
569 xtype : 'ColumnModel'
573 header : _this._strings['bbbabdbe1b262f75d99d62880b953be1'] /* Role */,
574 renderer : function(v) { return String.format('{0}', v); },
578 xtype : 'ColumnModel'
582 header : _this._strings['bcc254b55c4a1babdf1dcb82c207506b'] /* Phone */,
583 renderer : function(v) { return String.format('{0}', v); },
587 xtype : 'ColumnModel'
591 header : _this._strings['9810aa2b9f44401be4bf73188ef2b67d'] /* Fax */,
592 renderer : function(v) { return String.format('{0}', v); },
596 xtype : 'ColumnModel'
600 header : _this._strings['ce8ae9da5b7cd6c3df2929543a9af92d'] /* Email */,
601 renderer : function(v) {
602 return (v.length && v.indexOf('@') > 0 ) ?
603 String.format('<a href="mailto:{0}">{0}</a>',v) : v;
609 xtype : 'ColumnModel'
612 dataIndex : 'active',
613 header : _this._strings['4d3d769b812b6faa6b76e1a8abaece2d'] /* Active */,
614 renderer : function(v) {
615 var state = v> 0 ? '-checked' : '';
617 return '<img class="x-grid-check-icon' + state + '" src="' + Roo.BLANK_IMAGE_URL + '"/>';
623 xtype : 'ColumnModel'