From: olav%bkor.dhs.org <> Date: Sun, 5 Nov 2006 08:27:09 +0000 (+0000) Subject: Bug 309167: change to product which has same component name results in no prompt... X-Git-Tag: bugzilla-2.23.4~229 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8109df6a8bda8d2aa13f1e8545bccff0e06d42a7;p=thirdparty%2Fbugzilla.git Bug 309167: change to product which has same component name results in no prompt for component and incorrect assignee Patch by Olav Vitters r=LpSolit a=myk --- diff --git a/process_bug.cgi b/process_bug.cgi index 33a5c75ecd..d3f52641e4 100755 --- a/process_bug.cgi +++ b/process_bug.cgi @@ -374,11 +374,14 @@ if (((defined $cgi->param('id') && $cgi->param('product') ne $oldproduct) $mok = lsearch(\@milestone_names, $cgi->param('target_milestone')) >= 0; } - # If the product-specific fields need to be verified, or we need to verify - # whether or not to add the bugs to their new product's group, display - # a verification form. - if (!$vok || !$cok || !$mok || (AnyDefaultGroups() - && !defined $cgi->param('addtonewgroup'))) { + # We cannot be sure if the component is the same by only checking $cok; the + # current component name could exist in the new product. So always display + # the form and use the confirm_product_change param to check if that was + # shown. Also show the verification form if the product-specific fields + # somehow still need to be verified, or if we need to verify whether or not + # to add the bugs to their new product's group. + if (!$vok || !$cok || !$mok || !defined $cgi->param('confirm_product_change') + || (AnyDefaultGroups() && !defined $cgi->param('addtonewgroup'))) { if (Bugzilla->usage_mode == USAGE_MODE_EMAIL) { if (!$vok) { @@ -398,7 +401,9 @@ if (((defined $cgi->param('id') && $cgi->param('product') ne $oldproduct) } } - if (!$vok || !$cok || !$mok) { + if (!$vok || !$cok || !$mok + || !defined $cgi->param('confirm_product_change')) + { $vars->{'verify_fields'} = 1; my %defaults; # We set the defaults to these fields to the old value, diff --git a/template/en/default/bug/process/verify-new-product.html.tmpl b/template/en/default/bug/process/verify-new-product.html.tmpl index 3b185993b0..9b73abe976 100644 --- a/template/en/default/bug/process/verify-new-product.html.tmpl +++ b/template/en/default/bug/process/verify-new-product.html.tmpl @@ -47,6 +47,7 @@ [% PROCESS "global/hidden-fields.html.tmpl" exclude=(verify_fields ? "^version|component|target_milestone$" : "") %] + [%# Verify the version, component, and target milestone fields. %] [% IF verify_fields %]

Verify Version, Component[% ", Target Milestone" IF use_target_milestone %]

@@ -69,16 +70,28 @@ Version:
- [% PROCESS "global/select-menu.html.tmpl" name="version" options=versions default=defaults.version %] + [% PROCESS "global/select-menu.html.tmpl" + name="version" + options=versions + default=defaults.version + size=10 %] Component:
- [% PROCESS "global/select-menu.html.tmpl" name="component" options=components default=defaults.component %] + [% PROCESS "global/select-menu.html.tmpl" + name="component" + options=components + default=defaults.component + size=10 %] [% IF use_target_milestone %] Target Milestone:
- [% PROCESS "global/select-menu.html.tmpl" name="target_milestone" options=milestones default=defaults.target_milestone %] + [% PROCESS "global/select-menu.html.tmpl" + name="target_milestone" + options=milestones + default=defaults.target_milestone + size=10 %] [% END %] diff --git a/template/en/default/global/select-menu.html.tmpl b/template/en/default/global/select-menu.html.tmpl index 725ec88dd1..3233ad7762 100644 --- a/template/en/default/global/select-menu.html.tmpl +++ b/template/en/default/global/select-menu.html.tmpl @@ -24,7 +24,7 @@ # # multiple: boolean; whether or not the menu is multi-select # - # size: integer; if multi-select, the number of items to display at once + # size: integer; the number of items to display at once # # options: array or hash; the items with which to populate the array. # If a hash is passed, the hash keys become the names displayed @@ -45,7 +45,8 @@