X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=resources%2FEditors%2FEditor.Roo.LayoutDialog.js;h=d2629aa39d36fb056777692a8d795e7917446243;hb=1be141aa5ec3768dca510628250ba1603a7d5d10;hp=2f10952179b383bedc6707b1902d047699115fbb;hpb=e04aeb76772bc13427ba03fddafc34a962c3ddd6;p=app.Builder.js diff --git a/resources/Editors/Editor.Roo.LayoutDialog.js b/resources/Editors/Editor.Roo.LayoutDialog.js index 2f1095217..d2629aa39 100644 --- a/resources/Editors/Editor.Roo.LayoutDialog.js +++ b/resources/Editors/Editor.Roo.LayoutDialog.js @@ -533,6 +533,38 @@ Editor.Roo.LayoutDialog = new Roo.XComponent({ var r = data[k]; var has_s = typeof(r.relates_to_schema) != 'undefined'; + var field_type = 'TextField'; + + var regex = /(.*?)\((.*?)\)/; + + if(regex.test(r.Type)){ + var type_match = regex.exec(r.Type); + + switch type_match[1] { + case 'varchar' : + break; + case 'int' : + + field_type = 'NumberField'; + + if(type_match[2] * 1 < 11){ + field_type = 'CheckBox'; + } + + } + + } esle { + switch r.Type { + case 'text' : + field_type = 'TextArea'; + break; + case 'date' : + case 'datetime': + field_type = 'DateField'; + } + + } + var rt = '', rc = '', rs = []; if(has_s){ @@ -545,14 +577,18 @@ Editor.Roo.LayoutDialog = new Roo.XComponent({ rs.push([rr.Field]); } + + field_type = 'ComboBox'; } + + var o = { active : !has_s, dataIndex : r.Field, type : r.Type, title : r.Field, - width : 100, + width : 200, ftype : 'TextField', display_field : rc, //r.Field + '_display_name', relates_to_table : rt, @@ -562,26 +598,6 @@ Editor.Roo.LayoutDialog = new Roo.XComponent({ d.push(o); - if (!has_s) { - continue; - } - - for (var kk in r.relates_to_schema) { - var rr = r.relates_to_schema[kk]; - if (rr.Field == r.relates_to_col) { - continue; - } - - var o = { - active : false, - dataIndex : r.Field + '_'+ rr.Field, - type : r.Type, - title : r.Field, - width : 100 - }; - - d.push(o); - } } var ar = []; @@ -601,8 +617,6 @@ Editor.Roo.LayoutDialog = new Roo.XComponent({ ar.push(a); }); - - Roo.log(ar); this.schema = data; //alert("IPC:TEST:" + JSON.stringify(ar)); @@ -631,25 +645,25 @@ Editor.Roo.LayoutDialog = new Roo.XComponent({ var el = { fieldLabel : rec.data.title, name : rec.data.dataIndex, - width : r.data.width, + width : rec.data.width, '|xns' : 'Roo.form', xtype : rec.data.ftype } - if (xtype == 'DateField') { + if (el.xtype == 'DateField') { el.format = 'Y-m-d'; el.useIso = true; el.width = 100; } - if (xtype == 'TextArea') { + if (el.xtype == 'TextArea') { el.height = 100; } - if (xtype == 'Hidden') { + if (el.xtype == 'Hidden') { delete el.fieldLabel; delete el.width; } - if (xtype == 'Combobox') { + if (el.xtype == 'ComboBox') { el.queryParam = 'query[' + rec.data.display_field + ']';// SET WHEN USED @@ -703,15 +717,17 @@ Editor.Roo.LayoutDialog = new Roo.XComponent({ } - if (xtype == 'HtmlEditor') { - el.height = 100, + if (el.xtype == 'HtmlEditor') { + el.height = 250, el.resizable = 's', - el.toolbar = [ + el.items = [ { + '* prop' : 'toolbars[]', '|xns' : 'Roo.form.HtmlEditor', 'xtype' : 'ToolbarContext' }, { + '* prop' : 'toolbars[]', '|xns' : 'Roo.form.HtmlEditor', 'xtype' : 'ToolbarStandard' @@ -721,7 +737,7 @@ Editor.Roo.LayoutDialog = new Roo.XComponent({ formElements.push(el); - formHeight += rec.data.ftype == 'TextArea' ? 100 : 30; + formHeight += rec.data.ftype == 'TextArea' ? 100 : ((rec.data.ftype == 'HtmlEditor') ? 250 : 30); });