From: Jakub Narebski <jnareb@gmail.com>
To: Kevin Cernekee <cernekee@gmail.com>
Cc: Junio C Hamano <gitster@pobox.com>, git@vger.kernel.org
Subject: [PATCH v3 2/3] gitweb: introduce localtime feature
Date: Fri, 18 Mar 2011 15:40:01 +0100 [thread overview]
Message-ID: <201103181540.03431.jnareb@gmail.com> (raw)
In-Reply-To: <e160457138c1166ffa6faf1c58ea170e@localhost>
From: Kevin Cernekee <cernekee@gmail.com>
With this feature enabled, all timestamps are shown in the local
timezone instead of GMT. The timezone is taken from the appropriate
timezone string stored in the commit object.
This is useful if most of contributors (to a project) are based in a
single office, all within the same timezone. In such case local time
is more useful than GMT / UTC time that gitweb uses by default, and
which is better choice for geographically scattered contributors.
This change does not affect relative timestamps (e.g. "5 hours ago"),
and neither does it affect 'patch' and 'patches' views which already
use localtime because they are generated by "git format-patch".
Affected views include:
* 'summary' view, "last change" field (commit time from latest change)
* 'log' view, author time
* 'commit' and 'commitdiff' views, author/committer time
* 'tag' view, tagger time
In the case of 'commit', 'commitdiff' and 'tag' views gitweb used to
print both GMT time and time in timezone of author/tagger/comitter,
marking localtime with "atnight" as appropriate; after this commit
gitweb shows only local time. Marking localtime with "atnight" when
needed is left for subsequent commit.
Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
Signed-off-by: Jakub Narebski <jnareb@gmail.com>
---
Changes from original v2 version by Kevin Cernekee:
* Expanded commit message, explaining "whys" behind introducing this new
feature (why and when can it be useful), as per
http://thread.gmane.org/gmane.comp.version-control.git/169096/focus=169284
* Minor whitespace changes
gitweb/gitweb.perl | 21 ++++++++++++++++++++-
1 files changed, 20 insertions(+), 1 deletions(-)
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl
index 3960d34..1df3652 100755
--- a/gitweb/gitweb.perl
+++ b/gitweb/gitweb.perl
@@ -504,6 +504,19 @@ our %feature = (
'sub' => sub { feature_bool('remote_heads', @_) },
'override' => 0,
'default' => [0]},
+
+ # Use the author/commit localtime rather than GMT for all timestamps.
+ # Disabled by default.
+
+ # To enable system wide have in $GITWEB_CONFIG
+ # $feature{'localtime'}{'default'} = [1];
+ # To have project specific config enable override in $GITWEB_CONFIG
+ # $feature{'localtime'}{'override'} = 1;
+ # and in project config gitweb.localtime = 0|1;
+ 'localtime' => {
+ 'sub' => sub { feature_bool('localtime', @_) },
+ 'override' => 0,
+ 'default' => [0]},
);
sub gitweb_get_feature {
@@ -2930,6 +2943,12 @@ sub parse_date {
$date{'iso-tz'} = sprintf("%04d-%02d-%02d %02d:%02d:%02d %s",
1900+$year, $mon+1, $mday,
$hour, $min, $sec, $tz);
+
+ if (gitweb_check_feature('localtime')) {
+ $date{'rfc2822'} = sprintf "%s, %d %s %4d %02d:%02d:%02d $tz",
+ $days[$wday], $mday, $months[$mon],
+ 1900+$year, $hour ,$min, $sec;
+ }
return %date;
}
@@ -3992,7 +4011,7 @@ sub git_print_authorship_rows {
"</td></tr>\n" .
"<tr>" .
"<td></td><td> $wd{'rfc2822'}";
- print_local_time(%wd);
+ print_local_time(%wd) if !gitweb_check_feature('localtime');
print "</td>" .
"</tr>\n";
}
--
1.7.3
next prev parent reply other threads:[~2011-03-18 14:40 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-17 19:38 [PATCH v2 1/3] gitweb: fix #patchNN anchors when path_info is enabled Kevin Cernekee
2011-03-17 19:38 ` [PATCH v2 2/3] gitweb: introduce localtime feature Kevin Cernekee
2011-03-18 14:40 ` Jakub Narebski [this message]
2011-03-18 18:24 ` [PATCH v3 " Junio C Hamano
2011-03-18 21:58 ` Jakub Narebski
2011-03-18 22:42 ` Junio C Hamano
2011-03-17 19:38 ` [PATCH 3/3] gitweb: show alternate author/committer times Kevin Cernekee
2011-03-18 17:46 ` [PATCH 3/3 (alternate)] gitweb: Mark "atnight" author/committer times also for 'localtime' Jakub Narebski
2011-03-18 19:07 ` Kevin Cernekee
2011-03-18 20:48 ` Junio C Hamano
2011-03-18 22:28 ` Jakub Narebski
2011-03-19 1:25 ` Junio C Hamano
2011-03-18 12:59 ` [PATCH v3 1/3] gitweb: fix #patchNN anchors when path_info is enabled Jakub Narebski
2011-03-18 15:25 ` Kevin Cernekee
2011-03-18 16:00 ` [PATCH v3 (amend) " Jakub Narebski
2011-03-18 16:57 ` [PATCH v3 " Junio C Hamano
2011-03-18 17:18 ` Jakub Narebski
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=201103181540.03431.jnareb@gmail.com \
--to=jnareb@gmail.com \
--cc=cernekee@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).