← Back to team overview

openerp-dev-web team mailing list archive

[Merge] lp:~openerp-dev/openobject-client-web/6.0-opw-4916-sma into lp:openobject-client-web/6.0

 

Sananaz (Open ERP) has proposed merging lp:~openerp-dev/openobject-client-web/6.0-opw-4916-sma into lp:openobject-client-web/6.0.

Requested reviews:
  OpenERP Core Team (openerp)

For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-client-web/6.0-opw-4916-sma/+merge/55889

Hello,

Problem is When apply attrs `readonly` on groups, its not working.
eg:
<field name="state" />
<group attrs="{'readonly': [('state', '!=', 'draft')]}">
       <field name="name" />
</group>


Thank you.
-- 
https://code.launchpad.net/~openerp-dev/openobject-client-web/6.0-opw-4916-sma/+merge/55889
Your team OpenERP R&D Team is subscribed to branch lp:~openerp-dev/openobject-client-web/6.0-opw-4916-sma.
=== modified file 'addons/openerp/static/javascript/form_state.js'
--- addons/openerp/static/javascript/form_state.js	2011-03-25 05:31:27 +0000
+++ addons/openerp/static/javascript/form_state.js	2011-04-01 09:32:31 +0000
@@ -159,7 +159,7 @@
 function form_onAttrChange(container, widgetName, attr, expr, elem) {
 
     var prefix = widgetName.slice(0, widgetName.lastIndexOf('/') + 1);
-    var widget = openobject.dom.get(widgetName);
+    var widget = openobject.dom.get(widgetName) || elem;
 
     var result = form_evalExpr(prefix, expr, elem);
 
@@ -273,6 +273,22 @@
     }
 
     var type = $field.attr('type');
+
+    if (!type && ($field.hasClass('item-group'))) {
+        var  group_fields = jQuery($field).find('input, textarea, select')
+        group_fields.each(function(){
+        var $this = jQuery(this);
+            if (readonly) {
+            	$this.addClass('readonlyfield')
+            	$this.attr({'disabled': 'disabled', 'readOnly': readonly});
+            }
+            else {
+            	$this.removeClass('readonlyfield');
+            	$this.attr({'disabled': '', 'readOnly': readonly});
+            }
+        });
+        return;
+    }
     $field.attr({'disabled':readonly, 'readOnly': readonly});
 
     if (readonly) {


Follow ups