diff --git a/core/domains/domain_delete.php b/core/domains/domain_delete.php deleted file mode 100644 index f2fa6c7ec7..0000000000 --- a/core/domains/domain_delete.php +++ /dev/null @@ -1,225 +0,0 @@ - - Portions created by the Initial Developer are Copyright (C) 2008-2019 - the Initial Developer. All Rights Reserved. - - Contributor(s): - Mark J Crane -*/ - -//includes - require_once "root.php"; - require_once "resources/require.php"; - require_once "resources/check_auth.php"; - -//check permissions - if (permission_exists('domain_all') && permission_exists('domain_delete')) { - //access granted - } - else { - echo "access denied"; - exit; - } - -//add multi-lingual support - $language = new text; - $text = $language->get(); - - -//delete domain data and files - if (is_uuid($_GET["id"])) { - $id = $_GET["id"]; - - //get the domain using the id - $sql = "select domain_name from v_domains "; - $sql .= "where domain_uuid = :domain_uuid "; - $parameters['domain_uuid'] = $id; - $database = new database; - $domain_name = $database->select($sql, $parameters, 'column'); - unset($sql, $parameters); - - //get the domain settings - $sql = "select * from v_domain_settings "; - $sql .= "where domain_uuid = :domain_uuid "; - $sql .= "and domain_setting_enabled = 'true' "; - $parameters['domain_uuid'] = $id; - $database = new database; - $result = $database->select($sql, $parameters, 'all'); - unset($sql, $parameters); - - if (is_array($result) && sizeof($result) != 0) { - foreach ($result as $row) { - $name = $row['domain_setting_name']; - $category = $row['domain_setting_category']; - $subcategory = $row['domain_setting_subcategory']; - if ($subcategory != '') { - if ($name == "array") { - $_SESSION[$category][] = $row['default_setting_value']; - } - else { - $_SESSION[$category][$name] = $row['default_setting_value']; - } - } - else { - if ($name == "array") { - $_SESSION[$category][$subcategory][] = $row['default_setting_value']; - } - else { - $_SESSION[$category][$subcategory]['uuid'] = $row['default_setting_uuid']; - $_SESSION[$category][$subcategory][$name] = $row['default_setting_value']; - } - } - } - } - unset($result, $row); - - //get the $apps array from the installed apps from the core and mod directories - $config_list = glob($_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/*/*/app_config.php"); - $x=0; - if (isset($config_list)) foreach ($config_list as &$config_path) { - include($config_path); - $x++; - } - - //delete the domain data from all tables in the database - if (isset($apps)) foreach ($apps as &$app) { - if (isset($app['db'])) foreach ($app['db'] as $row) { - if (is_array($row['table']['name'])) { - $table_name = $row['table']['name']['text']; - echo "
";
-						print_r($table_name);
-						echo "
\n";
-					}
-					else {
-						$table_name = $row['table']['name'];
-					}
-					if ($table_name !== "v" && isset($row['fields'])) {
-						foreach ($row['fields'] as $field) {
-							if ($field['name'] == "domain_uuid") {
-
-								$sql = "delete from ".$table_name." where domain_uuid = :domain_uuid ";
-								$parameters['domain_uuid'] = $id;
-								$database = new database;
-								$database->app_name = 'domain_settings';
-								$database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
-								$database->execute($sql, $parameters);
-								unset($sql, $parameters);
-							}
-						}
-					}
-				}
-			}
-
-		//delete the directories
-			if (strlen($domain_name) > 0) {
-				//set the needle
-				if (count($_SESSION["domains"]) > 1) {
-					$v_needle = 'v_'.$domain_name.'_';
-				}
-				else {
-					$v_needle = 'v_';
-				}
-
-				//delete the dialplan
-				unlink($_SESSION['switch']['dialplan']['dir'].'/'.$domain_name.'.xml');
-				if (strlen($_SESSION['switch']['dialplan']['dir']) > 0) {
-					system('rm -rf '.$_SESSION['switch']['dialplan']['dir'].'/'.$domain_name);
-				}
-
-				//delete the dialplan public
-				unlink($_SESSION['switch']['dialplan']['dir'].'/public/'.$domain_name.'.xml');
-				if (strlen($_SESSION['switch']['dialplan']['dir']) > 0) {
-					system('rm -rf '.$_SESSION['switch']['dialplan']['dir'].'/public/'.$domain_name);
-				}
-
-				//delete the extension
-				unlink($_SESSION['switch']['extensions']['dir'].'/'.$domain_name.'.xml');
-				if (strlen($_SESSION['switch']['extensions']['dir']) > 0) {
-					system('rm -rf '.$_SESSION['switch']['extensions']['dir'].'/'.$domain_name);
-				}
-
-				//delete fax
-				if (strlen($_SESSION['switch']['storage']['dir']) > 0) {
-					system('rm -rf '.$_SESSION['switch']['storage']['dir'].'/fax/'.$domain_name);
-				}
-
-				//delete the gateways
-				if($dh = opendir($_SESSION['switch']['sip_profiles']['dir'])) {
-					$files = Array();
-					while($file = readdir($dh)) {
-						if($file != "." && $file != ".." && $file[0] != '.') {
-							if(is_dir($dir . "/" . $file)) {
-								//this is a directory do nothing
-							} else {
-								//check if file extension is xml
-								if (strpos($file, $v_needle) !== false && substr($file,-4) == '.xml') {
-									unlink($_SESSION['switch']['sip_profiles']['dir']."/".$file);
-								}
-							}
-						}
-					}
-					closedir($dh);
-				}
-
-				//delete the ivr menu
-				if($dh = opendir($_SESSION['switch']['conf']['dir']."/ivr_menus/")) {
-					$files = Array();
-					while($file = readdir($dh)) {
-						if($file != "." && $file != ".." && $file[0] != '.') {
-							if(is_dir($dir . "/" . $file)) {
-								//this is a directory
-							} else {
-								if (strpos($file, $v_needle) !== false && substr($file,-4) == '.xml') {
-									unlink($_SESSION['switch']['conf']['dir']."/ivr_menus/".$file);
-								}
-							}
-						}
-					}
-					closedir($dh);
-				}
-
-				//delete the recordings
-				if (strlen($_SESSION['switch'][recordings]['dir']) > 0) {
-					system('rm -rf '.$_SESSION['switch']['recordings']['dir'].'/'.$_SESSION['domain_name'].'/'.$domain_name);
-				}
-
-				//delete voicemail
-				if (strlen($_SESSION['switch']['voicemail']['dir']) > 0) {
-					system('rm -rf '.$_SESSION['switch']['voicemail']['dir'].'/'.$domain_name);
-				}
-			}
-
-		//apply settings reminder
-			$_SESSION["reload_xml"] = true;
-
-		//clear the domains session array to update it
-			unset($_SESSION["domains"]);
-			unset($_SESSION["domain_uuid"]);
-			unset($_SESSION["domain_name"]);
-			unset($_SESSION['domain']);
-			unset($_SESSION['switch']);
-	}
-
-//redirect the browser
-	message::add($text['message-delete']);
-	header("Location: domains.php");
-	return;
-
-?>