* Simplify the data structure returned by rcs_recentchanges to avoid
[ikiwiki.git] / IkiWiki / CGI.pm
index 99fc5c0edf71af55e0288bf5b7b14147832aa1b6..6e1efbd69927f1199b0af6ccee45285d8ef7ea81 100644 (file)
@@ -76,12 +76,26 @@ sub cgi_recentchanges ($) { #{{{
        eval q{use Memoize};
        memoize("htmllink");
 
+       eval q{use Time::Duration};
+
+       my $changelog=[rcs_recentchanges(100)];
+       foreach my $change (@$changelog) {
+               $change->{when} = concise(ago($change->{when}));
+               $change->{user} = htmllink("", "", $change->{user}, 1);
+               $change->{pages} = [
+                       map {
+                               $_->{link} = htmllink("", "", $_->{page}, 1);
+                               $_;
+                       } @{$change->{pages}}
+               ];
+       }
+
        my $template=template("recentchanges.tmpl"); 
        $template->param(
                title => "RecentChanges",
                indexlink => indexlink(),
                wikiname => $config{wikiname},
-               changelog => [rcs_recentchanges(100)],
+               changelog => $changelog,
                baseurl => baseurl(),
        );
        print $q->header(-charset => 'utf-8'), $template->output;