From b48a0b43066844fd15a51187fcf4fae45c13b3d6 Mon Sep 17 00:00:00 2001
From: Florian Schaal <florian@schaal-24.de>
Date: Fri, 04 Sep 2015 07:55:02 -0400
Subject: [PATCH] allow empty backup-dir (to disable backups on a server, just empty the backup-dir)
---
server/lib/classes/cron.d/500-backup_mail.inc.php | 2 +-
server/lib/classes/cron.d/500-backup.inc.php | 2 +-
interface/web/admin/form/server_config.tform.php | 4 +---
server/plugins-available/backup_plugin.inc.php | 9 +++++++--
4 files changed, 10 insertions(+), 7 deletions(-)
diff --git a/interface/web/admin/form/server_config.tform.php b/interface/web/admin/form/server_config.tform.php
index 6b00e18..9886208 100644
--- a/interface/web/admin/form/server_config.tform.php
+++ b/interface/web/admin/form/server_config.tform.php
@@ -169,9 +169,7 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '/var/backup',
- 'validators' => array( 0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'backup_dir_error_empty'),
- 1 => array ( 'type' => 'REGEX',
+ 'validators' => array( 0 => array ( 'type' => 'REGEX',
'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
'errmsg'=> 'backup_dir_error_regex'),
),
diff --git a/server/lib/classes/cron.d/500-backup.inc.php b/server/lib/classes/cron.d/500-backup.inc.php
index e196cb5..fcf4095 100644
--- a/server/lib/classes/cron.d/500-backup.inc.php
+++ b/server/lib/classes/cron.d/500-backup.inc.php
@@ -52,7 +52,7 @@
$server_config = $app->getconf->get_server_config($conf['server_id'], 'server');
$global_config = $app->getconf->get_global_config('sites');
- $backup_dir = $server_config['backup_dir'];
+ $backup_dir = trim($server_config['backup_dir']);
$backup_mode = $server_config['backup_mode'];
if($backup_mode == '') $backup_mode = 'userzip';
diff --git a/server/lib/classes/cron.d/500-backup_mail.inc.php b/server/lib/classes/cron.d/500-backup_mail.inc.php
index 6e718b8..0289350 100644
--- a/server/lib/classes/cron.d/500-backup_mail.inc.php
+++ b/server/lib/classes/cron.d/500-backup_mail.inc.php
@@ -54,7 +54,7 @@
$mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail');
$global_config = $app->getconf->get_global_config('sites');
- $backup_dir = $server_config['backup_dir'];
+ $backup_dir = trim($server_config['backup_dir']);
$backup_dir_permissions =0750;
$backup_mode = $server_config['backup_mode'];
diff --git a/server/plugins-available/backup_plugin.inc.php b/server/plugins-available/backup_plugin.inc.php
index cb9911d..50fa81c 100644
--- a/server/plugins-available/backup_plugin.inc.php
+++ b/server/plugins-available/backup_plugin.inc.php
@@ -71,7 +71,9 @@
$web = $app->dbmaster->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ?", $backup['parent_domain_id']);
$server_config = $app->getconf->get_server_config($conf['server_id'], 'server');
- $backup_dir = $server_config['backup_dir'].'/web'.$web['domain_id'];
+ $backup_dir = trim($server_config['backup_dir']);
+ if($backup_dir == '') return;
+ $backup_dir .= '/web'.$web['domain_id'];
$backup_dir_is_ready = true;
//* mount backup directory, if necessary
@@ -178,7 +180,10 @@
$app->uses('ini_parser,file,getconf');
$server_config = $app->getconf->get_server_config($conf['server_id'], 'server');
- $backup_dir = $server_config['backup_dir'];
+ $backup_dir = trim($server_config['backup_dir']);
+
+ if($backup_dir == '') return;
+
$backup_dir_is_ready = true;
//* mount backup directory, if necessary
--
Gitblit v1.9.1