X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=cgi%2Fsearch.cgi;h=d728542ef3fdd60485c3bd3efc559cdc489c18ab;hb=1c4ce01f78b112c2247a08f1a0dc9efb5ab3adca;hp=554b4ad5a1a618b2ada748bae15abb27ce14b248;hpb=0b99d4f15a7b098b7780c85b8229a81df152b2ae;p=debbugs.git diff --git a/cgi/search.cgi b/cgi/search.cgi index 554b4ad..d728542 100755 --- a/cgi/search.cgi +++ b/cgi/search.cgi @@ -14,24 +14,29 @@ BEGIN{ use CGI::Simple; -use CGI::Alert 'don@donarmstrong.com'; +# use CGI::Alert 'nobody@example.com'; use Search::Estraier; use Debbugs::Config qw(:config); use Debbugs::Estraier; -use Debbugs::CGI qw(htmlize_packagelinks html_escape); +use Debbugs::CGI qw(htmlize_packagelinks html_escape cgi_parameters); use HTML::Entities qw(encode_entities); my $q = new CGI::Simple; #my %var_defaults = (attr => 1,); -my %cgi_var = cgi_parameters($q); +my %cgi_var = cgi_parameters(query => $q, + single => [qw(phrase max_results order_field order_operator), + qw(skip prev next), + ], + default => {phrase => '', + max_results => 10, + skip => 0, + }, + ); -$cgi_var{phrase} = '' if not defined $cgi_var{phrase}; -$cgi_var{max_results} = 10 if not defined $cgi_var{max_results}; $cgi_var{attribute} = parse_attribute(\%cgi_var) || []; -$cgi_var{skip} = 0 if not defined $cgi_var{skip}; my @results; @@ -155,7 +160,7 @@ my %attributes = ('@cdate' => {name => 'Date', type => 'str', }, subject => {name => 'Bug Title', - type => 'num', + type => 'str', }, date => {name => 'Submission date', type => 'num', @@ -193,11 +198,11 @@ for my $attribute (@{$cgi_var{attribute}}) { } print qq(\n); $$attribute{value}='' if not defined $$attribute{value}; - print qq(
\n); + print qq(
\n); $attr_num++; } -print qq(
); +print qq(
); # order @@ -264,9 +269,9 @@ if (defined $nres) { my $showseverity; $showseverity = "Severity: $attr{severity};\n"; print <#${bugnum}: $attr{'@title'} @{[htmlize_packagelinks($attr{package})]}
-$showseverity
-Sent by: @{[encode_entities($attr{'@author'})]} at $attr{'@cdate'}
+
  • #${bugnum}: $attr{'@title'} @{[htmlize_packagelinks($attr{package})]}
    +$showseverity
    +Sent by: @{[encode_entities($attr{'@author'})]} at $attr{'@cdate'}
    END # Deal with the snippet # make the things that match bits of the phrase bold, the rest normal. @@ -315,15 +320,3 @@ sub parse_attribute { } return \@attributes; } - - -sub cgi_parameters { - my ($q) = @_; - - my %param; - foreach my $paramname ($q->param) { - my @value = $q->param($paramname); - $param{$paramname} = @value > 1 ? [@value] : $value[0]; - } - return %param; -}