X-Git-Url: https://git.deb.at/?a=blobdiff_plain;f=lib%2FPackages%2FDoDownload.pm;h=bb7d073795861a4f1e95d10298b0caca76d1ce67;hb=dc3cbd078cef7f4f9d3bfbc7c329167b58f317b8;hp=bd7f8e1660bb5d68b6a0d0233e6c34ffcecdc6fb;hpb=2ec757bb58907b15c43548be5601d4f2b8c7caac;p=deb%2Fpackages.git
diff --git a/lib/Packages/DoDownload.pm b/lib/Packages/DoDownload.pm
index bd7f8e1..bb7d073 100644
--- a/lib/Packages/DoDownload.pm
+++ b/lib/Packages/DoDownload.pm
@@ -10,7 +10,6 @@ use Benchmark ':hireswallclock';
use Exporter;
use Deb::Versions;
-use Packages::I18N::Locale;
use Packages::Search qw( :all );
use Packages::Config qw( $DBDIR @SUITES @ARCHIVES @SECTIONS @ARCHITECTURES );
use Packages::CGI;
@@ -21,22 +20,25 @@ our @EXPORT = qw( do_download );
sub do_download {
- my ($params, $opts, $html_header, $page_content) = @_;
+ my ($params, $opts, $page_content) = @_;
+ my $cat = $opts->{cat};
if ($params->{errors}{package}) {
- fatal_error( _g( "package not valid or not specified" ) );
+ fatal_error( $cat->g( "package not valid or not specified" ) );
}
if ($params->{errors}{suite}) {
- fatal_error( _g( "suite not valid or not specified" ) );
+ fatal_error( $cat->g( "suite not valid or not specified" ) );
}
if ($params->{errors}{arch}) {
- fatal_error( _g( "architecture not valid or not specified" ) );
+ fatal_error( $cat->g( "architecture not valid or not specified" ) );
}
if (@{$opts->{suite}} > 1) {
- fatal_error( sprintf( _g( "more than one suite specified for download (%s)" ), "@{$opts->{suite}}" ) );
+ fatal_error( $cat->g( "more than one suite specified for download (%s)",
+ "@{$opts->{suite}}" ) );
}
if (@{$opts->{arch}} > 1) {
- fatal_error( sprintf( _g( "more than one architecture specified for download (%s)" ), "@{$opts->{arch}}" ) );
+ fatal_error( $cat->g( "more than one architecture specified for download (%s)",
+ "@{$opts->{arch}}" ) );
}
$opts->{h_sections} = { map { $_ => 1 } @SECTIONS };
@@ -70,11 +72,11 @@ sub do_download {
debug( "final_result=@$final_result", 1 );
$archive = $final_result->[1];
- my %data = split /\000/, $packages_all{"$pkg $arch $final_result->[7]"};
+ my %data = split(/\000/, $packages_all{"$pkg $arch $final_result->[7]"}||'');
if (!%data && $arch ne 'all' && $final_result->[3] eq 'all') {
%data = split /\000/, $packages_all{"$pkg all $final_result->[7]"};
- $arch = 'all';
debug( "choosing arch 'all' instead of requested arch $arch", 1 );
+ $arch = 'all';
# fatal_error( _g( "No such package." )."
".
# sprintf( _g( 'Search for the package' ), "$SEARCH_URL/$pkg" ) ) unless %data;
}
@@ -85,11 +87,13 @@ sub do_download {
$page_content->{archive} = $archive;
$page_content->{suite} = $suite;
$page_content->{pkg} = $pkg;
- $page_content->{pkgsize} = sprintf( '%.1f', floor(($data{size}/102.4)+0.5)/10 );
- $page_content->{pkgsize_unit} = _g( 'kByte' );
- if ($page_content->{pkgsize} > 1024) {
- $page_content->{pkgsize} = sprintf( '%.1f', floor(($data{size}/(102.4*102.4))+0.5)/100 );
- $page_content->{pkgsize_unit} = _g( 'MByte' );
+ my $pkgsize = floor(($data{size}/102.4)+0.5)/10;
+ if ($pkgsize < 1024) {
+ $page_content->{pkgsize} = $pkgsize;
+ $page_content->{pkgsize_unit} = $cat->g( 'kByte' );
+ } else {
+ $page_content->{pkgsize} = floor(($data{size}/(102.4*102.4))+0.5)/100;
+ $page_content->{pkgsize_unit} = $cat->g( 'MByte' );
}
$page_content->{architecture} = $arch;
foreach (keys %data) {