Pman.Dialog.AdminCoreEnum.bjs
[Pman.Admin] / Pman.Dialog.AdminCoreEnum.js
index 4ad8651..336caed 100644 (file)
@@ -30,7 +30,24 @@ Pman.Dialog.AdminCoreEnum = {
         this.dialog = Roo.factory({
             xtype: 'LayoutDialog',
             xns: Roo,
+            listeners : {
+                show : function (_self)
+                {
+                    var name_hidden = false;
+                
+                    if (typeof(_this.data._hide_name) != 'undefined') {
+                        name_hidden = true;
+                    
+                    }
+                    
+                  _this.grid.colModel.setHidden(1,name_hidden);
+                    _this.grid.footer.onClick('first');
+                }
+            },
+            closable : false,
             height : 400,
+            modal : true,
+            resizable : false,
             title : "Pulldown Options",
             width : 950,
             items : [
@@ -65,7 +82,7 @@ Pman.Dialog.AdminCoreEnum = {
                             },
                             afteredit : function (e)
                             {
-                               e.record.commit();     
+                               (function() {  e.record.commit(); }).defer(100);
                             },
                             cellclick : function (_self, rowIndex, columnIndex, e)
                             {
@@ -84,6 +101,14 @@ Pman.Dialog.AdminCoreEnum = {
                             },
                             beforeedit : function (e)
                             {
+                                
+                                // force fill in of name first.. (Except when it's hidden)
+                                if (typeof(_this.data._hide_name) != 'undefined') { 
+                                    if(e.field == 'display_name' && e.record.data.is_system_enum*1 == 1){
+                                        return true;
+                                    }
+                                }
+                                
                                 if(e.field == 'name' && e.record.data.is_system_enum*1 == 1){
                                     return false;
                                 }
@@ -109,6 +134,15 @@ Pman.Dialog.AdminCoreEnum = {
                                     if (operation != Roo.data.Record.COMMIT) {
                                         return;
                                     }
+                                    Roo.log(record);
+                                
+                                    if (typeof(_this.data._hide_name) != 'undefined') {
+                                        record.set('name', record.data.display_name);
+                                    }
+                                    if (!record.data.name.length) {
+                                        return;
+                                    }
+                                    
                                     // got commit..
                                     new Pman.Request({
                                         url : baseURL + '/Roo/Core_enum.php',
@@ -116,7 +150,7 @@ Pman.Dialog.AdminCoreEnum = {
                                         params : {
                                             id : record.data.id,
                                             etype : _this.data.etype,
-                                            name : record.data.name,
+                                            name :  record.data.name,
                                             active : record.data.active,
                                             seqid : record.data.seqid,
                                             display_name : record.data.display_name
@@ -317,6 +351,23 @@ Pman.Dialog.AdminCoreEnum = {
                 {
                     xtype: 'Button',
                     xns: Roo,
+                    listeners : {
+                        click : function (_self, e)
+                        {
+                            var sel = _this.grid.selModel.getSelectedCell();
+                            if (!sel && _this.callback) {
+                                Roo.MessageBox.alert("Error", "Select an item");
+                                return;
+                            }
+                            
+                        
+                            if (_this.callback) {
+                                var rec = _this.grid.ds.getAt(sel[0]);
+                               _this.callback(rec.data);
+                           }
+                           _this.dialog.hide();
+                        }
+                    },
                     text : "OK"
                 }
             ]