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;
type => 'str',
},
subject => {name => 'Bug Title',
- type => 'num',
+ type => 'str',
},
date => {name => 'Submission date',
type => 'num',
}
print qq(</select>\n);
$$attribute{value}='' if not defined $$attribute{value};
- print qq(<input type="text" name="attribute_value" value="$$attribute{value}"><input type="submit" name="delete_attribute_$attr_num" value="Delete"><br/>\n);
+ print qq(<input type="text" name="attribute_value" value="$$attribute{value}"><input type="submit" name="delete_attribute_$attr_num" value="Delete"><br>\n);
$attr_num++;
}
-print qq(<input type="submit" name="add_attribute" value="Add Attribute"><br/>);
+print qq(<input type="submit" name="add_attribute" value="Add Attribute"><br>);
# order
my $showseverity;
$showseverity = "Severity: <em>$attr{severity}</em>;\n";
print <<END;
-<li><a href="$url${bugnum}#${msgnum}">#${bugnum}: $attr{'@title'}</a> @{[htmlize_packagelinks($attr{package})]}<br/>
-$showseverity<br/>
-Sent by: @{[encode_entities($attr{'@author'})]} at $attr{'@cdate'}<br/>
+<li><a href="$url${bugnum}#${msgnum}">#${bugnum}: $attr{'@title'}</a> @{[htmlize_packagelinks($attr{package})]}<br>
+$showseverity<br>
+Sent by: @{[encode_entities($attr{'@author'})]} at $attr{'@cdate'}<br>
END
# Deal with the snippet
# make the things that match bits of the phrase bold, the rest normal.
}
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;
-}