# Plugins: Entries
# Allow for the first encountered plugin::entries subroutine to override the
# default built-in entries subroutine
-my $tmp; foreach my $plugin ( @plugins ) { $plugins{$plugin} > 0 and $plugin->can('entries') and defined($tmp = $plugin->entries()) and $entries = $tmp and last; }
+foreach my $plugin (@plugins) {
+ if ( $plugins{$plugin} > 0 and $plugin->can('entries') ) {
+ if ( my $tmp = $plugin->entries() ) {
+ $entries = $tmp;
+ last;
+ }
+ }
+}
my ($files, $indexes, $others) = &$entries();
%indexes = %$indexes;
%files = %$files; %others = ref $others ? %$others : ();
# Plugins: Filter
- foreach my $plugin ( @plugins ) { $plugins{$plugin} > 0 and $plugin->can('filter') and $entries = $plugin->filter(\%files, \%others) }
+ foreach my $plugin ( @plugins ) {
+ if ($plugins{$plugin} > 0 and $plugin->can('filter')){ $entries = $plugin->filter(\%files, \%others); }
+ }
my %f = %files;
if ( $currentdir =~ /(.*?)([^\/]+)\.(.+)$/ and $2 ne 'index' ) {
$currentdir = "$1$2.$file_extension";
- $files{"$datadir/$1$2.$file_extension"} and %f = ( "$datadir/$1$2.$file_extension" => $files{"$datadir/$1$2.$file_extension"} );
+ %f = ( "$datadir/$currentdir" => $files{"$datadir/$currentdir"} ) if $files{"$datadir/$currentdir"};
}
else {
$currentdir =~ s!/index\..+$!!;
my $date = (&$template($path,'date',$flavour));
# Plugins: Date
- foreach my $plugin ( @plugins ) { $plugins{$plugin} > 0 and $plugin->can('date') and $entries = $plugin->date($currentdir, \$date, $files{$path_file}, $dw,$mo,$mo_num,$da,$ti,$yr) }
+ foreach my $plugin (@plugins) {
+ if ( $plugins{$plugin} > 0 and $plugin->can('date') ) {
+ $entries
+ = $plugin->date( $currentdir, \$date, $files{$path_file}, $dw,
+ $mo, $mo_num, $da, $ti, $yr );
+ }
+ }
$date = &$interpolate($date);