diff options
author | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2006-09-03 19:53:23 +0000 |
---|---|---|
committer | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2006-09-03 19:53:23 +0000 |
commit | 92065444d982a443d3862f9ce5094bd32faffb85 (patch) | |
tree | 5eb504ad535f880a1ddaad3c27224d31a2c24d5f /IkiWiki/Rcs | |
parent | 22b414ddc0d0e35ad94c60c96a8ac2c8c5e267d5 (diff) | |
download | ikiwiki-92065444d982a443d3862f9ce5094bd32faffb85.tar ikiwiki-92065444d982a443d3862f9ce5094bd32faffb85.tar.gz |
* Simplify the data structure returned by rcs_recentchanges to avoid
each rcs plugin needing to form complex strings on its own.
Diffstat (limited to 'IkiWiki/Rcs')
-rw-r--r-- | IkiWiki/Rcs/Stub.pm | 29 | ||||
-rw-r--r-- | IkiWiki/Rcs/git.pm | 7 | ||||
-rw-r--r-- | IkiWiki/Rcs/svn.pm | 6 |
3 files changed, 26 insertions, 16 deletions
diff --git a/IkiWiki/Rcs/Stub.pm b/IkiWiki/Rcs/Stub.pm index ffd9e1865..01696a8b0 100644 --- a/IkiWiki/Rcs/Stub.pm +++ b/IkiWiki/Rcs/Stub.pm @@ -32,15 +32,26 @@ sub rcs_add ($) { } sub rcs_recentchanges ($) { - # Examine the RCS history and generate a data structure for - # the recentchanges page. - # This structure is a list of items, each item is a hash reference - # representing one change to the repo. - # The hash has keys user (a link to the user making the change), - # committype (web or the name of the rcs), when (when the change - # happened, relative to the current time), message (a reference - # to an array of lines for the commit message), and pages (a - # reference to an array of links to the pages that were changed). + # Examine the RCS history and generate a list of recent changes. + # The data structure returned for each change is: + # { + # user => # name of user who made the change, + # committype => # either "web" or the name of the rcs, + # when => # time when the change was made, + # message => [ + # "commit message line", + # "commit message line", + # "...", + # ], + # pages => [ + # { + # page => # name of page changed, + # diffurl => # optional url to a diff showing + # # the changes, + # } + # # repeat for each page changed in this commit + # ], + # } } sub rcs_notify () { diff --git a/IkiWiki/Rcs/git.pm b/IkiWiki/Rcs/git.pm index 271c27af6..a156f0b4e 100644 --- a/IkiWiki/Rcs/git.pm +++ b/IkiWiki/Rcs/git.pm @@ -345,7 +345,6 @@ sub rcs_recentchanges ($) { #{{{ eval q{use CGI 'escapeHTML'}; eval q{use Date::Parse}; - eval q{use Time::Duration}; my ($sha1, $type, $when, $diffurl, $user, @pages, @message, @rets); INFO: foreach my $ci (git_commit_info('HEAD', $num)) { @@ -356,7 +355,7 @@ sub rcs_recentchanges ($) { #{{{ $sha1 = $ci->{'sha1'}; $type = "web"; - $when = concise(ago(time - $ci->{'author_epoch'})); + $when = time - $ci->{'author_epoch'}; foreach my $bit (@{ $ci->{'details'} }) { my $diffurl = $config{'diffurl'}; @@ -368,7 +367,7 @@ sub rcs_recentchanges ($) { #{{{ $diffurl =~ s/\[\[sha1_to\]\]/$bit->{'sha1_to'}/go; push @pages, { - link => htmllink("", "", pagename($file), 1), + page => pagename($file), diffurl => $diffurl, }, } @@ -386,7 +385,7 @@ sub rcs_recentchanges ($) { #{{{ push @rets, { rev => $sha1, - user => htmllink("", "", $user, 1), + user => $user, committype => $type, when => $when, message => [@message], diff --git a/IkiWiki/Rcs/svn.pm b/IkiWiki/Rcs/svn.pm index 2d203c7ca..9345b7fd2 100644 --- a/IkiWiki/Rcs/svn.pm +++ b/IkiWiki/Rcs/svn.pm @@ -153,7 +153,7 @@ sub rcs_recentchanges ($) { #{{{ my $rev = $logentry->{revision}; my $user = $logentry->{author}; - my $when=concise(ago(time - str2time($logentry->{date}, 'UTC'))); + my $when=time - str2time($logentry->{date}, 'UTC'); foreach my $msgline (split(/\n/, $logentry->{msg})) { push @message, { line => escapeHTML($msgline) }; @@ -177,12 +177,12 @@ sub rcs_recentchanges ($) { #{{{ $diffurl=~s/\[\[r1\]\]/$rev - 1/eg; $diffurl=~s/\[\[r2\]\]/$rev/g; push @pages, { - link => htmllink("", "", pagename($file), 1), + page => pagename($file), diffurl => $diffurl, } if length $file; } push @ret, { rev => $rev, - user => htmllink("", "", $user, 1), + user => $user, committype => $committype, when => $when, message => [@message], |