]> git.deb.at Git - deb/packages.git/blobdiff - lib/Packages/Dispatcher.pm
Packages::DoSearchContents: Add missing import of &Packages::CGI::error
[deb/packages.git] / lib / Packages / Dispatcher.pm
index 3dcab38719d42f772282f87e748a57658ad93777..64790c137041b743f387bdd4ab4a46ad9100b64c 100755 (executable)
@@ -65,6 +65,13 @@ sub do_dispatch {
     delete $ENV{'LC_ALL'};
     delete $ENV{'LC_MESSAGES'};
 
+    my %SUITES_ALIAS = ( oldstable => 'sarge',
+                        stable => 'etch',
+                        testing => 'lenny',
+                        unstable => 'sid',
+                        '3.1' => 'sarge',
+                        '4.0' => 'etch' );
+
     # Read in all the variables set by the form
     my $input;
     if ($ARGV[0] && ($ARGV[0] eq 'php')) {
@@ -168,10 +175,6 @@ sub do_dispatch {
            }
 
            my %SUITES = map { $_ => 1 } @SUITES;
-           my %SUITES_ALIAS = ( sarge => 'oldstable',
-                                etch => 'stable',
-                                lenny => 'testing',
-                                sid => 'unstable', );
            my %SECTIONS = map { $_ => 1 } @SECTIONS;
            my %ARCHIVES = map { $_ => 1 } @ARCHIVES;
            my %ARCHITECTURES = map { $_ => 1 } (@ARCHITECTURES, 'all', 'any');
@@ -223,8 +226,9 @@ sub do_dispatch {
        } # else if (@components == 1)
 
        if (@components) {
-           $input->param( 'keywords', $components[0] );
-           $input->param( 'package', $components[0] );
+           my $c = uri_unescape($components[0]);
+           $input->param( 'keywords', $c );
+           $input->param( 'package', $c );
        }
     }
 
@@ -240,7 +244,8 @@ sub do_dispatch {
                       suite => { default => 'default', match => '^([\w-]+)$',
                                  array => ',', var => \@suites,
                                  replace => { all => \@SUITES,
-                                              default => \@SUITES } },
+                                              default => \@SUITES,
+                                              %SUITES_ALIAS } },
                       archive => { default => ($what_to_do eq 'search') ?
                                        'all' : 'default',
                                        match => '^([\w-]+)$',