diff options
Diffstat (limited to 'odoo/addons/base')
| -rw-r--r-- | odoo/addons/base/data/res.lang.csv | 2 | ||||
| -rw-r--r-- | odoo/addons/base/data/res_country_data.xml | 2 | ||||
| -rw-r--r-- | odoo/addons/base/models/ir_model.py | 16 | ||||
| -rw-r--r-- | odoo/addons/base/models/res_partner.py | 9 |
4 files changed, 21 insertions, 8 deletions
diff --git a/odoo/addons/base/data/res.lang.csv b/odoo/addons/base/data/res.lang.csv index 3438c4d3f67..0d7060cdc41 100644 --- a/odoo/addons/base/data/res.lang.csv +++ b/odoo/addons/base/data/res.lang.csv @@ -11,7 +11,7 @@ "base.lang_zh_CN","Chinese (Simplified) / 简体中文","zh_CN","zh_CN","Left-to-Right","[3,0]",".",",","%Y年%m月%d日","%H时%M分%S秒","True","7" "base.lang_zh_HK","Chinese (HK)","zh_HK","zh_HK","Left-to-Right","[3,0]",".",",","%Y年%m月%d日 %A","%I時%M分%S秒","True","7" "base.lang_zh_TW","Chinese (Traditional) / 正體字","zh_TW","zh_TW","Left-to-Right","[3,0]",".",",","%Y年%m月%d日","%H時%M分%S秒","True","7" -"base.lang_hr","Croatian / hrvatski jezik","hr_HR","hr","Left-to-Right","[]",",",,"%d.%m.%Y","%H:%M:%S","True","1" +"base.lang_hr","Croatian / hrvatski jezik","hr_HR","hr","Left-to-Right","[3,0]",",",".","%d.%m.%Y","%H:%M:%S","True","1" "base.lang_cs_CZ","Czech / Čeština","cs_CZ","cs_CZ","Left-to-Right","[3,0]",","," ","%d.%m.%Y","%H:%M:%S","True","1" "base.lang_da_DK","Danish / Dansk","da_DK","da_DK","Left-to-Right","[3,0]",",",".","%d-%m-%Y","%H:%M:%S","True","1" "base.lang_nl_BE","Dutch (BE) / Nederlands (BE)","nl_BE","nl_BE","Left-to-Right","[3,0]",",",".","%d-%m-%Y","%H:%M:%S","True","1" diff --git a/odoo/addons/base/data/res_country_data.xml b/odoo/addons/base/data/res_country_data.xml index cdb6a54414f..c30f9c20390 100644 --- a/odoo/addons/base/data/res_country_data.xml +++ b/odoo/addons/base/data/res_country_data.xml @@ -700,6 +700,7 @@ <field name="code">hr</field> <field file="base/static/img/country_flags/hr.png" name="image" type="base64" /> <field name="currency_id" ref="HRK" /> + <field eval="'%(street)s \n%(street2)s \n%(zip)s %(city)s \n%(country_name)s'" name="address_format" /> <field eval="385" name="phone_code" /> <field name="vat_label">VAT</field> </record> @@ -1104,6 +1105,7 @@ <field name="code">mu</field> <field file="base/static/img/country_flags/mu.png" name="image" type="base64" /> <field name="currency_id" ref="MUR" /> + <field eval="'%(street)s\n%(street2)s\n%(city)s %(state_code)s %(zip)s\n%(country_name)s'" name="address_format" /> <field eval="230" name="phone_code" /> </record> <record id="mv" model="res.country"> diff --git a/odoo/addons/base/models/ir_model.py b/odoo/addons/base/models/ir_model.py index 089204dda5f..41f013b3ccf 100644 --- a/odoo/addons/base/models/ir_model.py +++ b/odoo/addons/base/models/ir_model.py @@ -639,11 +639,17 @@ class IrModelFields(models.Model): for view in views: view._check_xml() except Exception: - raise UserError("\n".join([ - _("Cannot rename/delete fields that are still present in views:"), - _("Fields: %s") % ", ".join(str(f) for f in fields), - _("View: %s") % view.name, - ])) + if not self._context.get(MODULE_UNINSTALL_FLAG): + raise UserError("\n".join([ + _("Cannot rename/delete fields that are still present in views:"), + _("Fields: %s") % ", ".join(str(f) for f in fields), + _("View: %s") % view.name, + ])) + else: + # uninstall mode + _logger.warn("The following fields were force-deleted to prevent a registry crash " + + ", ".join(str(f) for f in fields) + + " the following view might be broken %s" % view.name) finally: # the registry has been modified, restore it self.pool.setup_models(self._cr) diff --git a/odoo/addons/base/models/res_partner.py b/odoo/addons/base/models/res_partner.py index 646d429d19e..0900d46895f 100644 --- a/odoo/addons/base/models/res_partner.py +++ b/odoo/addons/base/models/res_partner.py @@ -443,6 +443,11 @@ class Partner(models.Model): """Returns the list of address fields that are synced from the parent.""" return list(ADDRESS_FIELDS) + @api.model + def _formatting_address_fields(self): + """Returns the list of address fields usable to format addresses.""" + return self._address_fields() + @api.multi def update_address(self, vals): addr_vals = {key: vals[key] for key in self._address_fields() if key in vals} @@ -914,7 +919,7 @@ class Partner(models.Model): 'country_name': self._get_country_name(), 'company_name': self.commercial_company_name or '', } - for field in self._address_fields(): + for field in self._formatting_address_fields(): args[field] = getattr(self, field) or '' if without_company: args['company_name'] = '' @@ -924,7 +929,7 @@ class Partner(models.Model): def _display_address_depends(self): # field dependencies of method _display_address() - return self._address_fields() + [ + return self._formatting_address_fields() + [ 'country_id.address_format', 'country_id.code', 'country_id.name', 'company_name', 'state_id.code', 'state_id.name', ] |
