Only hardcode http://osm.org/ in shortlinks when we're at

openstreetmap.org (according to window.location.hostname).

Solves ticket:1994 and my headaches when trying to hack railsport
locally.
This commit is contained in:
Ævar Arnfjörð Bjarmason 2009-06-27 16:07:53 +00:00
parent 34b147266c
commit 05bc2b70ed

View file

@ -92,17 +92,36 @@ function updatelinks(lon,lat,zoom,layers,minlon,minlat,maxlon,maxlat, obj_type,
if (node) {
var args = getArgs(node.href);
var code = makeShortCode(lat, lon, zoom);
var prefix = shortlinkPrefix();
// little hack. may the gods of hardcoding please forgive me, or
// show me the Right way to do it.
if (layers && (layers != "B000FTF")) {
args["layers"] = layers;
node.href = setArgs("http://osm.org/go/" + code, args);
node.href = setArgs(prefix + "/go/" + code, args);
} else {
node.href = "http://osm.org/go/" + code;
node.href = prefix + "/go/" + code;
}
}
}
/*
* This is a hack to hardcode opestreetmap.org -> osm.org in the
* shortlink
*/
function shortlinkPrefix() {
var hostname = window.location.hostname;
var normalized_hostname = hostname.replace(/^:www\./i,'');
var prefix = '';
if (normalized_hostname.match(/^openstreetmap\.org$/i)) {
prefix = "http://osm.org";
}
return prefix;
}
function getArgs(url) {
var args = new Object();
var querystart = url.indexOf("?");