use Deb::Versions;
use Packages::Config qw( $DBDIR $ROOT $TEMPLATEDIR $CACHEDIR
@SUITES @SECTIONS @ARCHIVES @ARCHITECTURES @PRIORITIES
- @LANGUAGES @DDTP_LANGUAGES $LOCALES );
+ @LANGUAGES @DDTP_LANGUAGES );
use Packages::CGI qw( :DEFAULT error get_all_messages );
use Packages::DB;
use Packages::Search qw( :all );
set_param_once( $input, \%params_set, 'suite', $s);
} elsif (!$need_pkg && $SECTIONS{$_}) {
set_param_once( $input, \%params_set, 'section', $_);
- } elsif (!$need_pkg && $ARCHIVES{$_}) {
- set_param_once( $input, \%params_set, 'archive', $_);
} elsif (!$need_pkg && $sections_descs{$_}) {
set_param_once( $input, \%params_set, 'subsection', $_);
} elsif (!$need_pkg && ($_ eq 'source')) {
} elsif ($ARCHITECTURES{$_}) {
set_param_once( $input, \%params_set, 'arch', $_)
unless $_ eq 'any';
+ } elsif (!$need_pkg && $ARCHIVES{$_}) {
+ set_param_once( $input, \%params_set, 'archive', $_);
} elsif ($PRIORITIES{$_}) {
set_param_once( $input, \%params_set, 'priority', $_);
} else {
replace => { all => \@ARCHIVES,
default => \@ARCHIVES} },
exact => { default => 0, match => '^(\w+)$', },
- lang => { default => $http_lang, match => '^(\w+)$', },
+ lang => { default => $http_lang, match => '^([\w-]+)$', },
source => { default => 0, match => '^(\d+)$', },
debug => { default => 0, match => '^(\d+)$', },
searchon => { default => 'names', match => '^(\w+)$', },
Packages::CGI::init_url( $input, \%params, \%opts );
my $charset = "UTF-8";
- my $cat = Packages::I18N::Locale->get_handle( $opts{lang} )
- || Packages::I18N::Locale->get_handle( 'en' );
- die "get_handle failed for $opts{lang}" unless $cat;
+ my $cat = Packages::I18N::Locale->get_handle( $opts{lang}, "en" )
+ or die "get_handle failed for $opts{lang}";
$opts{cat} = $cat;
$opts{h_suites} = { map { $_ => 1 } @suites };