From 0a0ca4f6a79f15308c6c2c6b4b7d1de9c8454e3b Mon Sep 17 00:00:00 2001
From: Marius Cramer <m.cramer@pixcept.de>
Date: Wed, 19 Mar 2014 09:49:27 -0400
Subject: [PATCH] Fixed warning message on openSuse due to apache2 module check

---
 server/lib/classes/system.inc.php |   26 ++++++++++++++++++++++++++
 1 files changed, 26 insertions(+), 0 deletions(-)

diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php
index 34830bf..16e91ae 100644
--- a/server/lib/classes/system.inc.php
+++ b/server/lib/classes/system.inc.php
@@ -1759,6 +1759,32 @@
 		}
 	}
 
+	function getapachemodules() {
+		global $app;
+		
+		$cmd = '';
+		if(is_installed('apache2ctl')) $cmd = 'apache2ctl -t -D DUMP_MODULES';
+		elseif(is_installed('apachectl')) $cmd = 'apachectl -t -D DUMP_MODULES';
+		else {
+			$app->log("Could not check apache modules, apachectl not found.", LOGLEVEL_WARN);
+			return array();
+		}
+		
+		exec($cmd . ' 2>/dev/null', $output, $return_var);
+		if($return_var != 0 || !$output[0]) {
+			$app->log("Could not check apache modules, apachectl did not return any data.", LOGLEVEL_WARN);
+			return array();
+		}
+		
+		$modules = array();
+		for($i = 0; $i < count($output); $i++) {
+			if(preg_match('/^\s*(\w+)\s+\((shared|static)\)\s*$/', $output[$i], $matches)) {
+				$modules[] = $matches[1];
+			}
+		}
+		
+		return $modules;
+	}
 }
 
 ?>

--
Gitblit v1.9.1