use Debbugs::Common qw(getparsedaddrs);
use Params::Validate qw(validate_with :types);
use Debbugs::Config qw(:config);
+use Debbugs::Status qw(splitpackages);
use Mail::Address;
use POSIX qw(ceil);
use Storable qw(dclone);
-my %URL_PARAMS = ();
+our %URL_PARAMS = ();
BEGIN{
qw(maybelink htmlize_addresslinks htmlize_maintlinks),
],
util => [qw(cgi_parameters quitcgi),
- qw(getmaintainers getpseudodesc splitpackages)
+ qw(getpseudodesc)
],
#status => [qw(getbugstatus)],
);
=cut
sub version_url{
- my ($package,$found,$fixed) = @_;
+ my ($package,$found,$fixed,$width,$height) = @_;
my $url = Debbugs::URI->new('version.cgi?');
$url->query_form(package => $package,
found => $found,
fixed => $fixed,
+ (defined $width)?(width => $width):(),
+ (defined $height)?(height => $height):(),
+ (defined $width or defined $height)?(collapse => 1):(),
);
return $url->as_string;
}
sub html_escape{
my ($string) = @_;
- return HTML::Entities::encode_entities($string)
+ return HTML::Entities::encode_entities($string,q(<>&"'));
}
=head2 cgi_parameters
}
-my %common_bugusertags;
-
-
-
=head HTML
=head2 htmlize_bugs
return $result;
}
-# Split a package string from the status file into a list of package names.
-sub splitpackages {
- my $pkgs = shift;
- return unless defined $pkgs;
- return map lc, split /[ \t?,()]+/, $pkgs;
-}
-
-
=head2 htmlize_packagelinks
htmlize_packagelinks
}
-my $_maintainer;
-my $_maintainer_rev;
-sub getmaintainers {
- return $_maintainer if $_maintainer;
- my %maintainer;
- my %maintainer_rev;
- for my $file (@config{qw(maintainer_file maintainer_file_override)}) {
- next unless defined $file;
- my $maintfile = new IO::File $file,'r' or
- &quitcgi("Unable to open $file: $!");
- while(<$maintfile>) {
- next unless m/^(\S+)\s+(\S.*\S)\s*$/;
- ($a,$b)=($1,$2);
- $a =~ y/A-Z/a-z/;
- $maintainer{$a}= $b;
- for my $maint (map {lc($_->address)} getparsedaddrs($b)) {
- push @{$maintainer_rev{$maint}},$a;
- }
- }
- close($maintfile);
- }
- $_maintainer = \%maintainer;
- $_maintainer_rev = \%maintainer_rev;
- return $_maintainer;
-}
-sub getmaintainers_reverse{
- return $_maintainer_rev if $_maintainer_rev;
- getmaintainers();
- return $_maintainer_rev;
-}
-
+our $_maintainer;
+our $_maintainer_rev;
-my $_pseudodesc;
+our $_pseudodesc;
sub getpseudodesc {
return $_pseudodesc if $_pseudodesc;
my %pseudodesc;