sub detect_user_agent {
my $userAgent = $ENV{HTTP_USER_AGENT};
+ return { 'name' => 'unknown' } unless defined $userAgent;
return { 'name' => 'links' } if ( $userAgent =~ m,^ELinks,);
return { 'name' => 'lynx' } if ( $userAgent =~ m,^Lynx,);
return { 'name' => 'wget' } if ( $userAgent =~ m,^Wget,);
return { 'name' => 'ie' } if ( $userAgent =~ m,^.*MSIE.*,);
return { 'name' => 'unknown' };
}
+
my %field_match = (
'subject' => \&contains_field_match,
'tags' => sub {
} elsif (length($status{done})) {
$result .= ";\n<strong>Done:</strong> " . htmlsanit($status{done});
$days = ceil($debbugs::gRemoveAge - -M buglog($status{id}));
- $result .= ";\n<strong>Will Be Archived:</strong>" . ( $days == 0 ? " today" : $days == 1 ? " in $days day" : " in $days days" );
+ if ($days >= 0) {
+ $result .= ";\n<strong>Will be archived:</strong>" . ( $days == 0 ? " today" : $days == 1 ? " in $days day" : " in $days days" );
+ } else {
+ $result .= ";\n<strong>Archived</strong>";
+ }
}
unless (length($status{done})) {
sub bugmatches(\%\%) {
my ($hash, $status) = @_;
- while ((my ($key, $value) = each(%$hash))) {
+ foreach my $key( keys( %$hash ) ) {
+ my $value = $hash->{$key};
my $sub = $field_match{$key};
return 1 if ($sub->($key, $value, $status));
}
}
sub bugfilter($%) {
my ($bug, %status) = @_;
- local (%seenmerged);
+ our (%seenmerged);
if (%common_include) {
return 1 if (!bugmatches(%common_include, %status));
}
for ( my $i = 0; $i < @order; $i++ ) {
my $order = $order[ $i ];
next unless defined $section{$order};
- my $count = $count{"_$order"};
- my $bugs = $count == 1 ? "bug" : "bugs";
- $result .= "<HR><H2><a name=\"$order\"></a>$headers[$i] ($count $bugs)</H2>\n";
+ if ($common{show_list_header}) {
+ my $count = $count{"_$order"};
+ my $bugs = $count == 1 ? "bug" : "bugs";
+ $result .= "<HR><H2><a name=\"$order\"></a>$headers[$i] ($count $bugs)</H2>\n";
+ } else {
+ $result .= "<HR><H2>$headers[$i]</H2>\n";
+ }
$result .= "<UL>\n";
$result .= $section{$order};
$result .= "</UL>\n";
$result = $header . $result if ( $common{show_list_header} );
$result .= $debbugs::gHTMLExpireNote if $gRemoveAge and $anydone;
- $result .= $footer if ( $common{show_list_footer} );
+ $result .= "<hr>" . $footer if ( $common{show_list_footer} );
return $result;
}