]> git.deb.at Git - deb/packages.git/blobdiff - lib/Packages/DoShow.pm
fun with module name differences between sarge and etch
[deb/packages.git] / lib / Packages / DoShow.pm
index 1261544a0ecebc4d9dac6603607741ed7781d253..5b22552f348a79906045128eb63ab589df46c331 100644 (file)
@@ -70,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) {
@@ -82,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>';
@@ -122,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' );
@@ -183,6 +184,7 @@ sub do_show {
                                  );
                        }
                        $package_page .= pdesc( $short_desc, $long_desc );
+                       $package_page .= ptags( $pkg, @tags ) if @tags;
 
                        #
                        # display dependencies
@@ -239,7 +241,8 @@ sub do_show {
                            $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 {
@@ -382,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"