From ec3d9abb92487aab666cab95d6f5b3d4e9d23dbb Mon Sep 17 00:00:00 2001
From: cfoe <cfoe@ispconfig3>
Date: Thu, 24 May 2012 03:00:18 -0400
Subject: [PATCH] added missing lang-string top_menu_mailuser + changed umlaut code to utf8 chars
---
server/lib/classes/system.inc.php | 32 +++++++++++++++++++++++++++-----
1 files changed, 27 insertions(+), 5 deletions(-)
diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php
index bd42903..7537ef4 100644
--- a/server/lib/classes/system.inc.php
+++ b/server/lib/classes/system.inc.php
@@ -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);
@@ -1249,6 +1253,24 @@
$app->log('Created Maildir '.$maildir_path.' with subfolder: '.$subfolder,LOGLEVEL_DEBUG);
}
+
+ //* Function to create directory paths and chown them to a user and group
+ function mkdirpath($path, $mode = 0755, $user = '', $group = '') {
+ $path_parts = explode('/',$path);
+ $new_path = '';
+ if(is_array($path_parts)) {
+ foreach($path_parts as $part) {
+ $new_path .= '/'.$part;
+ if(!@is_dir($new_path)) {
+ mkdir($new_path);
+ chmod($new_path,$mode);
+ if($user != '') chown($new_path,$user);
+ if($group != '') chgrp($new_path,$group);
+ }
+ }
+ }
+
+ }
}
?>
--
Gitblit v1.9.1