From 81d79a79e4b29e9314b64b2e4c49b48ae8319767 Mon Sep 17 00:00:00 2001
From: ftimme <ft@falkotimme.com>
Date: Tue, 11 Oct 2011 08:50:45 -0400
Subject: [PATCH] - WebDAV Users: show only domains that run on Apache (because nginx does not have full WebDAV support).

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

diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php
index 685d4f2..5de2f81 100644
--- a/server/lib/classes/system.inc.php
+++ b/server/lib/classes/system.inc.php
@@ -926,7 +926,7 @@
 	 *
 	 */
 	function network_info(){
-		$dist = $this->server_conf["dist"];
+		$dist = $this->server_conf['dist'];
 	  	ob_start();
 	  	passthru('ifconfig');
 	  	$output = ob_get_contents();
@@ -950,9 +950,9 @@
 	      		}
 	      		$output = trim(ob_get_contents());
 	      		ob_end_clean();
-	      		if($output != ""){
-	        		$ifconfig["INTERFACE"][$interface] = $output;
-	        		$ifconfig["IP"][$output] = $interface;
+	      		if($output != ''){
+	        		$ifconfig['INTERFACE'][$interface] = $output;
+	        		$ifconfig['IP'][$output] = $interface;
 	      		}
 	    	}
 	    	if(!empty($ifconfig)){
@@ -1087,23 +1087,23 @@
 	  if ($urlHandle){
 	    socket_set_timeout($urlHandle, $timeout);
 	
-	    $urlString = 'GET '.$path." HTTP/1.0\r\nHost: ".$url_parts["host"]."\r\nConnection: Keep-Alive\r\nUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)\r\n";
+	    $urlString = 'GET '.$path." HTTP/1.0\r\nHost: ".$url_parts['host']."\r\nConnection: Keep-Alive\r\nUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)\r\n";
 	    if ($user) $urlString .= 'Authorization: Basic '.base64_encode($user.':'.$pass)."\r\n";
 	    $urlString .= "\r\n";
 	    fputs($urlHandle, $urlString);
 	
-	    $month["Jan"] = '01';
-	    $month["Feb"] = '02';
-	    $month["Mar"] = '03';
-	    $month["Apr"] = '04';
-	    $month["May"] = '05';
-	    $month["Jun"] = '06';
-	    $month["Jul"] = '07';
-	    $month["Aug"] = '08';
-	    $month["Sep"] = '09';
-	    $month["Oct"] = '10';
-	    $month["Nov"] = '11';
-	    $month["Dec"] = '12';
+	    $month['Jan'] = '01';
+	    $month['Feb'] = '02';
+	    $month['Mar'] = '03';
+	    $month['Apr'] = '04';
+	    $month['May'] = '05';
+	    $month['Jun'] = '06';
+	    $month['Jul'] = '07';
+	    $month['Aug'] = '08';
+	    $month['Sep'] = '09';
+	    $month['Oct'] = '10';
+	    $month['Nov'] = '11';
+	    $month['Dec'] = '12';
 	    $c = 0;
 	    $l = 0;
 	    $startzeit = time();
@@ -1157,9 +1157,11 @@
 		
 		if($found == 0) {
 			//* add \n if the last line does not end with \n or \r
-			if(substr($out,-1) != "\n" && substr($out,-1) != "\r") $out .= "\n";
+			if(substr($out,-1) != "\n" && substr($out,-1) != "\r" && filesize($filename) > 0) $out .= "\n";
 			//* add the new line at the end of the file
-			if($append == 1) $out .= $new_line."\n";
+			if($append == 1) {
+				$out .= $new_line."\n";
+			}
 		}
 		file_put_contents($filename,$out);
 	}
@@ -1191,13 +1193,15 @@
 		} else {
 			$dir = escapeshellcmd($maildir_path);
 		}
+		
+		if(!is_dir($dir)) mkdir($dir, 0700, true);
 
 		if($user != '' && $user != 'root' && $this->is_user($user)) {
 			$user = escapeshellcmd($user);
 			// I assume that the name of the (vmail group) is the same as the name of the mail user in ISPConfig 3
 			$group = $user;
-			chown($dir,$user);
-			chgrp($dir,$group);
+			if(is_dir($dir)) chown($dir,$user);
+			if(is_dir($dir)) chgrp($dir,$group);
 
 			$chown_mdsub = true;
 		}
@@ -1205,7 +1209,7 @@
 		$maildirsubs = array('cur','new','tmp');
 
 		foreach ($maildirsubs as $mdsub) {
-			mkdir($dir.'/'.$mdsub, 0700, true);
+			if(!is_dir($dir.'/'.$mdsub)) mkdir($dir.'/'.$mdsub, 0700, true);
 			if ($chown_mdsub) {
 				chown($dir.'/'.$mdsub, $user);
 				chgrp($dir.'/'.$mdsub, $group);

--
Gitblit v1.9.1