diff --git a/addons/crm/crm.py b/addons/crm/crm.py
index 922e7d91b99..44b162d5ebf 100644
--- a/addons/crm/crm.py
+++ b/addons/crm/crm.py
@@ -726,17 +726,23 @@ class crm_case(osv.osv):
data['email_from'] = self.pool.get('res.partner.address').browse(cr, uid, addr['contact']).email
return {'value':data}
-
-
-
- def onchange_partner_address_id(self, cr, uid, ids, part, email=False):
- if not part:
- return {'value':{}}
+ def onchange_partner_address_id(self, cr, uid, ids, add, email=False):
data = {}
- if not email:
- data['email_from'] = self.pool.get('res.partner.address').browse(cr, uid, part).email
- return {'value':data}
+ if not add:
+ return {'value': {'email_from': False}}
+ data['email_from'] = self.pool.get('res.partner.address').browse(cr, uid, add).email
+ return {'value': data}
+ def onchange_partner_id(self, cr, uid, ids, part):
+ data = {}
+ if not part:
+ return {'value': {'partner_address_id': False,
+ 'email_from': False}}
+ add = self.pool.get('res.partner').address_get(cr, uid, [part])['default']
+ data['partner_address_id'] = add
+ data.update(self.onchange_partner_address_id(cr, uid, ids, add)['value'])
+ return {'value': data}
+
def case_close(self, cr, uid, ids, *args):
cases = self.browse(cr, uid, ids)
cases[0].state # to fill the browse record cache
diff --git a/addons/crm/crm_lead_menu.xml b/addons/crm/crm_lead_menu.xml
index 75883d1122b..5776e69ce4e 100644
--- a/addons/crm/crm_lead_menu.xml
+++ b/addons/crm/crm_lead_menu.xml
@@ -10,7 +10,6 @@
crm.lead
tree,form
-
diff --git a/addons/crm/crm_lead_view.xml b/addons/crm/crm_lead_view.xml
index 778cf41d756..5e748d2299e 100644
--- a/addons/crm/crm_lead_view.xml
+++ b/addons/crm/crm_lead_view.xml
@@ -47,8 +47,11 @@
-
-
+
+
@@ -174,7 +177,7 @@
/>
-
+