[FIX] website, website_{*}: Google Maps API Key
Partial backport of c82b65c855
opw-686510
This commit is contained in:
@@ -656,6 +656,9 @@ class res_partner(osv.osv):
|
||||
'zoom': zoom,
|
||||
'sensor': 'false',
|
||||
}
|
||||
google_maps_api_key = self.pool['ir.config_parameter'].get_param(cr, openerp.SUPERUSER_ID, 'google_maps_api_key', context=context)
|
||||
if google_maps_api_key:
|
||||
params['key'] = google_maps_api_key
|
||||
return urlplus('//maps.googleapis.com/maps/api/staticmap' , params)
|
||||
|
||||
def google_map_link(self, cr, uid, ids, zoom=10, context=None):
|
||||
|
||||
@@ -927,7 +927,14 @@ Sitemap: <t t-esc="url_root"/>sitemap.xml
|
||||
"fields": ["name", "address", "phone", "mobile", "fax", "email"]}'/>
|
||||
</address>
|
||||
<!-- FORWARD-PORT UP TO SAAS-12 -->
|
||||
<a t-att-href="res_company.google_map_link()" target="_BLANK">Visualize on Google Maps</a>
|
||||
<t t-if="'key=' in res_company.google_map_img()">
|
||||
<a t-att-href="res_company.google_map_link()" target="_BLANK">
|
||||
<img class="thumbnail img-responsive" t-att-src="res_company.google_map_img()" />
|
||||
</a>
|
||||
</t>
|
||||
<t t-if="'key=' not in res_company.google_map_img()">
|
||||
<a t-att-href="res_company.google_map_link()" target="_BLANK">Visualize on Google Maps</a>
|
||||
</t>
|
||||
</template>
|
||||
|
||||
<template id="contactus" name="Contact us" page="True">
|
||||
|
||||
@@ -119,6 +119,7 @@ class WebsiteCrmPartnerAssign(WebsitePartnerPage):
|
||||
partners = partners[pager['offset']:pager['offset'] + self._references_per_page]
|
||||
|
||||
google_map_partner_ids = ','.join(map(str, [p.id for p in partners]))
|
||||
google_maps_api_key = request.env['ir.config_parameter'].sudo().get_param('google_maps_api_key')
|
||||
|
||||
values = {
|
||||
'countries': countries,
|
||||
@@ -130,6 +131,7 @@ class WebsiteCrmPartnerAssign(WebsitePartnerPage):
|
||||
'pager': pager,
|
||||
'searches': post,
|
||||
'search_path': "%s" % werkzeug.url_encode(post),
|
||||
'google_maps_api_key': google_maps_api_key,
|
||||
}
|
||||
return request.render("website_crm_partner_assign.index", values, status=partners and 200 or 404)
|
||||
|
||||
|
||||
@@ -119,25 +119,27 @@
|
||||
|
||||
<template id="ref_country" inherit_id="website_crm_partner_assign.index" customize_show="True" name="Left World Map">
|
||||
<xpath expr="//ul[@id='reseller_countries']" position="after">
|
||||
<!-- modal for large map -->
|
||||
<div class="modal fade partner_map_modal" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true">
|
||||
<div class="modal-dialog modal-lg">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h4 class="modal-title">World Map</h4>
|
||||
<t t-if="google_maps_api_key">
|
||||
<!-- modal for large map -->
|
||||
<div class="modal fade partner_map_modal" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true">
|
||||
<div class="modal-dialog modal-lg">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h4 class="modal-title">World Map</h4>
|
||||
</div>
|
||||
<iframe t-attf-src="/google_map/?width=898&height=485&partner_ids=#{ google_map_partner_ids }&partner_url=/partners/"
|
||||
style="width:898px; height:485px; border:0; padding:0; margin:0;"></iframe>
|
||||
</div>
|
||||
<iframe t-attf-src="/google_map/?width=898&height=485&partner_ids=#{ google_map_partner_ids }&partner_url=/partners/"
|
||||
style="width:898px; height:485px; border:0; padding:0; margin:0;"></iframe>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- modal end -->
|
||||
<h3>World Map<button class="btn btn-link" data-toggle="modal" data-target=".partner_map_modal"><span class="fa fa-external-link" /></button></h3>
|
||||
<ul class="nav">
|
||||
<iframe t-attf-src="/google_map?width=260&height=240&partner_ids=#{ google_map_partner_ids }&partner_url=/partners/"
|
||||
style="width:260px; height:240px; border:0; padding:0; margin:0;" scrolling="no"></iframe>
|
||||
</ul>
|
||||
<!-- modal end -->
|
||||
<h3>World Map<button class="btn btn-link" data-toggle="modal" data-target=".partner_map_modal"><span class="fa fa-external-link" /></button></h3>
|
||||
<ul class="nav">
|
||||
<iframe t-attf-src="/google_map?width=260&height=240&partner_ids=#{ google_map_partner_ids }&partner_url=/partners/"
|
||||
style="width:260px; height:240px; border:0; padding:0; margin:0;" scrolling="no"></iframe>
|
||||
</ul>
|
||||
</t>
|
||||
</xpath>
|
||||
</template>
|
||||
|
||||
|
||||
@@ -85,6 +85,7 @@ class WebsiteCustomer(http.Controller):
|
||||
context=request.context)
|
||||
google_map_partner_ids = ','.join(map(str, partner_ids))
|
||||
partners = partner_obj.browse(request.cr, openerp.SUPERUSER_ID, partner_ids, request.context)
|
||||
google_maps_api_key = request.env['ir.config_parameter'].sudo().get_param('google_maps_api_key')
|
||||
|
||||
tag_obj = request.registry['res.partner.tag']
|
||||
tag_ids = tag_obj.search(cr, uid, [('website_published', '=', True), ('partner_ids', 'in', partner_ids)],
|
||||
@@ -103,6 +104,7 @@ class WebsiteCustomer(http.Controller):
|
||||
'search_path': "?%s" % werkzeug.url_encode(post),
|
||||
'tag': tag,
|
||||
'tags': tags,
|
||||
'google_maps_api_key': google_maps_api_key,
|
||||
}
|
||||
return request.website.render("website_customer.index", values)
|
||||
|
||||
|
||||
@@ -68,25 +68,27 @@
|
||||
<!-- Option: left column: World Map -->
|
||||
<template id="opt_country" inherit_id="website_customer.index" customize_show="True" name="Show Map">
|
||||
<xpath expr="//div[@id='ref_left_column']" position="inside">
|
||||
<!-- modal for large map -->
|
||||
<div class="modal fade customer_map_modal" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true">
|
||||
<div class="modal-dialog modal-lg">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h4 class="modal-title">World Map</h4>
|
||||
<t t-if="google_maps_api_key">
|
||||
<!-- modal for large map -->
|
||||
<div class="modal fade customer_map_modal" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true">
|
||||
<div class="modal-dialog modal-lg">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h4 class="modal-title">World Map</h4>
|
||||
</div>
|
||||
<iframe t-attf-src="/google_map/?width=898&height=485&partner_ids=#{ google_map_partner_ids }&partner_url=/customers/"
|
||||
style="width:898px; height:485px; border:0; padding:0; margin:0;"></iframe>
|
||||
</div>
|
||||
<iframe t-attf-src="/google_map/?width=898&height=485&partner_ids=#{ google_map_partner_ids }&partner_url=/customers/"
|
||||
style="width:898px; height:485px; border:0; padding:0; margin:0;"></iframe>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- modal end -->
|
||||
<h3>World Map<button class="btn btn-link" data-toggle="modal" data-target=".customer_map_modal"><span class="fa fa-external-link" /></button></h3>
|
||||
<ul class="nav">
|
||||
<iframe t-attf-src="/google_map?width=260&height=240&partner_ids=#{ google_map_partner_ids }&partner_url=/customers/"
|
||||
style="width:260px; height:240px; border:0; padding:0; margin:0;" scrolling="no"></iframe>
|
||||
</ul>
|
||||
<!-- modal end -->
|
||||
<h3>World Map<button class="btn btn-link" data-toggle="modal" data-target=".customer_map_modal"><span class="fa fa-external-link" /></button></h3>
|
||||
<ul class="nav">
|
||||
<iframe t-attf-src="/google_map?width=260&height=240&partner_ids=#{ google_map_partner_ids }&partner_url=/customers/"
|
||||
style="width:260px; height:240px; border:0; padding:0; margin:0;" scrolling="no"></iframe>
|
||||
</ul>
|
||||
</t>
|
||||
</xpath>
|
||||
</template>
|
||||
|
||||
|
||||
@@ -332,7 +332,14 @@
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<!-- FORWARD-PORT UP TO SAAS-12 -->
|
||||
<a t-att-href="event.google_map_link()" target="_BLANK">Visualize on Google Maps</a>
|
||||
<t t-if="'key=' in event.google_map_img()">
|
||||
<a t-att-href="event.google_map_link()" target="_BLANK">
|
||||
<img class="thumbnail img-responsive" t-att-src="event.google_map_img()" />
|
||||
</a>
|
||||
</t>
|
||||
<t t-if="'key=' not in event.google_map_img()">
|
||||
<a t-att-href="event.google_map_link()" target="_BLANK">Visualize on Google Maps</a>
|
||||
</t>
|
||||
<div itemprop="location" class="mt16 mb8" t-field="event.address_id" t-field-options='{
|
||||
"widget": "contact",
|
||||
"fields": ["address", "phone", "mobile", "fax", "email"]
|
||||
|
||||
@@ -63,9 +63,11 @@ class google_map(http.Controller):
|
||||
else:
|
||||
partner_url = '/partners/'
|
||||
|
||||
google_maps_api_key = request.env['ir.config_parameter'].sudo().get_param('google_maps_api_key')
|
||||
# generate the map
|
||||
values = {
|
||||
'partner_url': partner_url,
|
||||
'partner_data': json.dumps(partner_data)
|
||||
'partner_data': json.dumps(partner_data),
|
||||
'google_maps_api_key': google_maps_api_key,
|
||||
}
|
||||
return request.website.render("website_google_map.google_map", values)
|
||||
|
||||
@@ -15,7 +15,12 @@
|
||||
var odoo_partner_data = <t t-raw="partner_data"/>;
|
||||
</script>
|
||||
<div id="odoo-google-map"></div>
|
||||
<script src="//maps.google.com/maps/api/js?sensor=false"></script>
|
||||
<t t-if="google_maps_api_key">
|
||||
<script t-attf-src="//maps.google.com/maps/api/js?key=#{google_maps_api_key}"></script>
|
||||
</t>
|
||||
<t t-if="not google_maps_api_key">
|
||||
<script src="//maps.google.com/maps/api/js"></script>
|
||||
</t>
|
||||
<script type="text/javascript" src="/website_google_map/static/src/js/markerclusterer_compiled.js"></script>
|
||||
<script type="text/javascript" src="/website_google_map/static/src/js/google_map.js"></script>
|
||||
</body>
|
||||
|
||||
@@ -138,6 +138,7 @@ class WebsiteMembership(http.Controller):
|
||||
count_members += len(free_partner_ids)
|
||||
|
||||
google_map_partner_ids = ",".join(map(str, google_map_partner_ids))
|
||||
google_maps_api_key = request.env['ir.config_parameter'].sudo().get_param('google_maps_api_key')
|
||||
|
||||
partners = { p.id: p for p in partner_obj.browse(request.cr, SUPERUSER_ID, list(page_partner_ids), request.context)}
|
||||
|
||||
@@ -162,6 +163,7 @@ class WebsiteMembership(http.Controller):
|
||||
'pager': pager,
|
||||
'post': post,
|
||||
'search': "?%s" % werkzeug.url_encode(post),
|
||||
'google_maps_api_key': google_maps_api_key,
|
||||
}
|
||||
return request.website.render("website_membership.index", values)
|
||||
|
||||
|
||||
@@ -104,25 +104,27 @@
|
||||
<template id="opt_index_google_map" name="Left World Map"
|
||||
customize_show="True" inherit_id="website_membership.index">
|
||||
<xpath expr="//div[@id='left_column']/ul[last()]" position="after">
|
||||
<!-- modal for large map -->
|
||||
<div class="modal fade partner_map_modal" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true">
|
||||
<div class="modal-dialog modal-lg">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h4 class="modal-title">World Map</h4>
|
||||
<t t-if="google_maps_api_key">
|
||||
<!-- modal for large map -->
|
||||
<div class="modal fade partner_map_modal" tabindex="-1" role="dialog" aria-labelledby="myLargeModalLabel" aria-hidden="true">
|
||||
<div class="modal-dialog modal-lg">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||
<h4 class="modal-title">World Map</h4>
|
||||
</div>
|
||||
<iframe t-attf-src="/google_map/?width=898&height=485&partner_ids=#{ google_map_partner_ids }&partner_url=/members/"
|
||||
style="width:898px; height:485px; border:0; padding:0; margin:0;"></iframe>
|
||||
</div>
|
||||
<iframe t-attf-src="/google_map/?width=898&height=485&partner_ids=#{ google_map_partner_ids }&partner_url=/members/"
|
||||
style="width:898px; height:485px; border:0; padding:0; margin:0;"></iframe>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- modal end -->
|
||||
<h3>World Map<button class="btn btn-link" data-toggle="modal" data-target=".partner_map_modal"><span class="fa fa-external-link" /></button></h3>
|
||||
<ul class="nav">
|
||||
<iframe t-attf-src="/google_map/?width=260&height=240&partner_ids=#{ google_map_partner_ids }&partner_url=/members/"
|
||||
style="width:260px; height:240px; border:0; padding:0; margin:0;"></iframe>
|
||||
</ul>
|
||||
<!-- modal end -->
|
||||
<h3>World Map<button class="btn btn-link" data-toggle="modal" data-target=".partner_map_modal"><span class="fa fa-external-link" /></button></h3>
|
||||
<ul class="nav">
|
||||
<iframe t-attf-src="/google_map/?width=260&height=240&partner_ids=#{ google_map_partner_ids }&partner_url=/members/"
|
||||
style="width:260px; height:240px; border:0; padding:0; margin:0;"></iframe>
|
||||
</ul>
|
||||
</t>
|
||||
</xpath>
|
||||
</template>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user