use File::Spec;
use IkiWiki;
-sub linkify ($$) { #{{{
+sub linkify ($$$) { #{{{
+ my $lpage=shift;
my $page=shift;
my $content=shift;
$content =~ s{(\\?)$config{wiki_link_regexp}}{
- $2 ? ( $1 ? "[[$2|$3]]" : htmllink($page, titlepage($3), 0, 0, pagetitle($2)))
- : ( $1 ? "[[$3]]" : htmllink($page, titlepage($3)))
+ $2 ? ( $1 ? "[[$2|$3]]" : htmllink($lpage, $page, titlepage($3), 0, 0, pagetitle($2)))
+ : ( $1 ? "[[$3]]" : htmllink($lpage, $page, titlepage($3)))
}eg;
return $content;
$actions++;
}
if ($config{discussion}) {
- $template->param(discussionlink => htmllink($page, "Discussion", 1, 1));
+ $template->param(discussionlink => htmllink($page, $page, "Discussion", 1, 1));
$actions++;
}
parentlinks => [parentlinks($page)],
content => $content,
backlinks => [backlinks($page)],
- mtime => scalar(gmtime($mtime)),
+ mtime => displaytime($mtime),
styleurl => styleurl($page),
);
}
} #}}}
+sub displaytime ($) { #{{{
+ my $time=shift;
+
+ if ($config{timeformat} eq '%c') {
+ return scalar(localtime($time)); # optimisation
+ }
+ else {
+ eval q{use POSIX};
+ return POSIX::strftime($config{timeformat}, localtime($time));
+ }
+} #}}}
+
sub mtime ($) { #{{{
my $file=shift;
$links{$page}=[findlinks($page, $content)];
- $content=linkify($page, $content);
+ $content=linkify($page, $page, $content);
$content=preprocess($page, $content);
$content=htmlize($type, $content);