Pman.Dialog.CoreCompanies.bjs
[Pman.Core] / Pman.Dialog.CoreCompanies.js
index 6cd46ed..e7af906 100644 (file)
@@ -30,26 +30,6 @@ Pman.Dialog.CoreCompanies = {
         this.dialog = Roo.factory({
             xtype: 'LayoutDialog',
             xns: Roo,
-            listeners : {
-                beforeshow : function (_self)
-                {
-                    if (data.isOwner || !Pman.Login.isOwner()) {
-                        this.dialog.setTitle("Your Company Details");
-                        if (_this.form.findField('comptype')) {
-                            _this.form.findField('comptype').disable();
-                        }
-                        
-                        
-                        
-                        
-                    } else {
-                        this.dialog.setTitle(data.id ? "Edit Company" : "Add Company");
-                        if (_this.form.findField('comptype')) {
-                            _this.form.findField('comptype').enable();
-                        }
-                    }
-                }
-            },
             autoCreate : 'true',
             closable : false,
             collapsible : false,
@@ -82,32 +62,8 @@ Pman.Dialog.CoreCompanies = {
                                     //console.log('load completed'); 
                                     // error messages?????
                                     if(act.type == 'setdata'){
-                                        if (data._fetch) {
-                                            _this.dialog.el.mask("Loading");
-                                            _this.form.doAction('load', {
-                                                url: baseURL + '/Roo/Companies.html',
-                                                method: 'GET',
-                                                params: {
-                                                    _id: this._id ,
-                                                    _ts : Math.random()
-                                                } 
-                                            });
-                                            return;
-                                        } else {
-                                            _this.form.setValues(data);
-                                        }
-                                        
-                                        if (data.isOwner || !Pman.Login.isOwner()) {
-                                            _this.dialog.setTitle("Your Company Details");
-                                            if (_this.form.findField('comptype')) {
-                                                _this.form.findField('comptype').disable();
-                                            }
-                                        } else {
-                                            _this.dialog.setTitle(data.id ? "Edit Company" : "Add Company");
-                                            if (_this.form.findField('comptype')) {
-                                                _this.form.findField('comptype').enable();
-                                            }
-                                        }
+                                        this.load({ method: 'GET', params: { '_id' : _this.data.id }});
+                                        return;
                                     }
                                    
                                     if (act.type == 'load') {
@@ -141,7 +97,7 @@ Pman.Dialog.CoreCompanies = {
                             },
                             fileUpload : true,
                             labelWidth : 160,
-                            url : baseURL + '/Roo/Person.php',
+                            url : baseURL + '/Roo/Companies.php',
                             items : [
                                 {
                                     xtype: 'Column',
@@ -181,6 +137,65 @@ Pman.Dialog.CoreCompanies = {
                                                 fields : '[\'val\', \'desc\']'
                                             }
                                         },
+                                        {
+                                            xtype: 'ComboBox',
+                                            xns: Roo.form,
+                                            listeners : {
+                                                render : function (_self)
+                                                {
+                                                    _this.etypeCombo = _self;
+                                                },
+                                                select : function (combo, record, index)
+                                                {
+                                                    _this.grid.footer.onClick('first');
+                                                }
+                                            },
+                                            alwaysQuery : true,
+                                            displayField : 'name',
+                                            editable : 'false',
+                                            emptyText : "Select Type",
+                                            fieldLabel : 'Type',
+                                            forceSelection : true,
+                                            listWidth : 250,
+                                            loadingText : "Searching...",
+                                            minChars : 2,
+                                            pageSize : 20,
+                                            qtip : "Select type",
+                                            queryParam : 'query[name]',
+                                            selectOnFocus : true,
+                                            tpl : '<div class="x-grid-cell-text x-btn button"><b>{name}</b> </div>',
+                                            triggerAction : 'all',
+                                            typeAhead : false,
+                                            valueField : 'name',
+                                            width : 200,
+                                            store : {
+                                                xtype: 'Store',
+                                                xns: Roo.data,
+                                                listeners : {
+                                                    beforeload : function (_self, o){
+                                                        o.params = o.params || {};
+                                                        // set more here
+                                                        o.params['query[empty_etype]'] = 1;
+                                                    }
+                                                },
+                                                remoteSort : true,
+                                                sortInfo : { direction : 'ASC', field: 'id' },
+                                                proxy : {
+                                                    xtype: 'HttpProxy',
+                                                    xns: Roo.data,
+                                                    method : 'GET',
+                                                    url : baseURL + '/Roo/core_enum.php'
+                                                },
+                                                reader : {
+                                                    xtype: 'JsonReader',
+                                                    xns: Roo.data,
+                                                    id : 'id',
+                                                    root : 'data',
+                                                    totalProperty : 'total',
+                                                    fields : [{"name":"id","type":"int"},{"name":"etype","type":"string"}]
+                                                }
+                                            }
+                                        },
                                         {
                                             xtype: 'TextField',
                                             xns: Roo.form,
@@ -321,11 +336,28 @@ Pman.Dialog.CoreCompanies = {
                 {
                     xtype: 'Button',
                     xns: Roo,
+                    listeners : {
+                        click : function (_self, e)
+                        {
+                            _this.dialog.hide();
+                        }
+                    },
                     text : "Cancel"
                 },
                 {
                     xtype: 'Button',
                     xns: Roo,
+                    listeners : {
+                        click : function (_self, e)
+                        {
+                            // do some checks?
+                             
+                            
+                            _this.dialog.el.mask("Saving");
+                            _this.form.doAction("submit");
+                        
+                        }
+                    },
                     text : "Save"
                 }
             ]