From 5e9e9e9c8af7610c33552d0558db4cc6827f8e62 Mon Sep 17 00:00:00 2001
From: redray <redray@ispconfig3>
Date: Fri, 29 Mar 2013 09:14:32 -0400
Subject: [PATCH] Module Monitor: set css class for each line of log, depending on key words in each line

---
 interface/web/themes/default/css/styles.css |    3 +++
 interface/web/monitor/show_log.php          |   15 ++++++++++++++-
 2 files changed, 17 insertions(+), 1 deletions(-)

diff --git a/interface/web/monitor/show_log.php b/interface/web/monitor/show_log.php
index ec10a98..cb9e4c1 100644
--- a/interface/web/monitor/show_log.php
+++ b/interface/web/monitor/show_log.php
@@ -125,7 +125,20 @@
 if(isset($record['data'])) {
 	$data = unserialize($record['data']);
 
-	$logData = nl2br(htmlspecialchars($data));
+  $logData = explode("\n", htmlspecialchars($data));
+  $logDataHtml = '';
+  /* set css class for each line of log, depending on key words in each line */
+  foreach($logData as $val) {
+    if (strpos($val, 'ERROR') !== FALSE) {
+      $logDataHtml .= "<div class='logerror'>$val</div>";   
+    } elseif (strpos($val, 'WARN') !== FALSE) {
+      $logDataHtml .= "<div class='logwarn'>$val</div>";   
+    } elseif (strpos($val, 'INFO') !== FALSE) {
+      $logDataHtml .= "<div class='loginfo'>$val</div>";   
+    } else {
+      $logDataHtml .= "<div class='log'>$val</div>";   
+    }
+  }
 
 	$app->tpl->setVar("log_data", $logData);
 } else {
diff --git a/interface/web/themes/default/css/styles.css b/interface/web/themes/default/css/styles.css
index 1820dbc..b8de084 100644
--- a/interface/web/themes/default/css/styles.css
+++ b/interface/web/themes/default/css/styles.css
@@ -438,6 +438,9 @@
     font-family: Consolas, "Lucida Console", "Courier New", monospace;
     font-size: 0.9em;
 }
+.codeview .logerror { background: rgb(255,0,0); }
+.codeview .logwarn { background: rgb(255,204,0); }
+.codeview .loginfo { background: rgb(153,204,255); }
 /* Lists */
 table.list {
     width: 100%;

--
Gitblit v1.9.1