Jakub Narębski <jnareb@xxxxxxxxx> writes: > Jürgen Kreileder wrote: > >> Don't add js parameters to links outside of gitweb itself. > > Hmmm... this limits adding ';js=(0|1)' to only links which begin with > $my_url, i.e. absolute links beginning with gitweb's base URL. > > Wouldn't that mean that most internal gitweb-generated links wouldn't > get ';js=(0|1)'? href(..., -full => 1) is not the default... No, link.href is always absolute in JavaScript - even if the emitted URL was relative. Old: https://git.blackdown.de/old.cgi?p=contactalbum.git;a=summary;js=1 New: https://git.blackdown.de/?p=contactalbum.git;a=summary;js=1 With the old version the external links in the description got ';js=1' appended. With the new version, ';js=1' isn't on those links. Other links are the same in both versions. >> Signed-off-by: Jürgen Kreileder <jk@xxxxxxxxxxxx> >> --- >> gitweb/gitweb.perl | 2 +- >> gitweb/static/js/javascript-detection.js | 4 ++-- >> 2 files changed, 3 insertions(+), 3 deletions(-) >> >> diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl >> index 1309196..f0912d7 100755 >> --- a/gitweb/gitweb.perl >> +++ b/gitweb/gitweb.perl >> @@ -4165,7 +4165,7 @@ sub git_footer_html { >> print qq!<script type="text/javascript">\n!. >> qq!window.onload = function () {\n!; >> if (gitweb_check_feature('javascript-actions')) { >> - print qq! fixLinks();\n!; >> + print qq! fixLinks('$my_url');\n!; >> } >> if ($jstimezone && $tz_cookie && $datetime_class) { >> print qq! var tz_cookie = { name: '$tz_cookie', expires: 14, path: '/' };\n!. # in days >> diff --git a/gitweb/static/js/javascript-detection.js b/gitweb/static/js/javascript-detection.js >> index fa2596f..36964ad 100644 >> --- a/gitweb/static/js/javascript-detection.js >> +++ b/gitweb/static/js/javascript-detection.js >> @@ -29,11 +29,11 @@ var jsExceptionsRe = /[;?]js=[01](#.*)?$/; >> * >> * @globals jsExceptionsRe >> */ >> -function fixLinks() { >> +function fixLinks(baseurl) { >> var allLinks = document.getElementsByTagName("a") || document.links; >> for (var i = 0, len = allLinks.length; i < len; i++) { >> var link = allLinks[i]; >> - if (!jsExceptionsRe.test(link)) { >> + if (!jsExceptionsRe.test(link) && !link.href.indexOf(baseurl)) { >> link.href = link.href.replace(/(#|$)/, >> (link.href.indexOf('?') === -1 ? '?' : ';') + 'js=1$1'); >> } >> -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html