{
var _this = this;
this.dialog = Roo.factory({
- xtype: 'LayoutDialog',
- xns: Roo,
- autoCreate : 'true',
- closable : false,
- collapsible : false,
- draggable : false,
- height : 400,
+ center : {
+ alwaysShowTabs : false,
+ autoScroll : false,
+ xtype : 'LayoutRegion',
+ hideTabs : true,
+ xns : Roo,
+ closeOnTab : true,
+ titlebar : false
+ },
modal : true,
- shadow : 'true',
+ shadow : true,
+ collapsible : false,
title : "Add / Edit Organization",
+ xtype : 'LayoutDialog',
+ autoCreate : true,
width : 750,
+ xns : Roo,
+ closable : false,
+ height : 400,
+ draggable : false,
+ buttons : [
+ {
+ text : "Cancel",
+ xtype : 'Button',
+ xns : Roo,
+ listeners : {
+ click : function (_self, e)
+ {
+ _this.dialog.hide();
+ }
+ }
+ },
+{
+ text : "Save",
+ xtype : 'Button',
+ xns : Roo,
+ listeners : {
+ click : function (_self, e)
+ {
+ // do some checks?
+
+
+ _this.dialog.el.mask("Saving");
+ _this.form.doAction("submit");
+
+ }
+ }
+ }
+ ],
items : [
- {
- xtype: 'ContentPanel',
- xns: Roo,
- autoCreate : 'true',
- fitToFrame : true,
+ {
region : 'center',
+ fitToFrame : true,
+ xtype : 'ContentPanel',
+ autoCreate : true,
+ xns : Roo,
items : [
- {
- xtype: 'Form',
- xns: Roo.form,
- listeners : {
- actionfailed : function(f, act) {
- _this.dialog.el.unmask();
- // error msg???
- Pman.standardActionFailed(f,act);
-
- },
- actioncomplete : function(f, act) {
- _this.dialog.el.unmask();
- //console.log('load completed');
- // error messages?????
- if(act.type == 'setdata'){
- this.load({ method: 'GET', params: { '_id' : _this.data.id }});
- return;
- }
-
- if (act.type == 'load') {
- _this.data = act.result.data;
- var meth = _this.data.comptype == 'OWNER' ? 'disable' : 'enable';
-
-
- if (_this.form.findField('comptype_id')) {
- _this.form.findField('comptype_id')[meth]();
- }
-
- // _this.loaded();
- return;
- }
-
-
- if (act.type == 'submit') { // only submitted here if we are
- _this.dialog.hide();
-
- if (_this.callback) {
- _this.callback.call(this, act.result.data);
- }
- return;
- }
- // unmask??
- },
- rendered : function (form)
- {
- _this.form = form;
- }
- },
+ {
+ url : baseURL + '/Roo/Companies.php',
fileUpload : true,
+ xtype : 'Form',
labelWidth : 160,
- url : baseURL + '/Roo/Companies.php',
+ xns : Roo.form,
+ listeners : {
+ actionfailed : function(f, act) {
+ _this.dialog.el.unmask();
+ // error msg???
+ Pman.standardActionFailed(f,act);
+
+ },
+ rendered : function (form)
+ {
+ _this.form = form;
+ },
+ actioncomplete : function(f, act) {
+ _this.dialog.el.unmask();
+ //console.log('load completed');
+ // error messages?????
+ if(act.type == 'setdata'){
+ this.load({ method: 'GET', params: { '_id' : _this.data.id }});
+ return;
+ }
+
+ if (act.type == 'load') {
+ _this.data = act.result.data;
+ var meth = _this.data.comptype == 'OWNER' ? 'disable' : 'enable';
+
+
+ if (_this.form.findField('comptype')) {
+ _this.form.findField('comptype')[meth]();
+ }
+
+ // _this.loaded();
+ return;
+ }
+
+
+ if (act.type == 'submit') { // only submitted here if we are
+ _this.dialog.hide();
+
+ if (_this.callback) {
+ _this.callback.call(this, act.result.data);
+ }
+ return;
+ }
+ // unmask??
+ }
+ },
items : [
- {
- xtype: 'Column',
- xns: Roo.form,
+ {
+ xtype : 'Column',
+ xns : Roo.form,
width : 500,
items : [
- {
- xtype: 'TextField',
- xns: Roo.form,
- allowBlank : true,
+ {
fieldLabel : 'Company ID (for filing Ref.)',
+ xtype : 'TextField',
+ allowBlank : true,
+ width : 100,
+ xns : Roo.form,
name : 'code',
- qtip : "Enter code",
- width : 100
+ qtip : "Enter code"
},
- {
- xtype: 'ComboBox',
- xns: Roo.form,
- listeners : {
- render : function (_self)
- {
- _this.etypeCombo = _self;
- }
+ {
+ store : {
+ proxy : {
+ url : baseURL + '/Roo/core_enum.php',
+ method : 'GET',
+ xtype : 'HttpProxy',
+ xns : Roo.data
+ },
+ reader : {
+ id : 'id',
+ root : 'data',
+ xtype : 'JsonReader',
+ fields : [{"name":"id","type":"int"},{"name":"name","type":"string"}],
+ xns : Roo.data,
+ totalProperty : 'total'
+ },
+ xtype : 'Store',
+ remoteSort : true,
+ sortInfo : { direction : 'ASC', field: 'id' },
+ xns : Roo.data,
+ listeners : {
+ beforeload : function (_self, o){
+ o.params = o.params || {};
+ // set more here
+ //o.params['query[empty_etype]'] = 1;
+ o.params.etype = 'COMPTYPE';
+ }
+ },
+ items : [
+
+ ]
+
},
alwaysQuery : true,
- displayField : 'display_name',
- emptyText : "Select Type",
+ listWidth : 250,
+ triggerAction : 'all',
fieldLabel : 'Type',
forceSelection : true,
+ selectOnFocus : true,
+ pageSize : 20,
+ emptyText : "Select Type",
+ displayField : 'display_name',
hiddenName : 'comptype',
- listWidth : 250,
- loadingText : "Searching...",
minChars : 2,
- name : 'comptype',
- pageSize : 20,
- qtip : "Select type",
- queryParam : 'query[name]',
- selectOnFocus : true,
- tpl : '<div class="x-grid-cell-text x-btn button"><b>{name}</b> : {display_name}</div>',
- triggerAction : 'all',
+ valueField : 'name',
+ xtype : 'ComboBox',
typeAhead : false,
- valueField : 'id',
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;
- o.params.etype = 'COMPTYPE';
- }
- },
- 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":"name","type":"string"}]
- }
- }
+ xns : Roo.form,
+ name : 'comptype_display_name',
+ qtip : "Select type",
+ queryParam : 'query[name]',
+ tpl : '<div class=\"x-grid-cell-text x-btn button\"><b>{name}</b> : {display_name}</div>',
+ loadingText : "Searching...",
+ listeners : {
+ render : function (_self)
+ {
+ _this.etypeCombo = _self;
+ }
+ },
+ items : [
+
+ ]
+
},
- {
- xtype: 'TextField',
- xns: Roo.form,
- allowBlank : true,
+ {
fieldLabel : 'Company Name',
+ xtype : 'TextField',
+ allowBlank : true,
+ width : 300,
+ xns : Roo.form,
name : 'name',
- qtip : "Enter Company Name",
- width : 300
+ qtip : "Enter Company Name"
},
- {
- xtype: 'TextField',
- xns: Roo.form,
- allowBlank : true,
+ {
fieldLabel : 'Phone',
+ xtype : 'TextField',
+ allowBlank : true,
+ width : 300,
+ xns : Roo.form,
name : 'tel',
- qtip : "Enter Phone Number",
- width : 300
+ qtip : "Enter Phone Number"
},
- {
- xtype: 'TextField',
- xns: Roo.form,
- allowBlank : true,
+ {
fieldLabel : 'Fax',
+ xtype : 'TextField',
+ allowBlank : true,
+ width : 300,
+ xns : Roo.form,
name : 'fax',
- qtip : "Enter Fax Number",
- width : 300
+ qtip : "Enter Fax Number"
},
- {
- xtype: 'TextField',
- xns: Roo.form,
- allowBlank : true,
+ {
fieldLabel : 'Email',
+ xtype : 'TextField',
+ allowBlank : true,
+ width : 300,
+ xns : Roo.form,
name : 'email',
- qtip : "Enter Email Address",
- width : 300
+ qtip : "Enter Email Address"
},
- {
- xtype: 'TextField',
- xns: Roo.form,
+ {
+ fieldLabel : 'Url',
+ xtype : 'TextField',
allowBlank : true,
+ width : 300,
+ xns : Roo.form,
+ name : 'url',
+ qtip : "Enter Url"
+ },
+ {
fieldLabel : 'Address',
+ xtype : 'TextField',
+ allowBlank : true,
+ width : 300,
+ xns : Roo.form,
name : 'address',
- qtip : "Enter Address",
- width : 300
+ qtip : "Enter Address"
},
- {
- xtype: 'TextArea',
- xns: Roo.form,
- allowBlank : true,
+ {
fieldLabel : 'Remarks',
+ xtype : 'TextArea',
+ allowBlank : true,
+ width : 300,
+ xns : Roo.form,
height : 120,
name : 'remarks',
- qtip : "Enter remarks",
- width : 300
+ qtip : "Enter remarks"
}
]
+
},
- {
- xtype: 'Column',
- xns: Roo.form,
+ {
labelAlign : 'top',
+ xtype : 'Column',
width : 200,
+ xns : Roo.form,
items : [
- {
- xtype: 'ColorField',
- xns: Roo.form,
+ {
fieldLabel : 'Background Colour',
+ xtype : 'ColorField',
+ xns : Roo.form,
name : 'background_color'
},
- {
- xtype: 'DisplayField',
- xns: Roo.form,
+ {
fieldLabel : 'Logo Image',
- height : 170,
- icon : 'rootURL + \'images/default/dd/drop-add.gif\'',
- name : 'logo_id',
style : 'border: 1px solid #ccc;',
- width : 170,
+ xtype : 'DisplayField',
valueRenderer : function(v) {
//var vp = v ? v : 'Companies:' + _this.data.id + ':-LOGO';
if (!v) {
return "No Image Available" + '<BR/>';
}
- return String.format('<img src="{0}" width="150">',
- baseURL + '/Images/Thumb/150x150/' + v + '/logo.jpg'
+ return String.format('<a target="_new" href="{1}"><img src="{0}" width="150"></a>',
+ baseURL + '/Images/Thumb/150x150/' + v + '/logo.jpg',
+ baseURL + '/Images/'+v+'/logo.jpg' // fixme - put escaped company name..
);
- }
+ },
+ icon : 'rootURL + \'images/default/dd/drop-add.gif\'',
+ width : 170,
+ xns : Roo.form,
+ height : 170,
+ name : 'logo_id'
},
- {
- xtype: 'Button',
- xns: Roo,
+ {
+ text : "Add Image",
+ xtype : 'Button',
+ xns : Roo,
listeners : {
- click : function (_self, e)
- {
- var _t = _this.form.findField('logo_id');
-
- Pman.Dialog.Image.show({
- onid :_this.data.id,
- ontable : 'Companies',
- imgtype : 'LOGO'
- }, function(data) {
- if (data) {
- _t.setValue(data.id);
- }
-
- });
- }
- },
- text : "Add Image"
+ click : function (_self, e)
+ {
+ var _t = _this.form.findField('logo_id');
+
+ Pman.Dialog.Image.show({
+ onid :_this.data.id,
+ ontable : 'Companies',
+ imgtype : 'LOGO'
+ }, function(data) {
+ if (data) {
+ _t.setValue(data.id);
+ }
+
+ });
+ }
+ }
}
]
+
},
- {
- xtype: 'Hidden',
- xns: Roo.form,
+ {
+ xtype : 'Hidden',
+ xns : Roo.form,
name : 'id'
}
]
+
}
]
- }
- ],
- center : {
- xtype: 'LayoutRegion',
- xns: Roo,
- alwaysShowTabs : false,
- autoScroll : false,
- closeOnTab : true,
- hideTabs : true,
- titlebar : false
- },
- buttons : [
- {
- 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"
+
}
]
+
});
}
};