From 3cde193a073f5674b51969cda2aa6c05324eae27 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Wed, 22 Aug 2012 06:58:13 -0400
Subject: [PATCH] Ensure that folder protection is deactivated for the path of the base website when deleting a vhostsubdomain.

---
 server/plugins-available/apache2_plugin.inc.php |   12 ++++++++++--
 1 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php
index 7aaee6f..64313fc 100644
--- a/server/plugins-available/apache2_plugin.inc.php
+++ b/server/plugins-available/apache2_plugin.inc.php
@@ -1464,13 +1464,17 @@
 		//* Remove the mounts
 		$log_folder = 'log';
         if($data['old']['type'] == 'vhostsubdomain') {
-            $tmp = $app->db->queryOneRecord('SELECT `domain` FROM web_domain WHERE domain_id = '.intval($data['old']['parent_domain_id']));
+            $tmp = $app->db->queryOneRecord('SELECT `domain`,`document_root` FROM web_domain WHERE domain_id = '.intval($data['old']['parent_domain_id']));
             $subdomain_host = preg_replace('/^(.*)\.' . preg_quote($tmp['domain'], '/') . '$/', '$1', $data['old']['domain']);
             if($subdomain_host == '') $subdomain_host = 'web'.$data['old']['domain_id'];
             $web_folder = $data['old']['web_folder'];
             $log_folder .= '/' . $subdomain_host;
+			$parent_web_document_root = $tmp['document_root'];
+			$app->system->web_folder_protection($parent_web_document_root,false);
             unset($tmp);
-        }
+        } else {
+			$app->system->web_folder_protection($data['old']['document_root'],false);
+		}
 		
 		exec('umount '.escapeshellarg($data['old']['document_root'].'/'.$log_folder));
 		
@@ -1598,6 +1602,10 @@
                 $this->awstats_delete($data,$web_config);
             }
 			
+			if($data['old']['type'] == 'vhostsubdomain') {
+				$app->system->web_folder_protection($parent_web_document_root,true);
+			}
+			
 			if($apache_chrooted) {
 				$app->services->restartServiceDelayed('httpd','restart');
 			} else {

--
Gitblit v1.9.1