From 3ea9f63c4a117d6925ab06ad29abcb63a8953168 Mon Sep 17 00:00:00 2001 From: Gabriel Scherer Date: Sun, 19 Nov 2017 13:47:04 +0100 Subject: [PATCH] allow opening package logs in a new tab The existing Javascript frontend does not allow to open package logs in new browser tabs, because it uses a fake URL to link to the logs that just runs Javascript to update the page state. This patch uses a real URL instead, leading to a page in the desired state. --- tools/opam-builder/files/opam-builder.js | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/tools/opam-builder/files/opam-builder.js b/tools/opam-builder/files/opam-builder.js index e04c600..e551905 100644 --- a/tools/opam-builder/files/opam-builder.js +++ b/tools/opam-builder/files/opam-builder.js @@ -727,11 +727,11 @@ function get_version_link(text, /* we need to create a different url for every callback, so we must create a new scope. */ - a.href = "javascript:swap_to_package('" + + a.href = url_of_package( timestamp_date + '-' + commit_name + '-' + switch_name + '.files/' + - version_name + ".json')"; + version_name + ".json"); a.appendChild(text); return a; } @@ -797,6 +797,15 @@ function swap_to_package(url) page_update_view( s ); } +function url_of_package(json_url) +{ + var s = object_of_state(); + s.package_json_url = json_url; + s.show_table = 1; + var url = update_url_from_state( window.location.pathname, s ); + return url; +} + function swap_diff() { console.log("swap_diff");