From 7c2179f4b8604da1167b29ffb92041cf16fc4dbc Mon Sep 17 00:00:00 2001
From: Marius Cramer <m.cramer@pixcept.de>
Date: Thu, 13 Mar 2014 07:37:47 -0400
Subject: [PATCH] Merge remote-tracking branch 'origin/stable-3.0.5'

---
 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 adf7535..ab0879a 100644
--- a/server/lib/classes/system.inc.php
+++ b/server/lib/classes/system.inc.php
@@ -1841,6 +1841,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, $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