From 897af06af9522ded99b1e0f46730299e89856ffe Mon Sep 17 00:00:00 2001 From: tbrehm <t.brehm@ispconfig.org> Date: Mon, 11 Jun 2012 05:00:57 -0400 Subject: [PATCH] Updated version number to 3.0.4.6 --- server/plugins-available/mail_plugin.inc.php | 42 +++++++++++++++++++++++++----------------- 1 files changed, 25 insertions(+), 17 deletions(-) diff --git a/server/plugins-available/mail_plugin.inc.php b/server/plugins-available/mail_plugin.inc.php index 3e3d208..0437d6a 100644 --- a/server/plugins-available/mail_plugin.inc.php +++ b/server/plugins-available/mail_plugin.inc.php @@ -160,24 +160,30 @@ //* Send the welcome email message if(file_exists($conf['rootpath'].'/conf-custom/mail/welcome_email_'.$conf['language'].'.txt')) { - $tmp = file($conf['rootpath'].'/conf-custom/mail/welcome_email_'.$conf['language'].'.txt'); + $lines = file($conf['rootpath'].'/conf-custom/mail/welcome_email_'.$conf['language'].'.txt'); } elseif(file_exists($conf['rootpath'].'/conf-custom/mail/welcome_email_en.txt')) { - $tmp = file($conf['rootpath'].'/conf-custom/mail/welcome_email_en.txt'); + $lines = file($conf['rootpath'].'/conf-custom/mail/welcome_email_en.txt'); } elseif(file_exists($conf['rootpath'].'/conf/mail/welcome_email_'.$conf['language'].'.txt')) { - $tmp = file($conf['rootpath'].'/conf/mail/welcome_email_'.$conf['language'].'.txt'); + $lines = file($conf['rootpath'].'/conf/mail/welcome_email_'.$conf['language'].'.txt'); } else { - $tmp = file($conf['rootpath'].'/conf/mail/welcome_email_en.txt'); + $lines = file($conf['rootpath'].'/conf/mail/welcome_email_en.txt'); } - $welcome_mail_from = trim(substr($tmp[0],5)); - $welcome_mail_subject = trim(substr($tmp[1],8)); - unset($tmp[0]); - unset($tmp[1]); - $welcome_mail_message = trim(implode($tmp)); - unset($tmp); + //* Get from address + $parts = explode(':',trim($lines[0])); + unset($parts[0]); + $welcome_mail_from = implode(':',$parts); + unset($lines[0]); - $welcomeFromEmail = $mail_config['admin_mail']; - $welcomeFromName = $mail_config['admin_name']; + //* Get subject + $parts = explode(':',trim($lines[1])); + unset($parts[0]); + $welcome_mail_subject = implode(':',$parts); + unset($lines[1]); + + //* Get message + $welcome_mail_message = trim(implode($lines)); + unset($tmp); $mailHeaders = "MIME-Version: 1.0" . "\n"; $mailHeaders .= "Content-type: text/plain; charset=utf-8" . "\n"; @@ -185,11 +191,9 @@ $mailHeaders .= "From: $welcome_mail_from" . "\n"; $mailHeaders .= "Reply-To: $welcome_mail_from" . "\n"; $mailTarget = $data["new"]["email"]; - // $mailSubject = "=?utf-8?Q?" . imap_8bit($welcome_mail_subject) . "?="; $mailSubject = "=?utf-8?B?".base64_encode($welcome_mail_subject)."?="; mail($mailTarget, $mailSubject, $welcome_mail_message, $mailHeaders); - } @@ -308,8 +312,12 @@ function user_delete($event_name,$data) { global $app, $conf; + // get the config + $app->uses("getconf"); + $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail'); + $old_maildir_path = escapeshellcmd($data['old']['maildir']); - if(!stristr($old_maildir_path,'..') && !stristr($old_maildir_path,'*') && strlen($old_maildir_path) >= 10) { + if($old_maildir_path != $mail_config['homedir_path'] && strlen($old_maildir_path) > strlen($mail_config['homedir_path']) && !stristr($old_maildir_path,'..') && !stristr($old_maildir_path,'*') && strlen($old_maildir_path) >= 10) { exec('rm -rf '.escapeshellcmd($old_maildir_path)); $app->log('Deleted the Maildir: '.$data['old']['maildir'],LOGLEVEL_DEBUG); } else { @@ -326,7 +334,7 @@ //* Delete maildomain path $old_maildomain_path = escapeshellcmd($mail_config['homedir_path'].'/'.$data['old']['domain']); - if(!stristr($old_maildomain_path,'//') && !stristr($old_maildomain_path,'..') && !stristr($old_maildomain_path,'*') && !stristr($old_maildomain_path,'&') && strlen($old_maildomain_path) >= 10) { + if($old_maildomain_path != $mail_config['homedir_path'] && !stristr($old_maildomain_path,'//') && !stristr($old_maildomain_path,'..') && !stristr($old_maildomain_path,'*') && !stristr($old_maildomain_path,'&') && strlen($old_maildomain_path) >= 10) { exec('rm -rf '.escapeshellcmd($old_maildomain_path)); $app->log('Deleted the mail domain directory: '.$old_maildomain_path,LOGLEVEL_DEBUG); } else { @@ -335,7 +343,7 @@ //* Delete mailfilter path $old_maildomain_path = escapeshellcmd($mail_config['homedir_path'].'/mailfilters/'.$data['old']['domain']); - if(!stristr($old_maildomain_path,'//') && !stristr($old_maildomain_path,'..') && !stristr($old_maildomain_path,'*') && !stristr($old_maildomain_path,'&') && strlen($old_maildomain_path) >= 10) { + if($old_maildomain_path != $mail_config['homedir_path'].'/mailfilters/' && !stristr($old_maildomain_path,'//') && !stristr($old_maildomain_path,'..') && !stristr($old_maildomain_path,'*') && !stristr($old_maildomain_path,'&') && strlen($old_maildomain_path) >= 10) { exec('rm -rf '.escapeshellcmd($old_maildomain_path)); $app->log('Deleted the mail domain mailfilter directory: '.$old_maildomain_path,LOGLEVEL_DEBUG); } else { -- Gitblit v1.9.1