Compare commits

..
Author SHA1 Message Date
bence 7c96ba24d6 MAPG-146 [WIP] 2020-06-14 22:10:36 +02:00
2 changed files with 31 additions and 24 deletions

No files matched your search

+17 -24
View File
@@ -336,34 +336,23 @@
}, },
rewriteGoogleLink: function () { rewriteGoogleLink: function () {
if (Game.googleLink) {
return;
}
var anchors = document.getElementById('panorama').getElementsByTagName('a');
for (var i = 0; i < anchors.length; i++) {
var a = anchors[i];
if (a.href.indexOf('maps.google.com/maps') !== -1) {
Game.googleLink = a;
break;
}
}
if (!Game.googleLink) { if (!Game.googleLink) {
return; var anchors = document.getElementById('panorama').getElementsByTagName('a');
} for (var i = 0; i < anchors.length; i++) {
var a = anchors[i];
var observer = new MutationObserver(function(mutationsList, observer) { if (a.href.indexOf('maps.google.com/maps') !== -1) {
for (let mutation of mutationsList) { Game.googleLink = a;
if (mutation.attributeName === 'href' && Game.googleLink.href !== 'https://maps.google.com/maps') { break;
console.log(Game.googleLink.href + ' is changed.')
Game.googleLink.title = 'Google Maps';
Game.googleLink.href = 'https://maps.google.com/maps';
} }
} }
}); }
observer.observe(Game.googleLink, { attributes: true }); setTimeout(function () {
if (Game.googleLink) {
Game.googleLink.title = 'Google Maps';
Game.googleLink.href = 'https://maps.google.com/maps';
}
}, 1);
} }
}; };
@@ -436,6 +425,10 @@
Game.rewriteGoogleLink(); Game.rewriteGoogleLink();
}); });
Game.panorama.addListener('pov_changed', function () {
Game.rewriteGoogleLink();
});
Game.initialize(); Game.initialize();
document.getElementById('showGuessButton').onclick = function () { document.getElementById('showGuessButton').onclick = function () {
+14
View File
@@ -13,6 +13,7 @@
added: {}, added: {},
edited: {}, edited: {},
deleted: {}, deleted: {},
saved: true,
editMetadata: function () { editMetadata: function () {
var form = document.getElementById('metadataForm'); var form = document.getElementById('metadataForm');
@@ -24,6 +25,7 @@
MapGuesser.hideModal(); MapGuesser.hideModal();
MapEditor.saved = false;
document.getElementById('saveButton').disabled = false; document.getElementById('saveButton').disabled = false;
}, },
@@ -210,6 +212,7 @@
MapEditor.selectedMarker.setLatLng({ lat: places[placeId].lat, lng: places[placeId].lng }); MapEditor.selectedMarker.setLatLng({ lat: places[placeId].lat, lng: places[placeId].lng });
MapEditor.saved = false;
document.getElementById('saveButton').disabled = false; document.getElementById('saveButton').disabled = false;
}, },
@@ -243,6 +246,7 @@
document.getElementById('added').innerHTML = String(Object.keys(MapEditor.added).length); document.getElementById('added').innerHTML = String(Object.keys(MapEditor.added).length);
document.getElementById('edited').innerHTML = String(Object.keys(MapEditor.edited).length); document.getElementById('edited').innerHTML = String(Object.keys(MapEditor.edited).length);
MapEditor.saved = false;
document.getElementById('saveButton').disabled = false; document.getElementById('saveButton').disabled = false;
}, },
@@ -300,6 +304,7 @@
document.getElementById('edited').innerHTML = '0'; document.getElementById('edited').innerHTML = '0';
document.getElementById('deleted').innerHTML = '0'; document.getElementById('deleted').innerHTML = '0';
MapEditor.saved = true;
document.getElementById('saveButton').disabled = true; document.getElementById('saveButton').disabled = true;
}, data); }, data);
}, },
@@ -440,4 +445,13 @@
document.getElementById('deleteButton').onclick = function () { document.getElementById('deleteButton').onclick = function () {
MapEditor.deletePlace(); MapEditor.deletePlace();
}; };
window.addEventListener('beforeunload', function (e) {
if (MapEditor.saved) {
return;
}
e.preventDefault();
e.returnValue = '';
});
})(); })();