]> 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:05:07 +0000 (17:05 +0000)
committerlpsolit%gmail.com <>
Sat, 18 Jul 2009 17:05:07 +0000 (17:05 +0000)
sanitycheck.cgi
template/en/default/admin/sanitycheck/messages.html.tmpl

index 93228fc67dd03e5134e1ddd3b3428487e235c167..0bb965cb639fd5f3862f7173ff66f6b18e0f39fb 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
 ###########################################################################
@@ -943,13 +959,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 b65f8eac545322d9fc098be5969fc42b2546fcd7..b67e5982d54f3efe92954f9affec69dd621e67a0 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.