]> git.deb.at Git - deb/packages.git/blobdiff - lib/Packages/DoShow.pm
Show debtags if available
[deb/packages.git] / lib / Packages / DoShow.pm
index 6852c13a657c9033c00b913385f6d060761893f4..5b22552f348a79906045128eb63ab589df46c331 100644 (file)
@@ -1,6 +1,7 @@
 package Packages::DoShow;
 
 use strict;
+use warnings;
 
 use POSIX;
 use URI::Escape;
@@ -69,7 +70,7 @@ sub do_show {
 
        unless (@results || @non_results ) {
            fatal_error( _g( "No such package." )."<br>".
-                        sprintf( _g( '<a href="%s">Search for the package</a>' ), "$SEARCH_URL/$pkg" ) );
+                        sprintf( _g( '<a href="%s">Search for the package</a>' ), make_search_url('','keywords='.uri_escape($pkg)) ) );
        } else {
            my %all_suites;
            foreach (@results, @non_results) {
@@ -81,7 +82,7 @@ sub do_show {
                if ($suite eq $_) {
                    $$menu .= "[ <strong>$_</strong> ] ";
                } else {
-                   $$menu .= "[ <a href=\"".make_url($encodedpkg,'',{suite=>$suite})."\">$_</a> ] ";
+                   $$menu .= "[ <a href=\"".make_url($encodedpkg,'',{suite=>$_})."\">$_</a> ] ";
                }
            }
            $$menu .= '<br>';
@@ -121,6 +122,7 @@ sub do_show {
                        debug( "Data search and merging took ".timestr($std) ) if DEBUG;
 
                        my $did = $page->get_newest( 'description' );
+                       my @tags = split(/, /, $page->get_newest( 'tag' ));
                        $section = $page->get_newest( 'section' );
                        $subsection = $page->get_newest( 'subsection' );
                        my $filenames = $page->get_arch_field( 'filename' );
@@ -143,8 +145,6 @@ sub do_show {
                        $long_desc =~ s/\n /\n/sgo;
                        $long_desc =~ s/\n.\n/\n<p>\n/go;
                        $long_desc =~ s/(((\n|\A) [^\n]*)+)/\n<pre>$1\n<\/pre>/sgo;
-#          $long_desc = conv_desc( $lang, $long_desc );
-#          $short_desc = conv_desc( $lang, $short_desc );
                        my @menu = ( [ _g( "Distribution:" ),
                                       _g( "Overview over this suite" ),
                                       make_url("/",''),
@@ -153,7 +153,6 @@ sub do_show {
                                       _g( "All packages in this section" ),
                                       make_url("$subsection/",''),
                                       $subsection ], );
-                       my $source = $page->get_src('package');
                        push @menu, [ _g( "Source:" ),
                                      _g( "Source package building this package" ),
                                      make_url($source,'',{source=>'source'}),
@@ -185,6 +184,7 @@ sub do_show {
                                  );
                        }
                        $package_page .= pdesc( $short_desc, $long_desc );
+                       $package_page .= ptags( $pkg, @tags ) if @tags;
 
                        #
                        # display dependencies
@@ -233,11 +233,16 @@ sub do_show {
                            $package_page .= "<td>".$versions->{$a}."</td>"
                                if $multiple_versions;
                            $package_page .= '<td class="size">';
-                           $package_page .=  floor(($sizes_deb->{$a}/102.4)+0.5)/10 . "&nbsp;kB";
+                           # package size
+                           $package_page .=  sprintf(_g('%.1f&nbsp;kB'),
+                                                     floor(($sizes_deb->{$a}/102.4)+0.5)/10);
                            $package_page .= '</td><td class="size">';
-                           $package_page .=  $sizes_inst->{$a} . "&nbsp;kB";
+                           # installed size
+                           $package_page .=  sprintf(_g('%d&nbsp;kB'),
+                                                     $sizes_inst->{$a});
                            $package_page .= "</td>\n<td>";
-                           if ( $suite ne "experimental" ) {
+                           if ( ($suite ne "experimental")
+                                && ($subsection ne 'debian-installer')) {
                                $package_page .= sprintf( "[<a href=\"%s\">"._g( "list of files" )."</a>]\n",
                                                          make_url("$encodedpkg/$a/filelist",''), $pkg );
                            } else {
@@ -380,19 +385,9 @@ sub do_show {
                    foreach( @$source_files ) {
                        my ($src_file_md5, $src_file_size, $src_file_name)
                            = split /\s+/, $_;
-                       my $src_url;
-                       for ("$suite/$archive") {
-                           /security/o &&  do {
-                               $src_url = $FTP_SITES{security}; last };
-                           /volatile/o &&  do {
-                               $src_url = $FTP_SITES{volatile}; last };
-                           /backports/o &&  do {
-
-                               $src_url = $FTP_SITES{backports}; last };
-                           /non-us/io  &&  do {
-                               $src_url = $FTP_SITES{'non-US'}; last };
-                           $src_url = $FTP_SITES{us};
-                       }
+                       (my $server = lc $archive) =~ s/-//go; # non-US hack
+                       my $src_url = $FTP_SITES{$server}
+                           || $FTP_SITES{us};
                        $src_url .= "/$source_dir/$src_file_name";
                        
                        $package_page .= "<tr><td><a href=\"$src_url\">$src_file_name</a></td>\n"