X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/01d812decb7e3f3b2159f61e21448876d69baaa7..refs/heads/bootstrap:/IkiWiki/Plugin/autoindex.pm?ds=sidebyside diff --git a/IkiWiki/Plugin/autoindex.pm b/IkiWiki/Plugin/autoindex.pm index 825633d5a..c443f01d2 100644 --- a/IkiWiki/Plugin/autoindex.pm +++ b/IkiWiki/Plugin/autoindex.pm @@ -7,6 +7,7 @@ use IkiWiki 3.00; use Encode; sub import { + hook(type => "checkconfig", id => "autoindex", call => \&checkconfig); hook(type => "getsetup", id => "autoindex", call => \&getsetup); hook(type => "refresh", id => "autoindex", call => \&refresh); IkiWiki::loadplugin("transient"); @@ -28,6 +29,12 @@ sub getsetup () { }, } +sub checkconfig () { + if (! defined $config{autoindex_commit}) { + $config{autoindex_commit} = 1; + } +} + sub genindex ($) { my $page=shift; my $file=newpagefile($page, $config{default_pageext}); @@ -39,6 +46,7 @@ sub genindex ($) { my $dir = $config{srcdir}; if (! $config{autoindex_commit}) { + no warnings 'once'; $dir = $IkiWiki::Plugin::transient::transientdir; } @@ -64,7 +72,6 @@ sub refresh () { my (%pages, %dirs); foreach my $dir ($config{srcdir}, @{$config{underlaydirs}}, $config{underlaydir}) { - next if $dir eq $IkiWiki::Plugin::transient::transientdir; chdir($dir) || next; find({ @@ -74,6 +81,7 @@ sub refresh () { $file=~s/^\.\/?//; return unless length $file; if (IkiWiki::file_pruned($file)) { + no warnings 'once'; $File::Find::prune=1; } elsif (! -l $_) { @@ -83,7 +91,7 @@ sub refresh () { if (! -d _) { $pages{pagename($f)}=1; } - elsif ($dir eq $config{srcdir}) { + elsif ($dir eq $config{srcdir} || ! $config{autoindex_commit}) { $dirs{$f}=1; } }