From 65e8ac35b18fe6f85cfd8ff688a4da521dc568d0 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Fri, 04 Jan 2013 10:52:59 -0500
Subject: [PATCH] Fixed: FS#2606 - New version message

---
 server/lib/classes/system.inc.php |   65 +++++++++++++++++++++++++++-----
 1 files changed, 54 insertions(+), 11 deletions(-)

diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php
index 7a78a2b..c10e6ff 100644
--- a/server/lib/classes/system.inc.php
+++ b/server/lib/classes/system.inc.php
@@ -41,9 +41,9 @@
 	 * @return system
 	 */
 	public function system(){
-		global $go_info;
-	  	$this->server_id = $go_info['isp']['server_id'];
-	  	$this->server_conf = $go_info['isp']['server_conf'];
+		//global $go_info;
+	  	//$this->server_id = $go_info['isp']['server_id'];
+	  	//$this->server_conf = $go_info['isp']['server_conf'];
 	  	$this->server_conf['passwd_datei'] = '/etc/passwd';
 	  	$this->server_conf['shadow_datei'] = '/etc/shadow';
 	  	$this->server_conf['group_datei'] = '/etc/group';
@@ -617,7 +617,12 @@
 		return false;
 	  }
 	  if(file_exists($file)) {
-		return chown($file, $owner);
+		if(@chown($file, $owner)) {
+			return true;
+		} else {
+			$app->log("chown failed: $file : $owner",LOGLEVEL_DEBUG);
+			return false;
+		}
 	  }
 	}
 	
@@ -628,7 +633,12 @@
 		return false;
 	  }
 	  if(file_exists($file)) {
-		return chgrp($file, $group);
+		if(@chgrp($file, $group)) {
+			return true;
+		} else {
+			$app->log("chgrp failed: $file : $group",LOGLEVEL_DEBUG);
+			return false;
+		}
 	  }
 	}
 	
@@ -639,7 +649,12 @@
 			$app->log("Action aborted, file is a symlink: $file",LOGLEVEL_WARN);
 			return false;
 		}
-		return chmod($file, $mode);
+		if(@chmod($file, $mode)) {
+			return true;
+		} else {
+			$app->log("chmod failed: $file : $mode",LOGLEVEL_DEBUG);
+			return false;
+		}
 	}
 	
 	function file_put_contents($filename, $data, $allow_symlink = false) {
@@ -658,7 +673,7 @@
 			$app->log("Action aborted, file is a symlink: $filename",LOGLEVEL_WARN);
 			return false;
 		}
-		return file_put_contents($filename, $data);
+		return file_get_contents($filename, $data);
 	}
 	
 	function rename($filename, $new_filename, $allow_symlink = false) {
@@ -676,17 +691,35 @@
 			$app->log("Action aborted, file is a symlink: $dirname",LOGLEVEL_WARN);
 			return false;
 		}
-		return mkdir($dirname);
+		if(@mkdir($dirname)) {
+			return true;
+		} else {
+			$app->log("mkdir failed: $dirname",LOGLEVEL_DEBUG);
+			return false;
+		}
 	}
 	
-	function unlink($file) {
-		if(file_exists($filename)) {
+	function unlink($filename) {
+		if(file_exists($filename) || is_link($filename)) {
 			return unlink($filename);
 		}
 	}
 	
 	function copy($file1,$file2) {
 		return copy($file1,$file2);
+	}
+	
+	function touch($file, $allow_symlink = false){
+	  global $app;
+	  if($allow_symlink == false && @file_exists($file) && $this->checkpath($file) == false) {
+		$this->unlink($file);
+	  }
+	  if(@touch($file)) {
+			return true;
+	  } else {
+			$app->log("touch failed: $file",LOGLEVEL_DEBUG);
+			return false;
+	  }
 	}
 	
 	function checkpath($path) {
@@ -1132,7 +1165,7 @@
 	function make_trashscan(){
 		global $app;
 	  	//trashscan erstellen
-	  	// Template �ffnen
+	  	// Template Öffnen
 	  	$app->tpl->clear_all();
 	  	$app->tpl->define( array(table    => 'trashscan.master'));
 	
@@ -1494,6 +1527,16 @@
 			unset($shadow_file_array);
 		}
 	}
+	
+	function intval($string, $force_numeric = false) {
+        if(intval($string) == 2147483647) {
+            if($force_numeric == true) return floatval($string);
+            elseif(preg_match('/^([-]?)[0]*([1-9][0-9]*)([^0-9].*)*$/', $string, $match)) return $match[1].$match[2];
+            else return 0;
+        } else {
+            return intval($string);
+        }
+    }
 
 }
 ?>

--
Gitblit v1.9.1