]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 323606: sanitycheck.cgi should offer a link to fix everconfirmed - Patch by FrÃ...
authorlpsolit%gmail.com <>
Sat, 18 Jul 2009 17:07:04 +0000 (17:07 +0000)
committerlpsolit%gmail.com <>
Sat, 18 Jul 2009 17:07:04 +0000 (17:07 +0000)
sanitycheck.cgi
template/en/default/admin/sanitycheck/messages.html.tmpl

index e32635970cea6488f4357a7b7050adf5ef3acab1..82d91af0e0adc0e96eba74b03f9680760f23bd78 100755 (executable)
@@ -222,6 +222,22 @@ if ($cgi->param('repair_creation_date')) {
     Status('bug_creation_date_fixed', {bug_count => scalar(@$bug_ids)});
 }
 
+###########################################################################
+# Fix everconfirmed
+###########################################################################
+
+if ($cgi->param('repair_everconfirmed')) {
+    Status('everconfirmed_start');
+
+    my @confirmed_open_states = grep {$_ ne 'UNCONFIRMED'} BUG_STATE_OPEN;
+    my $confirmed_open_states = join(', ', map {$dbh->quote($_)} @confirmed_open_states);
+
+    $dbh->do("UPDATE bugs SET everconfirmed = 0 WHERE bug_status = 'UNCONFIRMED'");
+    $dbh->do("UPDATE bugs SET everconfirmed = 1 WHERE bug_status IN ($confirmed_open_states)");
+
+    Status('everconfirmed_end');
+}
+
 ###########################################################################
 # Fix entries in Bugs full_text
 ###########################################################################
@@ -953,13 +969,13 @@ BugCheck("bugs WHERE bug_status NOT IN ($open_states) AND resolution = ''",
 Status('bug_check_status_everconfirmed');
 
 BugCheck("bugs WHERE bug_status = 'UNCONFIRMED' AND everconfirmed = 1",
-         'bug_check_status_everconfirmed_error_text');
+         'bug_check_status_everconfirmed_error_text', 'repair_everconfirmed');
 
 my @confirmed_open_states = grep {$_ ne 'UNCONFIRMED'} BUG_STATE_OPEN;
 my $confirmed_open_states = join(', ', map {$dbh->quote($_)} @confirmed_open_states);
 
 BugCheck("bugs WHERE bug_status IN ($confirmed_open_states) AND everconfirmed = 0",
-         'bug_check_status_everconfirmed_error_text2');
+         'bug_check_status_everconfirmed_error_text2', 'repair_everconfirmed');
 
 Status('bug_check_votes_everconfirmed');
 
index 2847a35e761ffe137c43cfa0aaffaf27aac2e8f8..8eb20c383ff76ea32aa23f82f284f7d4c4ea66b6 100644 (file)
       [% END %]
     [% END %]
 
+  [% ELSIF san_tag == "everconfirmed_start" %]
+    OK, now fixing everconfirmed.
+
+  [% ELSIF san_tag == "everconfirmed_end" %]
+    everconfirmed fixed.
+
   [% ELSIF san_tag == "flag_check_start" %]
     Checking for flags being in the wrong product/component.