diff options
author | Matthew Somerville <matthew@mysociety.org> | 2013-02-21 12:31:17 +0000 |
---|---|---|
committer | Matthew Somerville <matthew@mysociety.org> | 2013-02-21 12:31:17 +0000 |
commit | e2bf144a6aaa19779fc55a04081a3c269b9d0f81 (patch) | |
tree | 00318d801d35948938743608252fccd2d1b4e585 /web/js/map-OpenLayers.js | |
parent | eb0c0d42f3596c5dc21e9bcdcc02a4008a541c34 (diff) | |
parent | f8a8948ddb790e7e7593d538c55a3a278fbf3973 (diff) |
Merge remote branch 'origin/zurich'
(locale ignored, will rerun .po extraction after to get all changes.)
Conflicts:
locale/FixMyStreet.po
locale/cy_GB.UTF-8/LC_MESSAGES/EmptyHomes.po
locale/de_CH.UTF-8/LC_MESSAGES/FixMyStreet.po
locale/nb_NO.UTF-8/LC_MESSAGES/FixMyStreet.po
locale/nn_NO.UTF-8/LC_MESSAGES/FixMyStreet.po
templates/web/fixmystreet/report/banner.html
templates/web/zurich/faq/faq-de-ch.html
Diffstat (limited to 'web/js/map-OpenLayers.js')
-rw-r--r-- | web/js/map-OpenLayers.js | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/web/js/map-OpenLayers.js b/web/js/map-OpenLayers.js index 88dc6d69e..e28a4d982 100644 --- a/web/js/map-OpenLayers.js +++ b/web/js/map-OpenLayers.js @@ -418,7 +418,19 @@ OpenLayers.Control.PermalinkFMS = OpenLayers.Class(OpenLayers.Control.Permalink, href = href.substring( 0, href.indexOf(separator) ); } - href += separator + OpenLayers.Util.getParameterString(this.createParams(null, this.map.getZoom()+fixmystreet.zoomOffset)); + var center = this.map.getCenter(); + if ( center && fixmystreet.state_map && fixmystreet.state_map == 'full' ) { + // Translate the permalink co-ords so that 'centre' is accurate + var $content = $('.content'), mb = $('#map_box'), + q = ( $content.offset().left - mb.offset().left + $content.width() ) / 2; + if (q < 0) { q = 0; } + var p = this.map.getViewPortPxFromLonLat(center); + p.x += q; + p.y += 25; + center = this.map.getLonLatFromViewPortPx(p); + } + + href += separator + OpenLayers.Util.getParameterString(this.createParams(center, this.map.getZoom()+fixmystreet.zoomOffset)); // Could use mlat/mlon here as well if we are on a page with a marker if (this.anchor && !this.element) { window.location.href = href; |