diff options
author | mkanat%bugzilla.org <> | 2006-08-23 07:30:27 +0200 |
---|---|---|
committer | mkanat%bugzilla.org <> | 2006-08-23 07:30:27 +0200 |
commit | 2de6abfda1e684d218b8d9b251a1153ce30f89e2 (patch) | |
tree | eba27d9ed2512908a2f136a893846aa76b044f5e | |
parent | 579565465390391b24027475bbadcbcf3a230111 (diff) | |
download | bugzilla-2de6abfda1e684d218b8d9b251a1153ce30f89e2.tar.gz bugzilla-2de6abfda1e684d218b8d9b251a1153ce30f89e2.tar.xz |
Bug 349558: Move validations of global enum fields from post_bug into Bugzilla::Bug
Patch By Max Kanat-Alexander <mkanat@bugzilla.org> r=bkor, a=justdave
-rwxr-xr-x | Bugzilla/Bug.pm | 32 | ||||
-rwxr-xr-x | post_bug.cgi | 17 |
2 files changed, 41 insertions, 8 deletions
diff --git a/Bugzilla/Bug.pm b/Bugzilla/Bug.pm index 9c9e2828d..406e70aca 100755 --- a/Bugzilla/Bug.pm +++ b/Bugzilla/Bug.pm @@ -262,6 +262,13 @@ sub _check_bug_file_loc { return $url; } +sub _check_bug_severity { + my ($severity) = @_; + $severity = trim($severity); + check_field('bug_severity', $severity); + return $severity; +} + sub _check_bug_status { my ($status, $product) = @_; my $user = Bugzilla->user; @@ -363,6 +370,31 @@ sub _check_product { return $obj; } +sub _check_op_sys { + my ($op_sys) = @_; + $op_sys = trim($op_sys); + check_field('op_sys', $op_sys); + return $op_sys; +} + +sub _check_priority { + my ($priority) = @_; + if (!Bugzilla->params->{'letsubmitterchoosepriority'}) { + $priority = Bugzilla->params->{'defaultpriority'}; + } + $priority = trim($priority); + check_field('priority', $priority); + + return $priority; +} + +sub _check_rep_platform { + my ($platform) = @_; + $platform = trim($platform); + check_field('rep_platform', $platform); + return $platform; +} + sub _check_short_desc { my ($short_desc) = @_; # Set the parameter to itself, but cleaned up diff --git a/post_bug.cgi b/post_bug.cgi index 33e58f182..ec44f6c48 100755 --- a/post_bug.cgi +++ b/post_bug.cgi @@ -191,15 +191,16 @@ if (!defined $cgi->param('target_milestone')) { $cgi->param(-name => 'target_milestone', -value => $product->default_milestone); } -if (!Bugzilla->params->{'letsubmitterchoosepriority'}) { - $cgi->param(-name => 'priority', -value => Bugzilla->params->{'defaultpriority'}); -} - # Some more sanity checking -check_field('rep_platform', scalar $cgi->param('rep_platform')); -check_field('bug_severity', scalar $cgi->param('bug_severity')); -check_field('priority', scalar $cgi->param('priority')); -check_field('op_sys', scalar $cgi->param('op_sys')); +$cgi->param(-name => 'priority', -value => Bugzilla::Bug::_check_priority( + $cgi->param('priority'))); +$cgi->param(-name => 'rep_platform', + -value => Bugzilla::Bug::_check_rep_platform($cgi->param('rep_platform'))); +$cgi->param(-name => 'bug_severity', + -value => Bugzilla::Bug::_check_bug_severity($cgi->param('bug_severity'))); +$cgi->param(-name => 'op_sys', -value => Bugzilla::Bug::_check_op_sys( + $cgi->param('op_sys'))); + check_field('version', scalar $cgi->param('version'), [map($_->name, @{$product->versions})]); check_field('target_milestone', scalar $cgi->param('target_milestone'), |