Dharti Ratani(OpenERP) has proposed merging
lp:~openerp-dev/openobject-server/trunk-i18-address-format-dhr into
lp:openobject-server.
Requested reviews:
OpenERP Core Team (openerp)
For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-server/trunk-i18-address-format-dhr/+merge/118696
Hello,
Adding fields_view_get in res_partner form to change the address format
based on user's company's country's address format.
Thanks
dhr
--
https://code.launchpad.net/~openerp-dev/openobject-server/trunk-i18-address-format-dhr/+merge/118696
Your team OpenERP R&D Team is subscribed to branch
lp:~openerp-dev/openobject-server/trunk-i18-address-format-dhr.
=== modified file 'openerp/addons/base/res/res_partner.py'
--- openerp/addons/base/res/res_partner.py 2012-08-07 14:42:53 +0000
+++ openerp/addons/base/res/res_partner.py 2012-08-08 09:26:33 +0000
@@ -491,6 +491,39 @@
if without_company:
args['company_name'] = ''
return address_format % args
+
+ def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
+ res = super(res_partner,self).fields_view_get(cr, uid, view_id, view_type, context, toolbar=toolbar, submenu=submenu)
+
+ if view_type == 'form':
+ country_id = self.pool.get('res.users').browse(cr, uid, uid,context).company_id.country_id
+ if country_id and country_id.address_format:
+ address_format = country_id.address_format
+ else:
+ address_format = '%(company_name)s%(street)s%(street2)s%(city)s,%(state_code)s %(zip)s%(country_name)s'
+ address_format = address_format.replace(',','')
+ fields = {
+ 'zip': {'change_default': True, 'string': 'Zip', 'views': {}, 'selectable': True, 'type': 'char', 'size': 24},
+ 'city': {'selectable': True, 'views': {}, 'type': 'char', 'string': 'City', 'size': 128},
+ 'street': {'selectable': True, 'views': {}, 'type': 'char', 'string': 'Street', 'size': 128},
+ 'street2': {'selectable': True, 'views': {}, 'type': 'char', 'string': 'Street2', 'size': 128},
+ 'country_id': {'domain': [], 'string': 'Country', 'views': {}, 'relation': 'res.country', 'context': {}, 'selectable': True, 'type': 'many2one'},
+ 'state_id': {'domain': [], 'string': 'State', 'views': {}, 'relation': 'res.country.state', 'context': {}, 'selectable': True, 'type': 'many2one'}
+ }
+ args = {
+ 'street': '<field name="street"/>',
+ 'street2': '<field name="street2"/>',
+ 'city': '<field name="city"/>',
+ 'state_code': '<field name="state_id"/>',
+ 'zip': '<field name="zip"/>',
+ 'country_name': '<field name="country_id"/>',
+ 'company_name': '',
+ }
+ old = '<div class="address_format"/>'
+ new = '<div class="address_format">' + address_format % args + '</div>'
+ res['arch'] = res['arch'].replace(old,new)
+ res['fields'].update(fields)
+ return res
=== modified file 'openerp/addons/base/res/res_partner_view.xml'
--- openerp/addons/base/res/res_partner_view.xml 2012-08-07 17:31:58 +0000
+++ openerp/addons/base/res/res_partner_view.xml 2012-08-08 09:26:33 +0000
@@ -129,16 +129,7 @@
</div>
<label for="street" string="Address"/>
- <div>
- <field name="street" placeholder="Street..."/>
- <field name="street2"/>
- <div class="address_format">
- <field name="city" placeholder="City" style="width: 40%%"/>
- <field name="state_id" options='{"no_open": true}' placeholder="State" style="width: 24%%"/>
- <field name="zip" placeholder="ZIP" style="width: 34%%"/>
- </div>
- <field name="country_id" placeholder="Country" options='{"no_open": true}'/>
- </div>
+ <div class="address_format"/>
<field name="website" widget="url" placeholder="e.g. www.openerp.com"/>
</group>
<group>
_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help : https://help.launchpad.net/ListHelp