CRM-17575 System Check - stop alert for hushed messages
authorAndrew Hunt <andrew@aghstrategies.com>
Sat, 14 Nov 2015 22:18:42 +0000 (17:18 -0500)
committerAndrew Hunt <andrew@aghstrategies.com>
Sun, 15 Nov 2015 00:56:29 +0000 (19:56 -0500)
----------------------------------------
* CRM-17575: Hidden alerts still pop up
  https://issues.civicrm.org/jira/browse/CRM-17575

CRM/Utils/Check.php

index f1b5cd281be5830097074595dc7b9ceadb0306f6..6201be40e139a4b55772e39829d78a914df5d1e3 100644 (file)
@@ -81,6 +81,9 @@ class CRM_Utils_Check {
         $statusMessages = array();
         $statusType = 'alert';
         foreach ($messages as $message) {
+          if (!$message->isVisible()) {
+            continue;
+          }
           if ($filter === TRUE || $message->getSeverity() >= 3) {
             $statusType = $message->getSeverity() >= 4 ? 'error' : $statusType;
             $statusMessage = $message->getMessage();
@@ -209,7 +212,7 @@ class CRM_Utils_Check {
 
     foreach ($messages as $key => $message) {
       $hush = self::checkHushSnooze($message);
-      $message->setVisible(!$hush);
+      $messages[$key]->setVisible(!$hush);
     }
     uasort($messages, array(__CLASS__, 'severitySort'));
 
@@ -232,7 +235,8 @@ class CRM_Utils_Check {
   /**
    * Evaluate if a system check should be hushed/snoozed.
    *
-   * @param string $message
+   * @param CRM_Utils_Check_Message $message
+   *   The message to evaluate.
    *
    * @return bool
    *   TRUE means hush/snooze, FALSE means display.