Bug 157085 - verify-new-product doesn't set defaults

r=jouni, gerv
parent 9f510268
...@@ -191,16 +191,35 @@ if ((($::FORM{'id'} && $::FORM{'product'} ne $::oldproduct) ...@@ -191,16 +191,35 @@ if ((($::FORM{'id'} && $::FORM{'product'} ne $::oldproduct)
if (!$vok || !$cok || !$mok) { if (!$vok || !$cok || !$mok) {
$vars->{'verify_fields'} = 1; $vars->{'verify_fields'} = 1;
my %defaults;
# We set the defaults to these fields to the old value,
# if its a valid option, otherwise we use the default where
# thats appropriate
$vars->{'versions'} = $::versions{$prod}; $vars->{'versions'} = $::versions{$prod};
if (lsearch($::versions{$prod}, $::FORM{'version'}) != -1) {
$defaults{'version'} = $::FORM{'version'};
}
$vars->{'components'} = $::components{$prod}; $vars->{'components'} = $::components{$prod};
if (lsearch($::components{$prod}, $::FORM{'component'}) != -1) {
$defaults{'component'} = $::FORM{'component'};
}
if (Param("usetargetmilestone")) { if (Param("usetargetmilestone")) {
$vars->{'use_target_milestone'} = 1; $vars->{'use_target_milestone'} = 1;
$vars->{'milestones'} = $::target_milestone{$prod}; $vars->{'milestones'} = $::target_milestone{$prod};
if (lsearch($::target_milestone{$prod},
$::FORM{'target_milestone'}) != -1) {
$defaults{'target_milestone'} = $::FORM{'target_milestone'};
} else {
SendSQL("SELECT defaultmilestone FROM products WHERE " .
"product = " . SqlQuote($prod));
$defaults{'target_milestone'} = FetchOneColumn();
}
} }
else { else {
$vars->{'use_target_milestone'} = 0; $vars->{'use_target_milestone'} = 0;
} }
$vars->{'defaults'} = \%defaults;
} }
else { else {
$vars->{"verify_fields"} = 0; $vars->{"verify_fields"} = 0;
......
...@@ -26,6 +26,8 @@ ...@@ -26,6 +26,8 @@
# versions: array; versions for the new product. # versions: array; versions for the new product.
# components: array; components for the new product. # components: array; components for the new product.
# milestones: array; milestones for the new product. # milestones: array; milestones for the new product.
# defaults: hash; keys are names of fields, values are defaults for
# those fields
# verify_bug_group: boolean; whether or not to ask the user # verify_bug_group: boolean; whether or not to ask the user
# if they want to add the bug to its new product's group # if they want to add the bug to its new product's group
# use_target_milestone: boolean; whether or not to use # use_target_milestone: boolean; whether or not to use
...@@ -57,16 +59,16 @@ ...@@ -57,16 +59,16 @@
<tr> <tr>
<td> <td>
<b>Version:</b><br> <b>Version:</b><br>
[% PROCESS "global/select-menu.html.tmpl" name="version" options=versions %] [% PROCESS "global/select-menu.html.tmpl" name="version" options=versions default=defaults.version %]
</td> </td>
<td> <td>
<b>Component:</b><br> <b>Component:</b><br>
[% PROCESS "global/select-menu.html.tmpl" name="component" options=components %] [% PROCESS "global/select-menu.html.tmpl" name="component" options=components default=defaults.component %]
</td> </td>
[% IF use_target_milestone %] [% IF use_target_milestone %]
<td> <td>
<b>Target Milestone:</b><br> <b>Target Milestone:</b><br>
[% PROCESS "global/select-menu.html.tmpl" name="target_milestone" options=milestones %] [% PROCESS "global/select-menu.html.tmpl" name="target_milestone" options=milestones default=defaults.target_milestone %]
</td> </td>
[% END %] [% END %]
</tr> </tr>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment