From 839d66da3f158712fe59bf5fd480df12512f4bf6 Mon Sep 17 00:00:00 2001 From: "lpsolit%gmail.com" <> Date: Sat, 10 Mar 2007 18:20:01 +0000 Subject: Bug 373411: The bug resolution can be set independently of the bug status - Patch by Frédéric Buclin r=mkanat a=LpSolit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- process_bug.cgi | 11 +++++++++++ template/en/default/global/user-error.html.tmpl | 4 ++++ 2 files changed, 15 insertions(+) diff --git a/process_bug.cgi b/process_bug.cgi index fd0c3eb9d..18097d084 100755 --- a/process_bug.cgi +++ b/process_bug.cgi @@ -1110,6 +1110,17 @@ SWITCH: for ($cgi->param('knob')) { ChangeStatus('RESOLVED'); } + else { + # You cannot use change_resolution if there is at least + # one open bug. + my $open_states = join(',', map {$dbh->quote($_)} BUG_STATE_OPEN); + my $idlist = join(',', @idlist); + my $is_open = + $dbh->selectrow_array("SELECT 1 FROM bugs WHERE bug_id IN ($idlist) + AND bug_status IN ($open_states)"); + + ThrowUserError('resolution_not_allowed') if $is_open; + } ChangeResolution($bug, $cgi->param('resolution')); last SWITCH; diff --git a/template/en/default/global/user-error.html.tmpl b/template/en/default/global/user-error.html.tmpl index b2a3624b2..01368f06d 100644 --- a/template/en/default/global/user-error.html.tmpl +++ b/template/en/default/global/user-error.html.tmpl @@ -1286,6 +1286,10 @@ [% title = "Summary Needed" %] You must enter a summary for this [% terms.bug %]. + [% ELSIF error == "resolution_not_allowed" %] + [% title = "Resolution Not Allowed" %] + You cannot set a resolution for open [% terms.bugs %]. + [% ELSIF error == "saved_search_used_by_whines" %] [% title = "Saved Search In Use" %] [% docslinks = {'whining.html' => 'About Whining'} %] -- cgit v1.2.3-24-g4f1b