From: jk@blackdown.de (Jürgen Kreileder)
To: "Jakub Narębski" <jnareb@gmail.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCH 3/4] gitweb: Don't append ';js=(0|1)' to external links
Date: Tue, 09 Apr 2013 19:54:16 +0200 [thread overview]
Message-ID: <m2mwt7a8tz.fsf@zahir.fritz.box> (raw)
In-Reply-To: <516430D5.6030201@gmail.com> ("Jakub \=\?utf-8\?Q\?Nar\=C4\=99bski\?\= \=\?utf-8\?Q\?\=22's\?\= message of "Tue, 09 Apr 2013 17:16:37 +0200")
Jakub Narębski <jnareb@gmail.com> 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@blackdown.de>
>> ---
>> 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');
>> }
>>
next prev parent reply other threads:[~2013-04-09 17:54 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-08 20:09 [PATCH 3/4] gitweb: Don't append ';js=(0|1)' to external links Jürgen Kreileder
2013-04-09 15:16 ` Jakub Narębski
2013-04-09 17:54 ` Jürgen Kreileder [this message]
2013-04-09 17:59 ` Jakub Narębski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=m2mwt7a8tz.fsf@zahir.fritz.box \
--to=jk@blackdown.de \
--cc=git@vger.kernel.org \
--cc=jnareb@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.