From b46bfdd4921e27ed472aabfd06ab7c95f30e7e62 Mon Sep 17 00:00:00 2001 From: Bharat Mediratta Date: Mon, 29 Dec 2008 00:35:31 +0000 Subject: Separate permanent messages out of the message helper and put them into site_status. Show site status in the header in the admin theme. --- core/helpers/site_status.php | 129 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 129 insertions(+) create mode 100644 core/helpers/site_status.php (limited to 'core/helpers/site_status.php') diff --git a/core/helpers/site_status.php b/core/helpers/site_status.php new file mode 100644 index 00000000..ccddd3fb --- /dev/null +++ b/core/helpers/site_status.php @@ -0,0 +1,129 @@ +where("key", $permanent_key) + ->find(); + if (!$message->loaded) { + $message->key = $permanent_key; + } + $message->severity = $severity; + $message->value = $msg; + $message->save(); + } + + /** + * Remove any permanent message by key. + * @param string $permanent_key + */ + public function clear($permanent_key) { + $message = ORM::factory("message")->where("key", $permanent_key)->find(); + if ($message->loaded) { + $message->delete(); + } + } + + /** + * Get any pending messages. There are two types of messages, transient and permanent. + * Permanent messages are used to let the admin know that there are pending administrative + * issues that need to be resolved. Transient ones are only displayed once. + * @return html text + */ + public function get() { + $buf = array(); + + foreach (ORM::factory("message")->find_all() as $msg) { + $buf[] = "
  • severity) . "\">$msg->value
  • "; + } + + if ($buf) { + return ""; + } + } + + /** + * Convert a message severity to a CSS class + * @param integer $severity + * @return string + */ + public function severity_class($severity) { + switch($severity) { + case self::SUCCESS: + return "gSuccess"; + + case self::INFO: + return "gInfo"; + + case self::WARNING: + return "gWarning"; + + case self::ERROR: + return "gError"; + } + } +} -- cgit v1.2.3