X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/0dbd18e2bb685c432d775f186f114cf4f3de3ca4..248d0b863cde44881574ef01b974afeb2cad12e9:/app/assets/javascripts/index.js?ds=sidebyside diff --git a/app/assets/javascripts/index.js b/app/assets/javascripts/index.js index 6f4603923..1cbd97f86 100644 --- a/app/assets/javascripts/index.js +++ b/app/assets/javascripts/index.js @@ -40,11 +40,25 @@ dataType: "html", complete: function(xhr) { clearTimeout(loaderTimeout); + $('#flash').empty(); $('#sidebar_loader').hide(); - $('#sidebar_content').html(xhr.responseText); + + var content = $(xhr.responseText); + if (xhr.getResponseHeader('X-Page-Title')) { - document.title = xhr.getResponseHeader('X-Page-Title'); + var title = xhr.getResponseHeader('X-Page-Title'); + document.title = decodeURIComponent(escape(title)); } + + $('head') + .find('link[type="application/atom+xml"]') + .remove(); + + $('head') + .append(content.filter('link[type="application/atom+xml"]')); + + $('#sidebar_content').html(content.not('link[type="application/atom+xml"]')); + if (callback) { callback(); } @@ -222,16 +236,16 @@ $(document).ready(function () { return page; }; - OSM.Browse = function(map) { + OSM.Browse = function(map, type) { var page = {}; - page.pushstate = page.popstate = function(path, type, id) { + page.pushstate = page.popstate = function(path, id) { OSM.loadSidebarContent(path, function() { - page.load(path, type, id); + page.load(path, id); }); }; - page.load = function(path, type, id) { + page.load = function(path, id) { map.addObject({type: type, id: parseInt(id)}); }; @@ -248,13 +262,16 @@ $(document).ready(function () { "/": OSM.Index(map), "/search": OSM.Search(map), "/export": OSM.Export(map), - "/new_note": OSM.NewNote(map), + "/note/new": OSM.NewNote(map), + "/history/friends": history, + "/history/nearby": history, "/history": history, - "/user/:display_name/edits": history, - "/browse/friends": history, - "/browse/nearby": history, - "/browse/note/:id": OSM.Note(map), - "/browse/:type/:id(/history)": OSM.Browse(map) + "/user/:display_name/history": history, + "/note/:id": OSM.Note(map), + "/node/:id(/history)": OSM.Browse(map, 'node'), + "/way/:id(/history)": OSM.Browse(map, 'way'), + "/relation/:id(/history)": OSM.Browse(map, 'relation'), + "/changeset/:id": OSM.Browse(map, 'changeset') }); OSM.router.load();