+
+ node = document.getElementById("historyanchor");
+ if (node) {
+ if (zoom >= 11) {
+ var args = new Object();
+ //set bbox param from 'extents' object
+ if (typeof minlon == "number" &&
+ typeof minlat == "number" &&
+ typeof maxlon == "number" &&
+ typeof maxlat == "number") {
+
+ minlon = Math.round(minlon * decimals) / decimals;
+ minlat = Math.round(minlat * decimals) / decimals;
+ maxlon = Math.round(maxlon * decimals) / decimals;
+ maxlat = Math.round(maxlat * decimals) / decimals;
+ args.bbox = minlon + "," + minlat + "," + maxlon + "," + maxlat;
+ }
+
+ node.href = setArgs("/history", args);
+ node.style.fontStyle = 'normal';
+ } else {
+ node.href = 'javascript:alert("zoom in to see editing history");';
+ node.style.fontStyle = 'italic';
+ }
+ }
+
+ node = document.getElementById("shortlinkanchor");
+ if (node) {
+ var args = getArgs(node.href);
+ var code = makeShortCode(lat, lon, zoom);
+ var prefix = shortlinkPrefix();
+
+ // Add ?{node,way,relation}=id to the arguments
+ if (obj_type && obj_id) {
+ args[obj_type] = obj_id;
+ }
+
+ // 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(prefix + "/go/" + code, args);
+ } else {
+ 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;