]> git.deb.at Git - deb/packages.git/blobdiff - cgi-bin/show_package.pl
- Add $ROOT at appropriate places
[deb/packages.git] / cgi-bin / show_package.pl
index 0f3c48f6663b5592095320d2a672f124266ff516..747db62ada96ee2b29bd87695a7b2255c19befd3 100755 (executable)
@@ -156,30 +156,19 @@ unless (@Packages::CGI::fatal_errors) {
                    my (undef, $archive, undef, $arch, $section, $subsection,
                        $priority, $version) = @$entry;
                    
-                   my $data = $packages_all{"$pkg $arch $version"};
-                   $page->merge_data($pkg, $version, $arch, $data) or debug( "Merging $pkg $arch $version FAILED", 2 );
+                   my %data = split /\000/, $packages_all{"$pkg $arch $version"};
+                   $data{package} = $pkg;
+                   $data{architecture} = $arch;
+                   $data{version} = $version;
+                   $page->merge_package(\%data) or debug( "Merging $pkg $arch $version FAILED", 2 );
                }
 
                $version = $page->{newest};
                my $source = $page->get_newest( 'source' );
-               my $source_version = $page->get_newest( 'source-version' )
-                   || $version;
-               debug( "find source package: source=$source (=$source_version)", 1);
-               my $src_data = $sources_all{"$source $source_version"};
-               unless ($src_data) { #fucking binNMUs
-                   my $versions = $page->get_versions;
-                   my $sources = $page->get_arch_field( 'source' );
-                   my $source_versions = $page->get_arch_field( 'source-version' );
-                   foreach (version_sort keys %$versions) {
-                       $source = $sources->{$versions->{$_}[0]};
-                       $source = $source_versions->{$versions->{$_}[0]}
-                       || $version;
-                       $src_data = $sources_all{"$source $source_version"};
-                       last if $src_data;
-                   }
-                   error( "couldn't find source package" ) unless $src_data;
-               }
-               $page->add_src_data( $source, $source_version, $src_data )
+               $archive = $page->get_newest( 'archive' );
+               debug( "find source package: source=$source", 1);
+               my $src_data = $sources_all{"$archive $suite $source"};
+               $page->add_src_data( $source, $src_data )
                    if $src_data;
 
                my $st1 = new Benchmark;
@@ -189,7 +178,6 @@ unless (@Packages::CGI::fatal_errors) {
                my $encodedpkg = uri_escape( $pkg );
                my ($v_str, $v_str_arch, $v_str_arr) = $page->get_version_string();
                my $did = $page->get_newest( 'description' );
-               $archive = $page->get_newest( 'archive' );
                $section = $page->get_newest( 'section' );
                $subsection = $page->get_newest( 'subsection' );
                my $filenames = $page->get_arch_field( 'filename' );
@@ -237,11 +225,11 @@ unless (@Packages::CGI::fatal_errors) {
 
                $package_page .= simple_menu( [ gettext( "Distribution:" ),
                                                gettext( "Overview over this suite" ),
-                                               "/$suite/",
+                                               "$ROOT/$suite/",
                                                $suite ],
                                              [ gettext( "Section:" ),
                                                gettext( "All packages in this section" ),
-                                               "/$suite/$subsection/",
+                                               "$ROOT/$suite/$subsection/",
                                                $subsection ],
                                              );
 
@@ -310,35 +298,22 @@ unless (@Packages::CGI::fatal_errors) {
                $package_page .= "<th>".gettext("Architecture")."</th><th>".gettext("Files")."</th><th>".gettext( "Package Size")."</th><th>".gettext("Installed Size")."</th></tr>\n";
                foreach my $a ( @archs ) {
                    $package_page .= "<tr>\n";
-                   $package_page .=  "<th><a href=\"$DL_URL?arch=$a";
-                   $package_page .=  "&amp;file=".uri_escape($filenames->{$a});
-                   $package_page .=  "&amp;md5sum=$file_md5sums->{$a}";
-                   $package_page .=  "&amp;arch=$a";
-                   for ($archives->{$a}) {
-                       /security/o &&  do {
-                           $package_page .=  "&amp;type=security"; last };
-                       /volatile/o &&  do {
-                           $package_page .=  "&amp;type=volatile"; last };
-                       /backports/o &&  do {
-                           $package_page .=  "&amp;type=backports"; last };
-                       /non-us/io  &&  do {
-                           $package_page .=  "&amp;type=nonus"; last };
-                       $package_page .=  "&amp;type=main";
-                   }
+                   $package_page .=  "<th><a href=\"$ROOT/$suite/$encodedpkg/$a/download";
                    $package_page .=  "\">$a</a></th>\n";
                    $package_page .= "<td>";
                    if ( $suite ne "experimental" ) {
-                       $package_page .= sprintf( "[<a href=\"%s\">".gettext( "list of files" )."</a>]\n", "$FILELIST_URL$encodedpkg&amp;version=$suite&amp;arch=$a", $pkg );
+                       $package_page .= sprintf( "[<a href=\"%s\">".gettext( "list of files" )."</a>]\n",
+                           "$ROOT/$suite/$encodedpkg/$a/filelist", $pkg );
                    } else {
                        $package_page .= gettext( "no current information" );
                    }
-                   $package_page .= "</td>\n<td>";
-                   $package_page .=  floor(($sizes_deb->{$a}/102.4)+0.5)/10;
-                   $package_page .= "</td>\n<td>";
-                   $package_page .=  $sizes_inst->{$a};
+                   $package_page .= "</td>\n<td align=right>"; #FIXME: css
+                   $package_page .=  floor(($sizes_deb->{$a}/102.4)+0.5)/10 . "&nbsp;kB";
+                   $package_page .= "</td>\n<td align=right>"; #FIXME: css
+                   $package_page .=  $sizes_inst->{$a} . "&nbsp;kB";
                    $package_page .= "</td>\n</tr>";
                }
-               $package_page .= "</table><p>".gettext ( "Size is measured in kBytes." )."</p>\n";
+               $package_page .= "</table>\n";
                $package_page .= "</div> <!-- end pdownload -->\n";
                
                #