X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=cgi%2Fpkgreport.cgi;h=abf739dec4c544f55dcfebb88b3c99d8ad78f245;hb=ef8bd23ff686d78c1fbc8e51bdeb0630f1f53fae;hp=d29c3abc7ff56943a7a0a2196be16e5560bda857;hpb=6ce4d79d48f520bb4936ec99e78bcd706539f18b;p=debbugs.git diff --git a/cgi/pkgreport.cgi b/cgi/pkgreport.cgi index d29c3ab..abf739d 100755 --- a/cgi/pkgreport.cgi +++ b/cgi/pkgreport.cgi @@ -18,10 +18,9 @@ BEGIN{ delete @ENV{qw(IFS CDPATH ENV BASH_ENV)}; } -# STDOUT should be in utf8 mode -binmode(STDOUT,':utf8'); - +binmode(STDOUT,':encoding(UTF-8)'); use POSIX qw(strftime nice); +use List::AllUtils qw(uniq); use Debbugs::Config qw(:globals :text :config); @@ -230,7 +229,8 @@ our %cats = ( "ord" => [2,3,4,1,0,5], } ], "oldview" => [ qw(status severity) ], - "normal" => [ qw(status severity classification) ], + "normal" => [ qw(status severity classification) ], + raw => [{nam => 'Raw',def => 'Raw'}], ); if (exists $param{which} and exists $param{data}) { @@ -277,7 +277,8 @@ if (defined $param{usertag}) { } } -quitcgi("You have to choose something to select by") unless grep {exists $param{$_}} keys %package_search_keys; +quitcgi("You have to choose something to select by", '400 Bad Request') + unless grep {exists $param{$_}} keys %package_search_keys; my $Archived = $param{archive} ? " Archived" : ""; @@ -438,6 +439,7 @@ my $result = pkg_htmlizebugs(bugs => \@bugs, (exists $param{dist})?(dist => $param{dist}):(), ); +print "Cache-Control: public, max-age=300\n"; print "Content-Type: text/html; charset=utf-8\n\n"; print "\n"; @@ -495,6 +497,9 @@ print fill_in_template(template=>'cgi/pkgreport_javascript'); print qq(

Options

\n); +$param{orderings} = + [uniq((grep {!$hidden{$_}} keys %cats), + $param{ordering})]; print option_form(template => 'cgi/pkgreport_options', param => \%param, form_options => $form_options,