Pman.Dialog.CoreCompanies.bjs
[Pman.Core] / Pman.Dialog.CoreCompanies.bjs
index 8e9cbc1..4cfa77b 100644 (file)
@@ -6,9 +6,6 @@
     "path": "/home/chris/gitlive/Pman.Core/Pman.Dialog.CoreCompanies.bjs",
     "items": [
         {
-            "listeners": {
-                "beforeshow": "function (_self)\n{\n    if (data.isOwner || !Pman.Login.isOwner()) {\n        this.dialog.setTitle(\"Your Company Details\");\n        if (_this.form.findField('comptype')) {\n            _this.form.findField('comptype').disable();\n        }\n        \n        \n        \n        \n    } else {\n        this.dialog.setTitle(data.id ? \"Edit Company\" : \"Add Company\");\n        if (_this.form.findField('comptype')) {\n            _this.form.findField('comptype').enable();\n        }\n    }\n}"
-            },
             "autoCreate": "true",
             "closable": false,
             "collapsible": false,
                         {
                             "listeners": {
                                 "actionfailed": "function(f, act) {\n    _this.dialog.el.unmask();\n    // error msg???\n    Pman.standardActionFailed(f,act);\n              \n}",
-                                "actioncomplete": "function(f, act) {\n    _this.dialog.el.unmask();\n    //console.log('load completed'); \n    // error messages?????\n    if(act.type == 'setdata'){\n        if (data._fetch) {\n            _this.dialog.el.mask(\"Loading\");\n            _this.form.doAction('load', {\n                url: baseURL + '/Roo/Companies.html',\n                method: 'GET',\n                params: {\n                    _id: this._id ,\n                    _ts : Math.random()\n                } \n            });\n            return;\n        } else {\n            _this.form.setValues(data);\n        }\n        \n        if (data.isOwner || !Pman.Login.isOwner()) {\n            _this.dialog.setTitle(\"Your Company Details\");\n            if (_this.form.findField('comptype')) {\n                _this.form.findField('comptype').disable();\n            }\n        } else {\n            _this.dialog.setTitle(data.id ? \"Edit Company\" : \"Add Company\");\n            if (_this.form.findField('comptype')) {\n                _this.form.findField('comptype').enable();\n            }\n        }\n    }\n   \n    if (act.type == 'load') {\n        _this.data = act.result.data;\n        var meth = _this.data.isOwner || !Pman.Login.isOwner() ? 'disable' : 'enable';\n     \n            \n        if (_this.form.findField('comptype')) {\n            _this.form.findField('comptype')[meth]();\n        }\n         \n       // _this.loaded();\n        return;\n    }\n    \n    \n    if (act.type == 'submit') { // only submitted here if we are \n        _this.dialog.hide();\n       \n        if (_this.callback) {\n            _this.callback.call(this, act.result.data);\n        }\n        return; \n    }\n    // unmask?? \n}",
+                                "actioncomplete": "function(f, act) {\n    _this.dialog.el.unmask();\n    //console.log('load completed'); \n    // error messages?????\n    if(act.type == 'setdata'){\n        this.load({ method: 'GET', params: { '_id' : _this.data.id }});\n        return;\n    }\n   \n    if (act.type == 'load') {\n        _this.data = act.result.data;\n        var meth = _this.data.isOwner || !Pman.Login.isOwner() ? 'disable' : 'enable';\n     \n            \n        if (_this.form.findField('comptype')) {\n            _this.form.findField('comptype')[meth]();\n        }\n         \n       // _this.loaded();\n        return;\n    }\n    \n    \n    if (act.type == 'submit') { // only submitted here if we are \n        _this.dialog.hide();\n       \n        if (_this.callback) {\n            _this.callback.call(this, act.result.data);\n        }\n        return; \n    }\n    // unmask?? \n}",
                                 "rendered": "function (form)\n{\n    _this.form = form;\n}"
                             },
                             "fileUpload": true,
                             "labelWidth": 160,
                             "xtype": "Form",
-                            "|url": "baseURL + '/Roo/Person.php'",
+                            "|url": "baseURL + '/Roo/Companies.php'",
                             "|xns": "Roo.form",
                             "items": [
                                 {
@@ -56,7 +53,7 @@
                                     "|xns": "Roo.form",
                                     "items": [
                                         {
-                                            "allowBlank": false,
+                                            "allowBlank": true,
                                             "fieldLabel": "Company ID (for filing Ref.)",
                                             "name": "code",
                                             "qtip": "Enter code",
                                             "|xns": "Roo.form"
                                         },
                                         {
-                                            "allowBlank": false,
-                                            "displayField": "desc",
-                                            "editable": false,
+                                            "listeners": {
+                                                "render": "function (_self)\n{\n    _this.etypeCombo = _self;\n}",
+                                                "select": "function (combo, record, index)\n{\n    _this.grid.footer.onClick('first');\n}"
+                                            },
+                                            "alwaysQuery": true,
+                                            "displayField": "comptype_name",
                                             "emptyText": "Select Type",
                                             "fieldLabel": "Type",
+                                            "forceSelection": true,
                                             "hiddenName": "comptype",
                                             "listWidth": 250,
+                                            "loadingText": "Searching...",
+                                            "minChars": 2,
                                             "name": "comptype_name",
-                                            "qtip": "Select Company type",
+                                            "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": "val",
                                             "|xns": "Roo.form",
                                             "items": [
                                                 {
+                                                    "listeners": {
+                                                        "|beforeload": "function (_self, o){\n    o.params = o.params || {};\n    // set more here\n    o.params['query[empty_etype]'] = 1;\n}\n"
+                                                    },
                                                     "*prop": "store",
-                                                    "data": "[ 'CONSULTANT', \"Consultant\" ],[ 'CLIENT'    ,  \"Client\" ],[ 'CONTRACTOR' , \"Contractor\" ]",
-                                                    "fields": "['val', 'desc']",
-                                                    "xtype": "SimpleStore",
-                                                    "|xns": "Roo.data"
+                                                    "remoteSort": true,
+                                                    "xtype": "Store",
+                                                    "|sortInfo": "{ direction : 'ASC', field: 'id' }",
+                                                    "|xns": "Roo.data",
+                                                    "items": [
+                                                        {
+                                                            "*prop": "proxy",
+                                                            "xtype": "HttpProxy",
+                                                            "method": "GET",
+                                                            "|xns": "Roo.data",
+                                                            "|url": "baseURL + '/Roo/core_enum.php'"
+                                                        },
+                                                        {
+                                                            "*prop": "reader",
+                                                            "xtype": "JsonReader",
+                                                            "|xns": "Roo.data",
+                                                            "id": "id",
+                                                            "root": "data",
+                                                            "totalProperty": "total",
+                                                            "|fields": "[{\"name\":\"id\",\"type\":\"int\"},{\"name\":\"etype\",\"type\":\"string\"}]"
+                                                        }
+                                                    ]
                                                 }
                                             ]
                                         },
                     ]
                 },
                 {
+                    "listeners": {
+                        "click": "function (_self, e)\n{\n    _this.dialog.hide();\n}"
+                    },
                     "*prop": "buttons[]",
                     "text": "Cancel",
                     "xtype": "Button",
                     "|xns": "Roo"
                 },
                 {
+                    "listeners": {
+                        "click": "function (_self, e)\n{\n    // do some checks?\n     \n    \n    _this.dialog.el.mask(\"Saving\");\n    _this.form.doAction(\"submit\");\n\n}"
+                    },
                     "*prop": "buttons[]",
                     "text": "Save",
                     "xtype": "Button",