%renderedfiles %pagesources %depends %hooks %forcerebuild};
sub defaultconfig () { #{{{
- wiki_file_prune_regexp => qr{((^|/).svn/|\.\.|^\.|\/\.|\.html?$|\.rss$)},
+ wiki_file_prune_regexp => qr{((^|/).svn/|\.\.|^\.|\/\.|\.x?html?$|\.rss$)},
wiki_link_regexp => qr/\[\[(?:([^\]\|]+)\|)?([^\s\]]+)\]\]/,
wiki_processor_regexp => qr/\[\[(\w+)\s+([^\]]*)\]\]/,
wiki_file_regexp => qr/(^[-[:alnum:]_.:\/+]+$)/,
my $text_ref = shift;
$$text_ref=&Encode::decode_utf8($$text_ref);
},
- filename => "$config{templatedir}/$filename", @_;
+ filename => "$config{templatedir}/$filename",
+ loop_context_vars => 1,
+ @_;
} #}}}
sub template ($;@) { #{{{
elsif ($word eq "(" || $word eq ")" || $word eq "!") {
$code.=" ".$word;
}
- elsif ($word =~ /^(link|backlink|creation_month|creation_year|creation_day)\((.+)\)$/) {
+ elsif ($word =~ /^(link|backlink|created_before|created_after|creation_month|creation_year|creation_day)\((.+)\)$/) {
$code.=" match_$1(\$page, ".safequote($2).")";
}
else {
match_link(pop, pop);
} #}}}
+sub match_created_before ($$) { #{{{
+ my $page=shift;
+ my $testpage=shift;
+
+ if (exists $pagectime{$testpage}) {
+ return $pagectime{$page} < $pagectime{$testpage};
+ }
+ else {
+ return 0;
+ }
+} #}}}
+
+sub match_created_after ($$) { #{{{
+ my $page=shift;
+ my $testpage=shift;
+
+ if (exists $pagectime{$testpage}) {
+ return $pagectime{$page} > $pagectime{$testpage};
+ }
+ else {
+ return 0;
+ }
+} #}}}
+
sub match_creation_day ($$) { #{{{
- return if (gmtime($pagectime{shift()}))[3] == shift;
+ return ((gmtime($pagectime{shift()}))[3] == shift);
} #}}}
sub match_creation_month ($$) { #{{{
- return if (gmtime($pagectime{shift()}))[4] + 1 == shift;
+ return ((gmtime($pagectime{shift()}))[4] + 1 == shift);
} #}}}
sub match_creation_year ($$) { #{{{
- return if (gmtime($pagectime{shift()}))[5] + 1900 == shift;
+ return ((gmtime($pagectime{shift()}))[5] + 1900 == shift);
} #}}}
-
1