Files
odoo_source/addons/website_google_map/models/res_partner.py
T
Thibault Delavallée 81b0266ac3 [REF] website_google_map, website_crm, website_crm_partner_assign, website_membership: extracted res.partner model stuff into dedicated module and moved model-related stuff inside a models directory.
Website related fields on res.partner are now located inside their own module, in website_partner.
This module is a dependency for other modules that previously (re)defined various website fields.

Next step is to refactor a bit those modules, but one thing at a time. All glory to the hypnotoad.

bzr revid: tde@openerp.com-20131002092309-jlov4j1v6s9r6jyk
2013-10-02 11:23:09 +02:00

30 lines
1012 B
Python

# -*- coding: utf-8 -*-
from openerp.osv import osv
import simplejson
import werkzeug.wrappers
class res_partner(osv.Model):
_inherit = 'res.partner'
def google_map_json(self, cr, uid, ids, context=None):
data = {
"counter": len(ids),
"partners": []
}
for partner in self.pool.get('res.partner').browse(cr, uid, ids, context={'show_address': True}):
data["partners"].append({
'id': partner.id,
'name': partner.name,
'address': '\n'.join(partner.name_get()[0][1].split('\n')[1:]),
'type': partner.grade_id.name,
'latitude': partner.partner_latitude,
'longitude': partner.partner_longitude,
})
mime = 'application/json'
body = "var data = " + "}, \n{".join(simplejson.dumps(data).split("}, {"))
return werkzeug.wrappers.Response(body, headers=[('Content-Type', mime), ('Content-Length', len(body))])