Advertisement
iav

OSM History Viewer link (osmhistory.appspot.com)

iav
Oct 18th, 2012
164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // ==UserScript==
  2. // @name           OSM History Viewer link (osmhistory.appspot.com)
  3. // @namespace      osmhistory.appspot.com
  4. // @description    Adds links to OSM History Viewer on OpenStreetMap relation and changeset pages.
  5. // @include        http://www.openstreetmap.org/browse/*
  6. // ==/UserScript==
  7.  
  8. var trans = {
  9.     "relation" : {
  10.         "de" : "Tateranzeige im OSM History Viewer",
  11.         "en" : "Blame in OSM History Viewer"
  12.     },
  13.     "changeset" : {
  14.         "de" : "Im OSM History Viewer anzeigen",
  15.         "en" : "View in OSM History Viewer"
  16.     }
  17. };
  18.  
  19. var m = location.pathname.match(/^\/browse\/(changeset|relation)\/(\d+)/);
  20. if(m)
  21. {
  22.     var type = m[1];
  23.     var id = m[2];
  24.     var lang = unsafeWindow.OpenLayers.Lang.getCode();
  25.  
  26.     var hvLink = document.createElement("a");
  27.     hvLink.href = "http://osmhistory.appspot.com/" + (type == "relation" ? "blame" : "changeset") + "/" + encodeURIComponent(id);
  28.     hvLink.appendChild(document.createTextNode(trans[type][lang] == null ? trans[type]["en"] : trans[type][lang]));
  29.  
  30.     var largerMapNext = document.getElementById(type == "relation" ? "object_larger_map" : "area_larger_map").nextSibling;
  31.     largerMapNext.parentNode.insertBefore(document.createElement("br"), largerMapNext);
  32.     largerMapNext.parentNode.insertBefore(hvLink, largerMapNext);
  33. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement