Merge branch 'master' of github.com:jonatkins/ingress-intel-total-conversion

This commit is contained in:
Philipp Schaefer 2013-05-19 17:15:16 +02:00
commit 6762914b19
2 changed files with 43 additions and 16 deletions

View File

@ -200,14 +200,6 @@ window.setupMap = function() {
map.addControl(window.layerChooser);
// set the map AFTER adding the layer chooser, or Chrome reorders the
// layers. This likely leads to broken layer selection because the
// views/cookie order does not match the layer chooser order.
try {
convertCookieToLocalStorage('ingress.intelmap.type');
map.addLayer(views[localStorage['ingress.intelmap.type']]);
} catch(e) { map.addLayer(views[0]); }
map.attributionControl.setPrefix('');
// listen for changes and store them in cookies
map.on('moveend', window.storeMapPosition);
@ -228,10 +220,6 @@ window.setupMap = function() {
console.log('Remove all resonators');
});
map.on('baselayerchange', function () {
var selInd = $('[name=leaflet-base-layers]:checked').parent().index();
localStorage['ingress.intelmap.type']=selInd;
});
// map update status handling & update map hooks
// ensures order of calls
@ -248,6 +236,43 @@ window.setupMap = function() {
};
//adds a base layer to the map. done separately from the above, so that plugins that add base layers can be the default
window.setMapBaseLayer = function() {
//create a map name -> layer mapping - depends on internals of L.Control.Layers
var nameToLayer = {};
var firstLayer = null;
for (i in window.layerChooser._layers) {
var obj = window.layerChooser._layers[i];
if (!obj.overlay) {
nameToLayer[obj.name] = obj.layer;
if (!firstLayer) firstLayer = obj.layer;
}
}
var baseLayer = nameToLayer[localStorage['iitc-base-map']] || firstLayer;
map.addLayer(baseLayer);
//after choosing a base layer, ensure the zoom is valid for this layer
//(needs to be done here - as we don't know the base layer zoom limit before this)
map.setZoom(map.getZoom());
//event to track layer changes and store the name
map.on('baselayerchange', function() {
for(i in window.layerChooser._layers) {
var obj = window.layerChooser._layers[i];
if (!obj.overlay && map.hasLayer(obj.layer)) {
localStorage['iitc-base-map'] = obj.name;
break;
}
}
});
}
// renders player details into the website. Since the player info is
// included as inline script in the original site, the data is static
// and cannot be updated.
@ -412,6 +437,8 @@ function boot() {
}
});
window.setMapBaseLayer();
window.runOnSmartphonesAfterBoot();
// workaround for #129. Not sure why this is required.

View File

@ -25,7 +25,7 @@ window.getPosition = function() {
var lat = parseInt(getURLParam('latE6'))/1E6 || 0.0;
var lng = parseInt(getURLParam('lngE6'))/1E6 || 0.0;
var z = parseInt(getURLParam('z')) || 17;
return {center: new L.LatLng(lat, lng), zoom: z > 18 ? 18 : z};
return {center: new L.LatLng(lat, lng), zoom: z};
}
if(getURLParam('ll')) {
@ -33,7 +33,7 @@ window.getPosition = function() {
var lat = parseFloat(getURLParam('ll').split(",")[0]) || 0.0;
var lng = parseFloat(getURLParam('ll').split(",")[1]) || 0.0;
var z = parseInt(getURLParam('z')) || 17;
return {center: new L.LatLng(lat, lng), zoom: z > 18 ? 18 : z};
return {center: new L.LatLng(lat, lng), zoom: z};
}
if(readCookie('ingress.intelmap.lat') && readCookie('ingress.intelmap.lng')) {
@ -45,10 +45,10 @@ window.getPosition = function() {
if(lat < -90 || lat > 90) lat = 0.0;
if(lng < -180 || lng > 180) lng = 0.0;
return {center: new L.LatLng(lat, lng), zoom: z > 18 ? 18 : z};
return {center: new L.LatLng(lat, lng), zoom: z};
}
setTimeout("window.map.locate({setView : true, maxZoom: 13});", 50);
setTimeout("window.map.locate({setView : true});", 50);
return {center: new L.LatLng(0.0, 0.0), zoom: 1};
}