X-Git-Url: https://git.deb.at/?a=blobdiff_plain;f=lib%2FPackages%2FHTML.pm;h=fb16d2fdc66837214586de6ceda1648e747bfc3f;hb=8d29452530e823cbcd07a30898e98abe565a046c;hp=859467a9da06daf65cf19497c5fc2d5cb9ab6b00;hpb=56d4b3ed57e20359e5ea46feabb850cf4a94caf2;p=deb%2Fpackages.git diff --git a/lib/Packages/HTML.pm b/lib/Packages/HTML.pm index 859467a..fb16d2f 100644 --- a/lib/Packages/HTML.pm +++ b/lib/Packages/HTML.pm @@ -8,7 +8,7 @@ use URI::Escape; use HTML::Entities; use Locale::gettext; -use Packages::CGI (); +use Packages::CGI qw(make_url make_search_url); use Packages::Search qw( read_entry_simple ); use Packages::Config qw( :all ); @@ -82,12 +82,14 @@ sub pkg_list { my $suite = $opts->{suite}[0]; my $str = ""; - foreach my $p ( @$pkgs ) { + foreach my $p ( sort @$pkgs ) { + # we don't deal with virtual packages here because for the + # current uses of this function this isn't needed my $short_desc = (read_entry_simple( $packages, $p, $opts->{h_archives}, $suite))->[-1]; if ( $short_desc ) { - $str .= "
$p
\n". + $str .= "
undef})."\">$p
\n". "\t
$short_desc
\n"; } else { $str .= "
$p
\n\t
"._g("Not available")."
\n"; @@ -125,11 +127,8 @@ sub pmoreinfo { my $src_dir = $page->get_src('directory'); if ($info{sourcedownload}) { my $files = $page->get_src( 'files' ); - my $path = (@{$opts->{archive}} >1) ? - $suite : - "$suite/$opts->{archive}[0]"; $str .= _g( "Source Package:" ); - $str .= " $source, ". + $str .= " 'source'})."\">$source, ". _g( "Download" ).":\n"; unless (defined($files) and @$files) { @@ -137,7 +136,7 @@ sub pmoreinfo { } else { foreach( @$files ) { my ($src_file_md5, $src_file_size, $src_file_name) = split /\s/o, $_; - for ($page->get_newest('archive')) { + for ("$suite/".$page->get_newest('archive')) { /security/o && do { $str .= "{security}/$src_dir/$src_file_name\">["; last }; /volatile/o && do { @@ -145,7 +144,7 @@ sub pmoreinfo { /backports/o && do { $str .= "{backports}/$src_dir/$src_file_name\">["; last }; /non-us/io && do { - $str .= "{nonus_site}/$src_dir/$src_file_name\">["; last }; + $str .= "{'non-US'}/$src_dir/$src_file_name\">["; last }; $str .= "{us}/$src_dir/$src_file_name\">["; } if ($src_file_name =~ /dsc$/) { @@ -216,13 +215,11 @@ sub pmoreinfo { } sub dep_item { - my ( $link, $name, $info, $desc ) = @_; - my $post_link = ''; - if ($link) { - $link = ""; + my ( $suite, $name, $info, $desc ) = @_; + my ($link, $post_link) = ('', ''); + if ($suite) { + $link = "$suite})."\">"; $post_link = ''; - } else { - $link = ''; } if ($info) { $info = " $info"; @@ -238,6 +235,20 @@ sub dep_item { return "$link$name$post_link$info$desc"; } # end dep_item +sub provides_string { + my ($suite, $entry, $also) = @_; + my %tmp = map { $_ => 1 } split /\s/, $entry; + my @provided_by = keys %tmp; # weed out duplicates + my $short_desc = $also ? _g("also a virtual package provided by ") + : _g("virtual package provided by "); + if (@provided_by < 10) { + $short_desc .= join( ', ',map { "$suite})."\">$_" } @provided_by); + } else { + $short_desc .= sprintf( _g("%s packages"), scalar(@provided_by)); + } + return $short_desc; +} + sub print_deps { my ( $packages, $opts, $pkg, $relations, $type) = @_; my %dep_type = ('depends' => 'dep', 'recommends' => 'rec', @@ -246,10 +257,9 @@ sub print_deps { my $res = "