# Plugins: Template
# Allow for the first encountered plugin::template subroutine to override the
# default built-in template subroutine
-my $tmp; foreach my $plugin ( @plugins ) { $plugins{$plugin} > 0 and $plugin->can('template') and defined($tmp = $plugin->template()) and $template = $tmp and last; }
+foreach my $plugin (@plugins) {
+ if ( $plugins{$plugin} > 0 and $plugin->can('template') ) {
+ if ( my $tmp = $plugin->template() ) {
+ $template = $tmp;
+ last;
+ }
+ }
+}
# Provide backward compatibility for Blosxom < 2.0rc1 plug-ins
sub load_template {
}
# Plugins: End
-foreach my $plugin ( @plugins ) { $plugins{$plugin} > 0 and $plugin->can('end') and $entries = $plugin->end() }
+foreach my $plugin (@plugins) {
+ if ( $plugins{$plugin} > 0 and $plugin->can('end') ) {
+ $entries = $plugin->end();
+ }
+}
# Generate
sub generate {
%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\..+$!!;
($dw,$mo,$mo_num,$da,$ti,$yr,$utc_offset) = nice_date($files{"$path_file"});
($hr,$min) = split /:/, $ti;
($hr12, $ampm) = $hr >= 12 ? ($hr - 12,'pm') : ($hr, 'am');
- $hr12 =~ s/^0//; $hr12 == 0 and $hr12 = 12;
+ $hr12 =~ s/^0//; if ($hr12 == 0) {$hr12 = 12};
# Only stories from the right date
my($path_info_yr,$path_info_mo_num, $path_info_da) = split /\//, $date;
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);
- $curdate ne $date and $curdate = $date and $output .= $date;
+ if ( $date && $curdate ne $date ) {
+ $curdate = $date;
+ $output .= $date;
+ }
use vars qw/ $title $body $raw /;
if (-f "$path_file" && $fh->open("< $path_file")) {