nakarte

Source code of https://map.sikmir.ru (fork)
git clone git://git.sikmir.ru/nakarte
Log | Files | Refs | LICENSE

commit 6c2eb103d18ff13c72c6163723f2dd80f82291e2
parent 3fc97e82db3e60625bc38d3782d808f20630844d
Author: Sergej Orlov <wladimirych@gmail.com>
Date:   Thu,  1 Nov 2018 22:20:57 +0100

Merge branch '151-jnx-disappears-180' into release-5

Diffstat:
Msrc/lib/leaflet.control.jnx/hash-state.js | 20+++++++++++++++-----
Msrc/lib/leaflet.control.printPages/control.js | 4++--
2 files changed, 17 insertions(+), 7 deletions(-)

diff --git a/src/lib/leaflet.control.jnx/hash-state.js b/src/lib/leaflet.control.jnx/hash-state.js @@ -20,20 +20,30 @@ L.Control.JNX.include({ }, unserializeState: function(values) { + function validateFloat(value, min, max) { value = parseFloat(value); - if (isNaN(value) || value < min || value > max) { + if (isNaN(value)) { throw new Error('INVALID VALUE'); } return value; } + function validateFloatRange(value, min, max) { + value = validateFloat(value); + if (value < min || value > max) { + throw new Error('INVALID VALUE'); + } + return value; + + } + if (values && values.length === 4) { try { - var south = validateFloat(values[0], -86, 86), - west = validateFloat(values[1], -180, 180), - north = validateFloat(values[2], -86, 86), - east = validateFloat(values[3], -180, 180); + var south = validateFloatRange(values[0], -86, 86), + west = validateFloat(values[1]), + north = validateFloatRange(values[2], -86, 86), + east = validateFloat(values[3]); } catch (e) { if (e.message === 'INVALID VALUE') { return false; diff --git a/src/lib/leaflet.control.printPages/control.js b/src/lib/leaflet.control.printPages/control.js @@ -436,7 +436,7 @@ L.Control.PrintPages = L.Control.extend({ state.push(this.marginTop().toString()); state.push(this.marginBottom().toString()); for (let page of pages) { - let latLng = page.getLatLng(); + let latLng = page.getLatLng().wrap(); state.push(latLng.lat.toFixed(5)); state.push(latLng.lng.toFixed(5)); state.push(page._rotated ? '1' : '0'); @@ -444,7 +444,7 @@ L.Control.PrintPages = L.Control.extend({ let flags = (this.magneticMeridiansOn() ? 1 : 0) | (this.gridOn() ? 2 : 0); - state.push(flags); + state.push(flags.toString()); } return state;