← Back to team overview

openerp-dev-web team mailing list archive

[Merge] lp:~openerp-dev/openobject-client/trunk-bug-715763-ysa into lp:openobject-client

 

Yogesh(Open ERP) has proposed merging lp:~openerp-dev/openobject-client/trunk-bug-715763-ysa into lp:openobject-client.

Requested reviews:
  Naresh(OpenERP) (nch-openerp)
Related bugs:
  Bug #715763 in OpenERP Server: "[6.0] impossible to reset reference fields"
  https://bugs.launchpad.net/openobject-server/+bug/715763

For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-client/trunk-bug-715763-ysa/+merge/62651

fix problem of reset blank reference fields.
-- 
https://code.launchpad.net/~openerp-dev/openobject-client/trunk-bug-715763-ysa/+merge/62651
Your team OpenERP R&D Team is subscribed to branch lp:~openerp-dev/openobject-client/trunk-bug-715763-ysa.
=== modified file 'bin/widget/model/field.py'
--- bin/widget/model/field.py	2011-04-20 09:34:21 +0000
+++ bin/widget/model/field.py	2011-05-27 10:44:16 +0000
@@ -159,7 +159,7 @@
         ro = model.mgroup._readonly
         state_changes = dict(self.attrs.get('states',{}).get(state,[]))
         if 'readonly' in state_changes:
-            self.get_state_attrs(model)['readonly'] = state_changes.get('readonly', False) 
+            self.get_state_attrs(model)['readonly'] = state_changes.get('readonly', False)
         else:
             if (self.attrs.get('readonly', False) or  ro) and  ro  or self.attrs['readonly']:
                 self.get_state_attrs(model)['readonly'] = True
@@ -170,7 +170,7 @@
                 self.get_state_attrs(model)['required'] = self.attrs['required']
         if 'value' in state_changes:
             self.set(model, state_changes['value'], test_state=False, modified=True)
-    
+
     def get_state_attrs(self, model):
         if self.name not in model.state_attrs:
             model.state_attrs[self.name] = self.attrs.copy()
@@ -501,7 +501,8 @@
             val = model.value[self.name]
             if not isinstance(val, (tuple, list)):
                 val = eval(val)
-            return '%s,%d' % (val[0], val[1][0])
+            if val and val[0]:
+                return '%s,%d' % (val[0], val[1][0])
         return False
 
     def set_client(self, model, value, test_state=False, force_change=False):