resources/Editors/Editor.Roo.LayoutDialog.bjs
[app.Builder.js] / resources / Editors / Editor.Roo.LayoutDialog.js
index c256636..d2629aa 100644 (file)
@@ -9,7 +9,7 @@ Editor.Roo.LayoutDialog = new Roo.XComponent({
  _strings : {
   'b021df6aac4654c454f46c77646e745f' :"Label",
   '793548e77e782c209a78ed67f255b5e2' :"Display Field",
-  '0b6519e9da7898cdc668f6016026e71d' :"To JSON",
+  '040076bde7f6b3387448e32b66c2eee0' :"To BJS",
   '4ce58cbe362a5d7b156992a496d55bf3' :"Database Column",
   '189efd19c4153526994a6d7ea5f6f068' :"Field Type",
   '2f616612593df62aeed112de4f03110e' :"Edit a Grid",
@@ -81,7 +81,6 @@ Editor.Roo.LayoutDialog = new Roo.XComponent({
        listeners : {
         click : function (_self, e)
          {
-             Roo.log(_this.ftype_combo);
              var data = {    
                  "manage_scale_id": {
                      "Field": "manage_scale_id",
@@ -241,7 +240,7 @@ Editor.Roo.LayoutDialog = new Roo.XComponent({
                  }
              };
              
-             Roo.log('debuging...');
+             Roo.log('Loading Data...');
              _this.panel.loadData(data);
          
          }
@@ -249,174 +248,20 @@ Editor.Roo.LayoutDialog = new Roo.XComponent({
       },
       {
        '|xns' : 'Roo.Toolbar',
-       text : _this._strings['0b6519e9da7898cdc668f6016026e71d'],
+       xns : Roo.Toolbar,
+       xtype : 'Separator'
+      },
+      {
+       '|xns' : 'Roo.Toolbar',
+       text : _this._strings['040076bde7f6b3387448e32b66c2eee0'],
        xns : Roo.Toolbar,
        xtype : 'Button',
        listeners : {
         click : function (_self, e)
          {
-             Roo.log(_this.ftype_combo);
-             var data = {    
-                 "manage_scale_id": {
-                     "Field": "manage_scale_id",
-                     "Type": "int(11)",
-                     "Null": "NO",
-                     "Key": null,
-                     "Default": "0",
-                     "Extra": null,
-                     "relates_to_table": "core_enum",
-                     "relates_to_col": "id",
-                     "relates_to_schema": {
-                         "id": {
-                             "Field": "id",
-                             "Type": "int(11)",
-                             "Null": "NO",
-                             "Key": "PRI",
-                             "Default": null,
-                             "Extra": "auto_increment"
-                         },
-                         "etype": {
-                             "Field": "etype",
-                             "Type": "varchar(32)",
-                             "Null": "NO",
-                             "Key": null,
-                             "Default": null,
-                             "Extra": null
-                         },
-                         "name": {
-                             "Field": "name",
-                             "Type": "varchar(255)",
-                             "Null": "NO",
-                             "Key": null,
-                             "Default": null,
-                             "Extra": null
-                         },
-                         "active": {
-                             "Field": "active",
-                             "Type": "int(2)",
-                             "Null": "NO",
-                             "Key": null,
-                             "Default": "1",
-                             "Extra": null
-                         },
-                         "seqid": {
-                             "Field": "seqid",
-                             "Type": "int(11)",
-                             "Null": "NO",
-                             "Key": "MUL",
-                             "Default": "0",
-                             "Extra": null
-                         },
-                         "seqmax": {
-                             "Field": "seqmax",
-                             "Type": "int(11)",
-                             "Null": "NO",
-                             "Key": null,
-                             "Default": "0",
-                             "Extra": null
-                         },
-                         "display_name": {
-                             "Field": "display_name",
-                             "Type": "text",
-                             "Null": "NO",
-                             "Key": null,
-                             "Default": null,
-                             "Extra": null
-                         },
-                         "is_system_enum": {
-                             "Field": "is_system_enum",
-                             "Type": "int(2)",
-                             "Null": "NO",
-                             "Key": null,
-                             "Default": "0",
-                             "Extra": null
-                         }
-                     }
-                 },
-                 "person_type": {
-                     "Field": "person_type",
-                     "Type": "text",
-                     "Null": "NO",
-                     "Key": null,
-                     "Default": null,
-                     "Extra": null
-                 },
-                 "employer_name": {
-                     "Field": "employer_name",
-                     "Type": "text",
-                     "Null": "NO",
-                     "Key": null,
-                     "Default": null,
-                     "Extra": null
-                 },
-                 "birth_date": {
-                     "Field": "birth_date",
-                     "Type": "date",
-                     "Null": "NO",
-                     "Key": null,
-                     "Default": "0000-00-00",
-                     "Extra": null
-                 },
-                 "employ_start_date": {
-                     "Field": "employ_start_date",
-                     "Type": "date",
-                     "Null": "NO",
-                     "Key": null,
-                     "Default": "0000-00-00",
-                     "Extra": null
-                 },
-                 "employ_end_date": {
-                     "Field": "employ_end_date",
-                     "Type": "date",
-                     "Null": "NO",
-                     "Key": null,
-                     "Default": "0000-00-00",
-                     "Extra": null
-                 },
-                 "hide_same_employer": {
-                     "Field": "hide_same_employer",
-                     "Type": "int(4)",
-                     "Null": "NO",
-                     "Key": null,
-                     "Default": "0",
-                     "Extra": null
-                 },
-                 "salary_currency": {
-                     "Field": "salary_currency",
-                     "Type": "varchar(256)",
-                     "Null": "NO",
-                     "Key": null,
-                     "Default": null,
-                     "Extra": null
-                 },
-                 "quota_currency": {
-                     "Field": "quota_currency",
-                     "Type": "varchar(256)",
-                     "Null": "NO",
-                     "Key": null,
-                     "Default": null,
-                     "Extra": null
-                 },
-                 "created_dt": {
-                     "Field": "created_dt",
-                     "Type": "datetime",
-                     "Null": "NO",
-                     "Key": null,
-                     "Default": "0000-00-00 00:00:00",
-                     "Extra": null
-                 },
-                 "updated_dt": {
-                     "Field": "updated_dt",
-                     "Type": "datetime",
-                     "Null": "NO",
-                     "Key": null,
-                     "Default": "0000-00-00 00:00:00",
-                     "Extra": null
-                 }
-             };
              
-             Roo.log('debuging...');
-             _this.panel.loadData(data);
+             Roo.log('Converting to BJS...');
+             _this.panel.toBJS();
          
          }
        }
@@ -688,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){
@@ -700,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,
@@ -717,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 = [];
@@ -756,8 +617,6 @@ Editor.Roo.LayoutDialog = new Roo.XComponent({
            ar.push(a);
        });
        
-       
-       Roo.log(ar);
        this.schema = data;
        
        //alert("IPC:TEST:" + JSON.stringify(ar));
@@ -786,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
@@ -858,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'
    
@@ -876,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);
            
            
        });