Till Brehm
2016-04-22 ebd0e986ed11f2a34fb58cdd33efbfab192083ad
server/plugins-available/backup_plugin.inc.php
@@ -67,7 +67,7 @@
         $app->uses('ini_parser,file,getconf,system');
         $web = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".$backup['parent_domain_id']);
         $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'];
         
@@ -100,7 +100,7 @@
            //* Make backup available for download
            if($action_name == 'backup_download') {
               //* Copy the backup file to the backup folder of the website
               if(file_exists($backup_dir.'/'.$backup['filename']) && !stristr($backup_dir.'/'.$backup['filename'], '..') && !stristr($backup_dir.'/'.$backup['filename'], 'etc')) {
               if(file_exists($backup_dir.'/'.$backup['filename']) && file_exists($web['document_root'].'/backup/') && !stristr($backup_dir.'/'.$backup['filename'], '..') && !stristr($backup_dir.'/'.$backup['filename'], 'etc')) {
                  copy($backup_dir.'/'.$backup['filename'], $web['document_root'].'/backup/'.$backup['filename']);
                  chgrp($web['document_root'].'/backup/'.$backup['filename'], $web['system_group']);
                  $app->log('cp '.$backup_dir.'/'.$backup['filename'].' '.$web['document_root'].'/backup/'.$backup['filename'], LOGLEVEL_DEBUG);
@@ -128,6 +128,7 @@
            //* Restore a web backup
            if($action_name == 'backup_restore' && $backup['backup_type'] == 'web') {
               $app->system->web_folder_protection($web['document_root'], false);
               if($backup['backup_mode'] == 'userzip') {
                  if(file_exists($backup_dir.'/'.$backup['filename']) && $web['document_root'] != '' && $web['document_root'] != '/' && !stristr($backup_dir.'/'.$backup['filename'], '..') && !stristr($backup_dir.'/'.$backup['filename'], 'etc')) {
                     if(file_exists($web['document_root'].'/backup/'.$backup['filename'])) rename($web['document_root'].'/backup/'.$backup['filename'], $web['document_root'].'/backup/'.$backup['filename'].'.bak');
@@ -148,6 +149,7 @@
                     $app->log('Restored Web backup '.$backup_dir.'/'.$backup['filename'], LOGLEVEL_DEBUG);
                  }
               }
               $app->system->web_folder_protection($web['document_root'], true);
            }
         } else {
            $app->log('Backup directory not ready.', LOGLEVEL_DEBUG);