From b553b2bf146cf20bd3ddfeba52ec5cc5b70a1da9 Mon Sep 17 00:00:00 2001
From: Marius Cramer <m.cramer@pixcept.de>
Date: Thu, 27 Nov 2014 02:31:46 -0500
Subject: [PATCH] Merge remote-tracking branch 'ispc/master' into new-layout-3.1
---
server/plugins-available/mail_plugin.inc.php | 36 ++++++++++--------------------------
1 files changed, 10 insertions(+), 26 deletions(-)
diff --git a/server/plugins-available/mail_plugin.inc.php b/server/plugins-available/mail_plugin.inc.php
index 5ac0951..06b3017 100644
--- a/server/plugins-available/mail_plugin.inc.php
+++ b/server/plugins-available/mail_plugin.inc.php
@@ -398,17 +398,10 @@
//* Delete the mail-backups
$server_config = $app->getconf->get_server_config($conf['server_id'], 'server');
$backup_dir = $server_config['backup_dir'];
- //* mount backup directory, if necessary
$mount_backup = true;
- $server_config['backup_dir_mount_cmd'] = trim($server_config['backup_dir_mount_cmd']);
if($server_config['backup_dir'] != '' && $maildir_path_deleted && $server_config['backup_delete'] == 'y') {
- if($server_config['backup_dir_is_mount'] == 'y' && $server_config['backup_dir_mount_cmd'] != ''){
- if(!$app->system->is_mounted($backup_dir)){
- exec(escapeshellcmd($server_config['backup_dir_mount_cmd']));
- sleep(1);
- if(!$app->system->is_mounted($backup_dir)) $mount_backup = false;
- }
- }
+ //* mount backup directory, if necessary
+ if( $server_config['backup_dir_is_mount'] == 'y' && !$app->system->mount_backup_dir($backup_dir) ) $mount_backup = false;
if($mount_backup){
$sql = "SELECT * FROM mail_domain WHERE domain = '".explode("@",$data['old']['email'])[1]."'";
$domain_rec = $app->db->queryOneRecord($sql);
@@ -416,13 +409,11 @@
$mail_backup_files = 'mail'.$data['old']['mailuser_id'];
exec(escapeshellcmd('rm -f '.$mail_backup_dir.'/'.$mail_backup_files).'*');
//* cleanup database
- $sql = "DELETE FROM mail_backup WHERE server_id = ".$conf['server_id']." AND parent_domain_id = ".$domain_rec['domain_id']." AND mailuser_id = ".$data['old']['mailuser_id'];
- $app->db->query($sql);
- if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql);
+ $sql = "DELETE FROM mail_backup WHERE server_id = ? AND parent_domain_id = ? AND mailuser_id = ?";
+ $app->db->query($sql, $conf['server_id'], $domain_rec['domain_id'], $data['old']['mailuser_id']);
+ if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql, $conf['server_id'], $domain_rec['domain_id'], $data['old']['mailuser_id']);
$app->log('Deleted the mail backups for: '.$data['old']['email'], LOGLEVEL_DEBUG);
-
-
}
}
}
@@ -457,24 +448,17 @@
//* Delete the mail-backups
$server_config = $app->getconf->get_server_config($conf['server_id'], 'server');
$backup_dir = $server_config['backup_dir'];
- //* mount backup directory, if necessary
$mount_backup = true;
- $server_config['backup_dir_mount_cmd'] = trim($server_config['backup_dir_mount_cmd']);
if($server_config['backup_dir'] != '' && $maildomain_path_deleted && $server_config['backup_delete'] == 'y'){
- if($server_config['backup_dir_is_mount'] == 'y' && $server_config['backup_dir_mount_cmd'] != ''){
- if(!$app->system->is_mounted($backup_dir)){
- exec(escapeshellcmd($server_config['backup_dir_mount_cmd']));
- sleep(1);
- if(!$app->system->is_mounted($backup_dir)) $mount_backup = false;
- }
- }
+ //* mount backup directory, if necessary
+ if( $server_config['backup_dir_is_mount'] == 'y' && !$app->system->mount_backup_dir($backup_dir) ) $mount_backup = false;
if($mount_backup){
$mail_backup_dir = $backup_dir.'/mail'.$data['old']['domain_id'];
exec(escapeshellcmd('rm -rf '.$mail_backup_dir));
//* cleanup database
- $sql = "DELETE FROM mail_backup WHERE server_id = ".$conf['server_id']." AND parent_domain_id = ".$data['old']['domain_id'];
- $app->db->query($sql);
- if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql);
+ $sql = "DELETE FROM mail_backup WHERE server_id = ? AND parent_domain_id = ? AND mailuser_id = ?";
+ $app->db->query($sql, $conf['server_id'], $domain_rec['domain_id'], $data['old']['mailuser_id']);
+ if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql, $conf['server_id'], $domain_rec['domain_id'], $data['old']['mailuser_id']);
$app->log('Deleted the mail backup directory: '.$mail_backup_dir, LOGLEVEL_DEBUG);
}
--
Gitblit v1.9.1