diff --git a/core/domain_settings/domain_delete.php b/core/domain_settings/domain_delete.php
index 4fbe9492db..ee3c8380ee 100644
--- a/core/domain_settings/domain_delete.php
+++ b/core/domain_settings/domain_delete.php
@@ -42,54 +42,53 @@
$language = new text;
$text = $language->get();
-//get the id
- if (is_array($_GET)) {
- $id = check_str($_GET["id"]);
- }
//delete domain data and files
- if (is_uuid($id)) {
+ if (is_uuid($_GET["id"])) {
+ $id = $_GET["id"];
+
//get the domain using the id
- $sql = "select * from v_domains ";
- $sql .= "where domain_uuid = '$id' ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- if (isset($result)) {
- foreach ($result as &$row) {
- $domain_name = $row["domain_name"];
- }
- }
- unset ($prep_statement);
+ $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 = '".$id."' ";
+ $sql .= "where domain_uuid = :domain_uuid ";
$sql .= "and domain_setting_enabled = 'true' ";
- $prep_statement = $db->prepare($sql);
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- if (isset($result)) foreach($result as $row) {
- $name = $row['domain_setting_name'];
- $category = $row['domain_setting_category'];
- $subcategory = $row['domain_setting_subcategory'];
- if (strlen($subcategory) == 0) {
- if ($name == "array") {
- $_SESSION[$category][] = $row['default_setting_value'];
+ $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 {
- $_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'];
+ 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");
@@ -115,9 +114,13 @@
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 = '$id'; ";
- //echo $sql."
\n";
- $db->query($sql);
+ $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);
}
}
}
diff --git a/core/domain_settings/domain_edit.php b/core/domain_settings/domain_edit.php
index e5012beb47..14aa2056dc 100644
--- a/core/domain_settings/domain_edit.php
+++ b/core/domain_settings/domain_edit.php
@@ -50,9 +50,9 @@
$action = "update";
}
else {
- if (isset($_REQUEST["id"])) {
+ if (is_uuid($_REQUEST["id"])) {
$action = "update";
- $domain_uuid = check_str($_REQUEST["id"]);
+ $domain_uuid = $_REQUEST["id"];
}
else {
$action = "add";
@@ -61,16 +61,16 @@
//get http post variables and set them to php variables
if (count($_POST) > 0) {
- $domain_name = check_str($_POST["domain_name"]);
- $domain_enabled = check_str($_POST["domain_enabled"]);
- $domain_description = check_str($_POST["domain_description"]);
+ $domain_name = $_POST["domain_name"];
+ $domain_enabled = $_POST["domain_enabled"];
+ $domain_description = $_POST["domain_description"];
}
if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
$msg = '';
if ($action == "update") {
- $domain_uuid = check_str($_POST["domain_uuid"]);
+ $domain_uuid = $_POST["domain_uuid"];
}
//check for all required data
@@ -92,131 +92,177 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
//add or update the database
if ($_POST["persistformvar"] != "true") {
if ($action == "add" && permission_exists('domain_add')) {
- $sql = "select count(*) as num_rows from v_domains ";
- $sql .= "where domain_name = '".$domain_name."' ";
- $prep_statement = $db->prepare($sql);
- if ($prep_statement) {
- $prep_statement->execute();
- $row = $prep_statement->fetch(PDO::FETCH_ASSOC);
- if ($row['num_rows'] == 0) {
- $sql = "insert into v_domains ";
- $sql .= "(";
- $sql .= "domain_uuid, ";
- $sql .= "domain_name, ";
- $sql .= "domain_enabled, ";
- $sql .= "domain_description ";
- $sql .= ")";
- $sql .= "values ";
- $sql .= "(";
- $sql .= "'".uuid()."', ";
- $sql .= "'".$domain_name."', ";
- $sql .= "'".$domain_enabled."', ";
- $sql .= "'".$domain_description."' ";
- $sql .= ")";
- $db->exec(check_sql($sql));
- unset($sql);
- }
+ $sql = "select count(*) from v_domains ";
+ $sql .= "where domain_name = :domain_name ";
+ $parameters['domain_name'] = $domain_name;
+ $database = new database;
+ $num_rows = $database->select($sql, $parameters, 'column');
+ unset($sql, $parameters);
+
+ if ($num_rows == 0) {
+ $array['domains'][0]['domain_uuid'] = uuid();
+ $array['domains'][0]['domain_name'] = $domain_name;
+ $array['domains'][0]['domain_enabled'] = $domain_enabled;
+ $array['domains'][0]['domain_description'] = $domain_description;
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->save($array);
+ unset($array);
}
+
}
if ($action == "update" && permission_exists('domain_edit')) {
// get original domain name
$sql = "select domain_name from v_domains ";
- $sql .= "where domain_uuid = '".$domain_uuid."' ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- foreach ($result as &$row) {
- $original_domain_name = $row["domain_name"];
- break;
- }
- unset($sql, $prep_statement);
+ $sql .= "where domain_uuid = :domain_uuid ";
+ $parameters['domain_uuid'] = $domain_uuid;
+ $database = new database;
+ $original_domain_name = $database->select($sql, $parameters, 'column');
+ unset($sql, $parameters);
// update domain name, description
- $sql = "update v_domains set ";
- $sql .= "domain_name = '".$domain_name."', ";
- $sql .= "domain_enabled = '".$domain_enabled."', ";
- $sql .= "domain_description = '".$domain_description."' ";
- $sql .= "where domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $array['domains'][0]['domain_uuid'] = $domain_uuid;
+ $array['domains'][0]['domain_name'] = $domain_name;
+ $array['domains'][0]['domain_enabled'] = $domain_enabled;
+ $array['domains'][0]['domain_description'] = $domain_description;
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->save($array);
+ unset($array);
if ($original_domain_name != $domain_name) {
// update dialplans
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/dialplans/app_config.php")){
$sql = "update v_dialplans ";
- $sql .= "set dialplan_context = '".$domain_name."' ";
- $sql .= "where dialplan_context = '".$original_domain_name."' ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $sql .= "set dialplan_context = :dialplan_context_new ";
+ $sql .= "where dialplan_context = :dialplan_context_old ";
+ $sql .= "and domain_uuid = :domain_uuid ";
+ $parameters['dialplan_context_new'] = $domain_name;
+ $parameters['dialplan_context_old'] = $original_domain_name;
+ $parameters['domain_uuid'] = $domain_uuid;
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->execute($sql, $parameters);
+ unset($sql, $parameters);
$sql = "update v_dialplans ";
- $sql .= "set dialplan_xml = replace(dialplan_xml, $original_domain_name, $domain_name); ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $sql .= "set dialplan_xml = replace(dialplan_xml, :dialplan_xml_old, :dialplan_xml_new); ";
+ $sql .= "and domain_uuid = :domain_uuid ";
+ $parameters['dialplan_xml_old'] = $original_domain_name;
+ $parameters['dialplan_xml_new'] = $domain_name;
+ $parameters['domain_uuid'] = $domain_uuid;
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->execute($sql, $parameters);
+ unset($sql, $parameters);
}
// update destinations
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/destinations/app_config.php")){
$sql = "update v_destinations ";
- $sql .= "set destination_data = replace(destination_data, $original_domain_name, $domain_name); ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $sql .= "set destination_data = replace(destination_data, :destination_data_old, :destination_data_new); ";
+ $sql .= "and domain_uuid = :domain_uuid ";
+ $parameters['destination_data_old'] = $original_domain_name;
+ $parameters['destination_data_new'] = $domain_name;
+ $parameters['domain_uuid'] = $domain_uuid;
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->execute($sql, $parameters);
+ unset($sql, $parameters);
}
// update extensions (accountcode, user_context, dial_domain)
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/extensions/app_config.php")){
$sql = "update v_extensions set ";
- $sql .= "accountcode = '".$domain_name."' ";
- $sql .= "where accountcode = '".$original_domain_name."' ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $sql .= "accountcode = :account_code_new ";
+ $sql .= "where accountcode = :account_code_old ";
+ $sql .= "and domain_uuid = :domain_uuid ";
+ $parameters['account_code_new'] = $domain_name;
+ $parameters['account_code_old'] = $original_domain_name;
+ $parameters['domain_uuid'] = $domain_uuid;
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->execute($sql, $parameters);
+ unset($sql, $parameters);
$sql = "update v_extensions set ";
- $sql .= "user_context = '".$domain_name."' ";
- $sql .= "where user_context = '".$original_domain_name."' ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $sql .= "user_context = :user_context_new ";
+ $sql .= "where user_context = :user_context_old ";
+ $sql .= "and domain_uuid = :domain_uuid ";
+ $parameters['user_context_new'] = $domain_name;
+ $parameters['user_context_old'] = $original_domain_name;
+ $parameters['domain_uuid'] = $domain_uuid;
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->execute($sql, $parameters);
+ unset($sql, $parameters);
$sql = "update v_extensions set ";
- $sql .= "dial_domain = '".$domain_name."' ";
- $sql .= "where dial_domain = '".$original_domain_name."' ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $sql .= "dial_domain = :dial_domain_new ";
+ $sql .= "where dial_domain = :dial_domain_old ";
+ $sql .= "and domain_uuid = :domain_uuid ";
+ $parameters['dial_domain_new'] = $domain_name;
+ $parameters['dial_domain_old'] = $original_domain_name;
+ $parameters['domain_uuid'] = $domain_uuid;
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->execute($sql, $parameters);
+ unset($sql, $parameters);
}
// update cdr records (domain_name, context)
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/xml_cdr/app_config.php")){
$sql = "update v_xml_cdr set ";
- $sql .= "domain_name = '".$domain_name."' ";
- $sql .= "where domain_name = '".$original_domain_name."' ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $sql .= "domain_name = :domain_name_new ";
+ $sql .= "where domain_name = :domain_name_old ";
+ $sql .= "and domain_uuid = :domain_uuid ";
+ $parameters['domain_name_new'] = $domain_name;
+ $parameters['domain_name_old'] = $original_domain_name;
+ $parameters['domain_uuid'] = $domain_uuid;
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->execute($sql, $parameters);
+ unset($sql, $parameters);
$sql = "update v_xml_cdr set ";
- $sql .= "context = '".$domain_name."' ";
- $sql .= "where context = '".$original_domain_name."' ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $sql .= "context = :context_new ";
+ $sql .= "where context = :context_old ";
+ $sql .= "and domain_uuid = :domain_uuid ";
+ $parameters['context_new'] = $domain_name;
+ $parameters['context_old'] = $original_domain_name;
+ $parameters['domain_uuid'] = $domain_uuid;
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->execute($sql, $parameters);
+ unset($sql, $parameters);
}
// update billing, if installed
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/billing/app_config.php")){
$sql = "update v_billings set ";
- $sql .= "type_value = '".$domain_name."' ";
- $sql .= "where type_value = '".$original_domain_name."' ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $sql .= "type_value = :type_value_new ";
+ $sql .= "where type_value = :type_value_old ";
+ $sql .= "and domain_uuid = :domain_uuid ";
+ $parameters['type_value_new'] = $domain_name;
+ $parameters['type_value_old'] = $original_domain_name;
+ $parameters['domain_uuid'] = $domain_uuid;
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->execute($sql, $parameters);
+ unset($sql, $parameters);
}
// rename switch/storage/voicemail/default/[domain] (folder)
@@ -270,262 +316,328 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
// update conference session recording paths
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/conference_centers/app_config.php")){
$sql = "select conference_session_uuid, recording from v_conference_sessions ";
- $sql .= "where domain_uuid = '".$domain_uuid."' ";
- $sql .= "and recording like '%".$original_domain_name."%' ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- foreach ($result as &$row) {
- // get current values
- $conference_session_uuid = $row["conference_session_uuid"];
- $recording = $row["recording"];
- // replace old domain name with new domain
- $recording = str_replace($original_domain_name, $domain_name, $recording);
- // update db record
- $sql = "update v_conference_sessions set ";
- $sql .= "recording = '".$recording."' ";
- $sql .= "where conference_session_uuid = '".$conference_session_uuid."' ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $sql .= "where domain_uuid = :domain_uuid ";
+ $sql .= "and recording like :recording ";
+ $parameters['domain_uuid'] = $domain_uuid;
+ $parameters['recording'] = '%'.$original_domain_name.'%';
+ $database = new database;
+ $result = $database->select($sql, $parameters, 'all');
+ unset($sql, $parameters);
+
+ if (is_array($result) && sizeof($result) != 0) {
+ foreach ($result as $index => &$row) {
+ // update db record
+ $array['conference_sessions'][$index]['conference_session_uuid'] = $row["conference_session_uuid"];
+ $array['conference_sessions'][$index]['recording'] = str_replace($original_domain_name, $domain_name, $row["recording"]);
+ }
+ if (is_array($array) && sizeof($array) != 0) {
+ $p = new permissions;
+ $p->add('conference_session_edit', 'temp');
+
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->save($array);
+ unset($array);
+
+ $p->delete('conference_session_edit', 'temp');
+ }
}
- unset($sql, $prep_statement, $result);
+ unset($result);
}
// update conference center greetings
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/conference_centers/app_config.php")){
$sql = "select conference_center_uuid, conference_center_greeting from v_conference_centers ";
- $sql .= "where domain_uuid = '".$domain_uuid."' ";
- $sql .= "and conference_center_greeting like '%".$original_domain_name."%' ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- foreach ($result as &$row) {
- // get current values
- $conference_center_uuid = $row["conference_center_uuid"];
- $conference_center_greeting = $row["conference_center_greeting"];
- // replace old domain name with new domain
- $conference_center_greeting = str_replace($original_domain_name, $domain_name, $conference_center_greeting);
- // update db record
- $sql = "update v_conference_centers set ";
- $sql .= "conference_center_greeting = '".$conference_center_greeting."' ";
- $sql .= "where conference_center_uuid = '".$conference_center_uuid."' ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $sql .= "where domain_uuid = :domain_uuid ";
+ $sql .= "and conference_center_greeting like :conference_center_greeting ";
+ $parameters['domain_uuid'] = $domain_uuid;
+ $parameters['conference_center_greeting'] = '%'.$original_domain_name.'%';
+ $database = new database;
+ $result = $database->select($sql, $parameters, 'all');
+ unset($sql, $parameters);
+
+ if (is_array($result) && sizeof($result) != 0) {
+ foreach ($result as $index => &$row) {
+ // update db record
+ $array['conference_centers'][$index]['conference_center_uuid'] = $row["conference_center_uuid"];
+ $array['conference_centers'][$index]['conference_center_greeting'] = str_replace($original_domain_name, $domain_name, $row["conference_center_greeting"]);
+ }
+ if (is_array($array) && sizeof($array) != 0) {
+ $p = new permissions;
+ $p->add('conference_center_edit', 'temp');
+
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->save($array);
+ unset($array);
+
+ $p->delete('conference_center_edit', 'temp');
+ }
}
- unset($sql, $prep_statement, $result);
+ unset($result);
}
// update ivr menu greetings
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/ivr_menu/app_config.php")){
$sql = "select ivr_menu_uuid, ivr_menu_greet_long, ivr_menu_greet_short from v_ivr_menus ";
- $sql .= "where domain_uuid = '".$domain_uuid."' ";
+ $sql .= "where domain_uuid = :domain_uuid ";
$sql .= "and ( ";
- $sql .= "ivr_menu_greet_long like '%".$original_domain_name."%' or ";
- $sql .= "ivr_menu_greet_short like '%".$original_domain_name."%' ";
+ $sql .= "ivr_menu_greet_long like :ivr_menu_greet_long or ";
+ $sql .= "ivr_menu_greet_short like :ivr_menu_greet_short ";
$sql .= ") ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- foreach ($result as &$row) {
- // get current values
- $ivr_menu_uuid = $row["ivr_menu_uuid"];
- $ivr_menu_greet_long = $row["ivr_menu_greet_long"];
- $ivr_menu_greet_short = $row["ivr_menu_greet_short"];
- // replace old domain name with new domain
- $ivr_menu_greet_long = str_replace($original_domain_name, $domain_name, $ivr_menu_greet_long);
- $ivr_menu_greet_short = str_replace($original_domain_name, $domain_name, $ivr_menu_greet_short);
- // update db record
- $sql = "update v_ivr_menus set ";
- $sql .= "ivr_menu_greet_long = '".$ivr_menu_greet_long."', ";
- $sql .= "ivr_menu_greet_short = '".$ivr_menu_greet_short."' ";
- $sql .= "where ivr_menu_uuid = '".$ivr_menu_uuid."' ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $parameters['domain_uuid'] = $domain_uuid;
+ $parameters['ivr_menu_greet_long'] = '%'.$original_domain_name.'%';
+ $parameters['ivr_menu_greet_short'] = '%'.$original_domain_name.'%';
+ $database = new database;
+ $result = $database->select($sql, $parameters, 'all');
+ unset($sql, $parameters);
+
+ if (is_array($result) && sizeof($result) != 0) {
+ foreach ($result as $index => &$row) {
+ // update db record
+ $array['ivr_menus'][$index]['ivr_menu_uuid'] = $row["ivr_menu_uuid"];
+ $array['ivr_menus'][$index]['ivr_menu_greet_long'] = str_replace($original_domain_name, $domain_name, $row["ivr_menu_greet_long"]);
+ $array['ivr_menus'][$index]['ivr_menu_greet_short'] = str_replace($original_domain_name, $domain_name, $row["ivr_menu_greet_short"]);
+ }
+ if (is_array($array) && sizeof($array) != 0) {
+ $p = new permissions;
+ $p->add('ivr_menu_edit', 'temp');
+
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->save($array);
+ unset($array);
+
+ $p->delete('ivr_menu_edit', 'temp');
+ }
}
- unset($sql, $prep_statement, $result);
+ unset($result);
}
// update ivr menu option parameters
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/ivr_menu/app_config.php")){
$sql = "select ivr_menu_option_uuid, ivr_menu_option_param from v_ivr_menu_options ";
- $sql .= "where domain_uuid = '".$domain_uuid."' ";
- $sql .= "and ivr_menu_option_param like '%".$original_domain_name."%' ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- foreach ($result as &$row) {
- // get current values
- $ivr_menu_option_uuid = $row["ivr_menu_option_uuid"];
- $ivr_menu_option_param = $row["ivr_menu_option_param"];
- // replace old domain name with new domain
- $ivr_menu_option_param = str_replace($original_domain_name, $domain_name, $ivr_menu_option_param);
- // update db record
- $sql = "update v_ivr_menu_options set ";
- $sql .= "ivr_menu_option_param = '".$ivr_menu_option_param."' ";
- $sql .= "where ivr_menu_option_uuid = '".$ivr_menu_option_uuid."' ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $sql .= "where domain_uuid = :domain_uuid ";
+ $sql .= "and ivr_menu_option_param like :ivr_menu_option_param ";
+ $parameters['domain_uuid'] = $domain_uuid;
+ $parameters['ivr_menu_option_param'] = '%'.$original_domain_name.'%';
+ $database = new database;
+ $result = $database->select($sql, $parameters, 'all');
+ unset($sql, $parameters);
+
+ if (is_array($result) && sizeof($result) != 0) {
+ foreach ($result as $index => &$row) {
+ // update db record
+ $array['ivr_menu_options'][$index]['ivr_menu_option_uuid'] = $row["ivr_menu_option_uuid"];
+ $array['ivr_menu_options'][$index]['ivr_menu_option_param'] = str_replace($original_domain_name, $domain_name, $row["ivr_menu_option_param"]);
+ }
+ if (is_array($array) && sizeof($array) != 0) {
+ $p = new permissions;
+ $p->add('ivr_menu_option_edit', 'temp');
+
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->save($array);
+ unset($array);
+
+ $p->delete('ivr_menu_option_edit', 'temp');
+ }
}
- unset($sql, $prep_statement, $result);
+ unset($result);
}
// update call center queue record templates
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/call_center/app_config.php")){
$sql = "select call_center_queue_uuid, queue_record_template from v_call_center_queues ";
- $sql .= "where domain_uuid = '".$domain_uuid."' ";
- $sql .= "and queue_record_template like '%".$original_domain_name."%' ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- foreach ($result as &$row) {
- // get current values
- $call_center_queue_uuid = $row["call_center_queue_uuid"];
- $queue_record_template = $row["queue_record_template"];
- // replace old domain name with new domain
- $queue_record_template = str_replace($original_domain_name, $domain_name, $queue_record_template);
- // update db record
- $sql = "update v_call_center_queues set ";
- $sql .= "queue_record_template = '".$queue_record_template."' ";
- $sql .= "where call_center_queue_uuid = '".$call_center_queue_uuid."' ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $sql .= "where domain_uuid = :domain_uuid ";
+ $sql .= "and queue_record_template like :queue_record_template ";
+ $parameters['domain_uuid'] = $domain_uuid;
+ $parameters['queue_record_template'] = '%'.$original_domain_name.'%';
+ $database = new database;
+ $result = $database->select($sql, $parameters, 'all');
+ unset($sql, $parameters);
+
+ if (is_array($result) && sizeof($result) != 0) {
+ foreach ($result as $index => &$row) {
+ // update db record
+ $array['call_center_queues'][$index]['call_center_queue_uuid'] = $row["call_center_queue_uuid"];
+ $array['call_center_queues'][$index]['queue_record_template'] = str_replace($original_domain_name, $domain_name, $row["queue_record_template"]);
+ }
+ if (is_array($array) && sizeof($array) != 0) {
+ $p = new permissions;
+ $p->add('call_center_queue_edit', 'temp');
+
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->save($array);
+ unset($array);
+
+ $p->delete('call_center_queue_edit', 'temp');
+ }
}
- unset($sql, $prep_statement, $result);
+ unset($result);
}
// update call center agent contacts
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/call_center/app_config.php")){
$sql = "select call_center_agent_uuid, agent_contact from v_call_center_agents ";
- $sql .= "where domain_uuid = '".$domain_uuid."' ";
- $sql .= "and agent_contact like '%".$original_domain_name."%' ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- foreach ($result as &$row) {
- // get current values
- $call_center_agent_uuid = $row["call_center_agent_uuid"];
- $agent_contact = $row["agent_contact"];
- // replace old domain name with new domain
- $agent_contact = str_replace($original_domain_name, $domain_name, $agent_contact);
- // update db record
- $sql = "update v_call_center_agents set ";
- $sql .= "agent_contact = '".$agent_contact."' ";
- $sql .= "where call_center_agent_uuid = '".$call_center_agent_uuid."' ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $sql .= "where domain_uuid = :domain_uuid ";
+ $sql .= "and agent_contact like :agent_contact ";
+ $parameters['domain_uuid'] = $domain_uuid;
+ $parameters['agent_contact'] = '%'.$original_domain_name.'%';
+ $database = new database;
+ $result = $database->select($sql, $parameters, 'all');
+ unset($sql, $parameters);
+
+ if (is_array($result) && sizeof($result) != 0) {
+ foreach ($result as $index => &$row) {
+ // update db record
+ $array['call_center_agents'][$index]['call_center_agent_uuid'] = $row["call_center_agent_uuid"];
+ $array['call_center_agents'][$index]['agent_contact'] = str_replace($original_domain_name, $domain_name, $row["agent_contact"]);
+ }
+ if (is_array($array) && sizeof($array) != 0) {
+ $p = new permissions;
+ $p->add('call_center_agent_edit', 'temp');
+
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->save($array);
+ unset($array);
+
+ $p->delete('call_center_agent_edit', 'temp');
+ }
}
- unset($sql, $prep_statement, $result);
+ unset($result);
}
// update call flows data, alternate-data and contexts
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/call_flows/app_config.php")){
$sql = "select call_flow_uuid, call_flow_data, call_flow_alternate_data, call_flow_context from v_call_flows ";
- $sql .= "where domain_uuid = '".$domain_uuid."' ";
+ $sql .= "where domain_uuid = :domain_uuid ";
$sql .= "and ( ";
- $sql .= "call_flow_data like '%".$original_domain_name."%' or ";
- $sql .= "call_flow_alternate_data like '%".$original_domain_name."%' or ";
- $sql .= "call_flow_context like '%".$original_domain_name."%' ";
+ $sql .= "call_flow_data like :call_flow_data or ";
+ $sql .= "call_flow_alternate_data like :call_flow_alternate_data or ";
+ $sql .= "call_flow_context like :call_flow_context ";
$sql .= ") ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- foreach ($result as &$row) {
- // get current values
- $call_flow_uuid = $row["call_flow_uuid"];
- $call_flow_data = $row["call_flow_data"];
- $call_flow_alternate_data = $row["call_flow_alternate_data"];
- $call_flow_context = $row["call_flow_context"];
- // replace old domain name with new domain
- $call_flow_data = str_replace($original_domain_name, $domain_name, $call_flow_data);
- $call_flow_alternate_data = str_replace($original_domain_name, $domain_name, $call_flow_alternate_data);
- $call_flow_context = str_replace($original_domain_name, $domain_name, $call_flow_context);
- // update db record
- $sql = "update v_call_flows set ";
- $sql .= "call_flow_data = '".$call_flow_data."', ";
- $sql .= "call_flow_alternate_data = '".$call_flow_alternate_data."', ";
- $sql .= "call_flow_context = '".$call_flow_context."' ";
- $sql .= "where call_flow_uuid = '".$call_flow_uuid."' ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $parameters['domain_uuid'] = $domain_uuid;
+ $parameters['call_flow_data'] = '%'.$original_domain_name.'%';
+ $parameters['call_flow_alternate_data'] = '%'.$original_domain_name.'%';
+ $parameters['call_flow_context'] = '%'.$original_domain_name.'%';
+ $database = new database;
+ $result = $database->select($sql, $parameters, 'all');
+ unset($sql, $parameters);
+
+ if (is_array($result) && sizeof($result) != 0) {
+ foreach ($result as $index => &$row) {
+ // update db record
+ $array['call_flows'][$index]['call_flow_uuid'] = $row["call_flow_uuid"];
+ $array['call_flows'][$index]['call_flow_data'] = str_replace($original_domain_name, $domain_name, $row["call_flow_data"]);
+ $array['call_flows'][$index]['call_flow_alternate_data'] = str_replace($original_domain_name, $domain_name, $row["call_flow_alternate_data"]);
+ $array['call_flows'][$index]['call_flow_context'] = str_replace($original_domain_name, $domain_name, $row["call_flow_context"]);
+ }
+ if (is_array($array) && sizeof($array) != 0) {
+ $p = new permissions;
+ $p->add('call_flow_edit', 'temp');
+
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->save($array);
+ unset($array);
+
+ $p->delete('call_flow_edit', 'temp');
+ }
}
- unset($sql, $prep_statement, $result);
+ unset($result);
}
// update ring group context, forward destination, timeout data
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/ring_groups/app_config.php")){
$sql = "select ring_group_uuid, ring_group_context, ring_group_forward_destination, ring_group_timeout_data from v_ring_groups ";
- $sql .= "where domain_uuid = '".$domain_uuid."' ";
+ $sql .= "where domain_uuid = :domain_uuid ";
$sql .= "and ( ";
- $sql .= "ring_group_context like '%".$original_domain_name."%' or ";
- $sql .= "ring_group_forward_destination like '%".$original_domain_name."%' or ";
- $sql .= "ring_group_timeout_data like '%".$original_domain_name."%' ";
+ $sql .= "ring_group_context like :ring_group_context or ";
+ $sql .= "ring_group_forward_destination like :ring_group_forward_destination or ";
+ $sql .= "ring_group_timeout_data like :ring_group_timeout_data ";
$sql .= ") ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- foreach ($result as &$row) {
- // get current values
- $ring_group_uuid = $row["ring_group_uuid"];
- $ring_group_context = $row["ring_group_context"];
- $ring_group_forward_destination = $row["ring_group_forward_destination"];
- $ring_group_timeout_data = $row["ring_group_timeout_data"];
- // replace old domain name with new domain
- $ring_group_context = str_replace($original_domain_name, $domain_name, $ring_group_context);
- $ring_group_forward_destination = str_replace($original_domain_name, $domain_name, $ring_group_forward_destination);
- $ring_group_timeout_data = str_replace($original_domain_name, $domain_name, $ring_group_timeout_data);
- // update db record
- $sql = "update v_ring_groups set ";
- $sql .= "ring_group_context = '".$ring_group_context."', ";
- $sql .= "ring_group_forward_destination = '".$ring_group_forward_destination."', ";
- $sql .= "ring_group_timeout_data = '".$ring_group_timeout_data."' ";
- $sql .= "where ring_group_uuid = '".$ring_group_uuid."' ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $parameters['domain_uuid'] = $domain_uuid;
+ $parameters['ring_group_context'] = '%'.$original_domain_name.'%';
+ $parameters['ring_group_forward_destination'] = '%'.$original_domain_name.'%';
+ $parameters['ring_group_timeout_data'] = '%'.$original_domain_name.'%';
+ $database = new database;
+ $result = $database->select($sql, $parameters, 'all');
+ unset($sql, $parameters);
+
+ if (is_array($result) && sizeof($result) != 0) { $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ foreach ($result as $index => &$row) {
+ // update db record
+ $array['ring_groups'][$index]['ring_group_uuid'] = $row["ring_group_uuid"];
+ $array['ring_groups'][$index]['ring_group_context'] = str_replace($original_domain_name, $domain_name, $row["ring_group_context"]);
+ $array['ring_groups'][$index]['ring_group_forward_destination'] = str_replace($original_domain_name, $domain_name, $row["ring_group_forward_destination"]);
+ $array['ring_groups'][$index]['ring_group_timeout_data'] = str_replace($original_domain_name, $domain_name, $row["ring_group_timeout_data"]);
+ }
+ if (is_array($array) && sizeof($array) != 0) {
+ $p = new permissions;
+ $p->add('ring_group_edit', 'temp');
+
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->save($array);
+ unset($array);
+
+ $p->delete('ring_group_edit', 'temp');
+ }
}
- unset($sql, $prep_statement, $result);
+ unset($result);
}
// update device lines server address, outbound proxy
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/devices/app_config.php")){
$sql = "select device_line_uuid, server_address, outbound_proxy_primary, outbound_proxy_secondary from v_device_lines ";
- $sql .= "where domain_uuid = '".$domain_uuid."' ";
+ $sql .= "where domain_uuid = :domain_uuid ";
$sql .= "and ( ";
- $sql .= "server_address like '%".$original_domain_name."%' or ";
- $sql .= "outbound_proxy_primary like '%".$original_domain_name."%' or ";
- $sql .= "outbound_proxy_secondary like '%".$original_domain_name."%' ";
+ $sql .= "server_address like :server_address or ";
+ $sql .= "outbound_proxy_primary like :outbound_proxy_primary or ";
+ $sql .= "outbound_proxy_secondary like :outbound_proxy_secondary ";
$sql .= ") ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- foreach ($result as &$row) {
- // get current values
- $device_line_uuid = $row["device_line_uuid"];
- $server_address = $row["server_address"];
- $outbound_proxy_primary = $row["outbound_proxy_primary"];
- $outbound_proxy_secondary = $row["outbound_proxy_secondary"];
- // replace old domain name with new domain
- $server_address = str_replace($original_domain_name, $domain_name, $server_address);
- $outbound_proxy_primary = str_replace($original_domain_name, $domain_name, $outbound_proxy_primary);
- $outbound_proxy_secondary = str_replace($original_domain_name, $domain_name, $outbound_proxy_secondary);
- // update db record
- $sql = "update v_device_lines set ";
- $sql .= "server_address = '".$server_address."', ";
- $sql .= "outbound_proxy_primary = '".$outbound_proxy_primary."' ";
- $sql .= "outbound_proxy_secondary = '".$outbound_proxy_secondary."' ";
- $sql .= "where device_line_uuid = '".$device_line_uuid."' ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $parameters['domain_uuid'] = $domain_uuid;
+ $parameters['server_address'] = '%'.$original_domain_name.'%';
+ $parameters['outbound_proxy_primary'] = '%'.$original_domain_name.'%';
+ $parameters['outbound_proxy_secondary'] = '%'.$original_domain_name.'%';
+ $database = new database;
+ $result = $database->select($sql, $parameters, 'all');
+ unset($sql, $parameters);
+
+ if (is_array($result) && sizeof($result) != 0) {
+ foreach ($result as $index => &$row) {
+ // update db record
+ $array['device_lines'][$index]['device_line_uuid'] = $row["device_line_uuid"];
+ $array['device_lines'][$index]['server_address'] = str_replace($original_domain_name, $domain_name, $row["server_address"]);
+ $array['device_lines'][$index]['outbound_proxy_primary'] = str_replace($original_domain_name, $domain_name, $row["outbound_proxy_primary"]);
+ $array['device_lines'][$index]['outbound_proxy_secondary'] = str_replace($original_domain_name, $domain_name, $row["outbound_proxy_secondary"]);
+ }
+ if (is_array($array) && sizeof($array) != 0) {
+ $p = new permissions;
+ $p->add('device_line_edit', 'temp');
+
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->save($array);
+ unset($array);
+
+ $p->delete('device_line_edit', 'temp');
+ }
}
- unset($sql, $prep_statement, $result);
+ unset($result);
}
// update dialplan, dialplan/public xml files
@@ -542,26 +654,33 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
// update dialplan details
if (file_exists($_SERVER["PROJECT_ROOT"]."/app/dialplans/app_config.php")){
$sql = "select dialplan_detail_uuid, dialplan_detail_data from v_dialplan_details ";
- $sql .= "where domain_uuid = '".$domain_uuid."' ";
- $sql .= "and dialplan_detail_data like '%".$original_domain_name."%' ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- foreach ($result as &$row) {
- // get current values
- $dialplan_detail_uuid = $row["dialplan_detail_uuid"];
- $dialplan_detail_data = $row["dialplan_detail_data"];
- // replace old domain name with new domain
- $dialplan_detail_data = str_replace($original_domain_name, $domain_name, $dialplan_detail_data);
- // update db record
- $sql = "update v_dialplan_details set ";
- $sql .= "dialplan_detail_data = '".$dialplan_detail_data."' ";
- $sql .= "where dialplan_detail_uuid = '".$dialplan_detail_uuid."' ";
- $sql .= "and domain_uuid = '".$domain_uuid."' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $sql .= "where domain_uuid = :domain_uuid ";
+ $sql .= "and dialplan_detail_data like :dialplan_detail_data ";
+ $parameters['domain_uuid'] = $domain_uuid;
+ $parameters['dialplan_detail_data'] = '%'.$original_domain_name.'%';
+ $database = new database;
+ $result = $database->select($sql, $parameters, 'all');
+ unset($sql, $parameters);
+
+ if (is_array($result) && sizeof($result) != 0) {
+ foreach ($result as $index => &$row) {
+ $array['dialplan_detail'][$index]['dialplan_detail_uuid'] = $row["dialplan_detail_uuid"];
+ $array['dialplan_detail'][$index]['dialplan_detail_data'] = str_replace($original_domain_name, $domain_name, $row["dialplan_detail_data"]);
+ }
+ if (is_array($array) && sizeof($array) != 0) {
+ $p = new permissions;
+ $p->add('dialplan_detail_edit', 'temp');
+
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->save($array);
+ unset($array);
+
+ $p->delete('dialplan_detail_edit', 'temp');
+ }
}
- unset($sql, $prep_statement, $result);
+ unset($result);
}
// update session domain name
@@ -580,10 +699,14 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
// if single-tenant and variables exist, update variables > domain value to match new domain
if (count($_SESSION['domains']) == 1 && file_exists($_SERVER["DOCUMENT_ROOT"].PROJECT_PATH."/app/vars/")) {
$sql = "update v_vars set ";
- $sql .= "var_value = '".$domain_name."' ";
+ $sql .= "var_value = :var_value ";
$sql .= "where var_name = 'domain' ";
- $db->exec(check_sql($sql));
- unset($sql);
+ $parameters['var_value'] = $domain_name;
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->execute($sql, $parameters);
+ unset($sql, $parameters);
}
}
}
@@ -621,16 +744,16 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
//pre-populate the form (admin won't have domain_add permissions, but domain_uuid will already be set above)
if ((count($_GET) > 0 || (!permission_exists('domain_add') && $domain_uuid != '')) && $_POST["persistformvar"] != "true") {
$sql = "select * from v_domains ";
- $sql .= "where domain_uuid = '$domain_uuid' ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- foreach ($result as &$row) {
+ $sql .= "where domain_uuid = :domain_uuid ";
+ $parameters['domain_uuid'] = $domain_uuid;
+ $database = new database;
+ $row = $database->select($sql, $parameters, 'row');
+ if (is_array($row) && sizeof($row) != 0) {
$domain_name = strtolower($row["domain_name"]);
$domain_enabled = $row["domain_enabled"];
$domain_description = $row["domain_description"];
}
- unset ($prep_statement);
+ unset($sql, $parameters, $row);
}
//show the header
@@ -778,7 +901,7 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
echo "";
- if (permission_exists('domain_setting_edit') && $action == "update") {
+ if ($action == "update" && permission_exists('domain_setting_view')) {
require "domain_settings.php";
}
diff --git a/core/domain_settings/domain_setting_delete.php b/core/domain_settings/domain_setting_delete.php
index 09b16f2b2e..f73ef9c7cb 100644
--- a/core/domain_settings/domain_setting_delete.php
+++ b/core/domain_settings/domain_setting_delete.php
@@ -38,25 +38,27 @@ else {
$language = new text;
$text = $language->get();
-//get the variables
- if (count($_GET)>0) {
- $id = check_str($_GET["id"]);
- $domain_uuid = check_str($_GET["domain_uuid"]);
- }
-
//delete the record
- if (strlen($id) > 0) {
+ if (is_uuid($_GET["id"]) && is_uuid($_GET["domain_uuid"])) {
+
+ $domain_setting_uuid = $_GET["id"];
+ $domain_uuid = $_GET["domain_uuid"];
+
//delete domain_setting
- $sql = "delete from v_domain_settings ";
- $sql .= "where domain_uuid = '$domain_uuid' ";
- $sql .= "and domain_setting_uuid = '$id' ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- unset($sql);
+ $array['domain_settings'][0]['domain_setting_uuid'] = $domain_setting_uuid;
+ $array['domain_settings'][0]['domain_uuid'] = $domain_uuid;
+
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->delete($array);
+ unset($array);
+
+ //set message
+ message::add($text['message-delete']);
}
//redirect the user
- message::add($text['message-delete']);
header("Location: domain_edit.php?id=".$domain_uuid);
return;
diff --git a/core/domain_settings/domain_setting_edit.php b/core/domain_settings/domain_setting_edit.php
index d43ecec3dd..14a5a5826a 100644
--- a/core/domain_settings/domain_setting_edit.php
+++ b/core/domain_settings/domain_setting_edit.php
@@ -62,35 +62,35 @@
}
//action add or update
- if (isset($_REQUEST["id"])) {
+ if (is_uuid($_REQUEST["id"])) {
$action = "update";
- $domain_setting_uuid = check_str($_REQUEST["id"]);
+ $domain_setting_uuid = $_REQUEST["id"];
}
else {
$action = "add";
}
//set the domain_uuid
- if (strlen($_GET["domain_uuid"]) > 0) {
- $domain_uuid = check_str($_GET["domain_uuid"]);
+ if (is_uuid($_GET["domain_uuid"])) {
+ $domain_uuid = $_GET["domain_uuid"];
}
//get http post variables and set them to php variables
if (count($_POST) > 0) {
- $domain_setting_category = strtolower(check_str($_POST["domain_setting_category"]));
- $domain_setting_subcategory = strtolower(check_str($_POST["domain_setting_subcategory"]));
- $domain_setting_name = strtolower(check_str($_POST["domain_setting_name"]));
- $domain_setting_value = check_str($_POST["domain_setting_value"]);
- $domain_setting_order = check_str($_POST["domain_setting_order"]);
- $domain_setting_enabled = strtolower(check_str($_POST["domain_setting_enabled"]));
- $domain_setting_description = check_str($_POST["domain_setting_description"]);
+ $domain_setting_category = strtolower($_POST["domain_setting_category"]);
+ $domain_setting_subcategory = strtolower($_POST["domain_setting_subcategory"]);
+ $domain_setting_name = strtolower($_POST["domain_setting_name"]);
+ $domain_setting_value = $_POST["domain_setting_value"];
+ $domain_setting_order = $_POST["domain_setting_order"];
+ $domain_setting_enabled = strtolower($_POST["domain_setting_enabled"]);
+ $domain_setting_description = $_POST["domain_setting_description"];
}
if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
$msg = '';
if ($action == "update") {
- $domain_setting_uuid = check_str($_POST["domain_setting_uuid"]);
+ $domain_setting_uuid = $_POST["domain_setting_uuid"];
}
//check for all required/authorized data
@@ -117,82 +117,69 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
//add or update the database
if ($_POST["persistformvar"] != "true") {
// fix null
- $domain_setting_order = ($domain_setting_order != '') ? $domain_setting_order : 'null';
+ $domain_setting_order = $domain_setting_order != '' ? $domain_setting_order : 'null';
//update switch timezone variables
if ($domain_setting_category == "domain" && $domain_setting_subcategory == "time_zone" && $domain_setting_name == "name" ) {
//get the dialplan_uuid
- $sql = "select * from v_dialplans ";
- $sql .= "where domain_uuid = '".$domain_uuid."' ";
+ $sql = "select dialplan_uuid from v_dialplans ";
+ $sql .= "where domain_uuid = :domain_uuid ";
$sql .= "and app_uuid = '9f356fe7-8cf8-4c14-8fe2-6daf89304458' ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- foreach ($result as $row) {
- $dialplan_uuid = $row["dialplan_uuid"];
- }
- unset ($prep_statement);
+ $parameters['domain_uuid'] = $domain_uuid;
+ $database = new database;
+ $dialplan_uuid = $database->select($sql, $parameters, 'column');
+ unset($sql, $parameters);
//get the action
- $sql = "select * from v_dialplan_details ";
- $sql .= "where domain_uuid = '".$domain_uuid."' ";
- $sql .= "and dialplan_uuid = '".$dialplan_uuid."' ";
+ $sql = "select dialplan_detail_uuid from v_dialplan_details ";
+ $sql .= "where domain_uuid = :domain_uuid ";
+ $sql .= "and dialplan_uuid = :dialplan_uuid ";
$sql .= "and dialplan_detail_tag = 'action' ";
$sql .= "and dialplan_detail_type = 'set' ";
$sql .= "and dialplan_detail_data like 'timezone=%' ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- $detail_action = "add";
- foreach ($result as $row) {
- $dialplan_detail_uuid = $row["dialplan_detail_uuid"];
- $detail_action = "update";
- }
- unset ($prep_statement);
+ $parameters['domain_uuid'] = $domain_uuid;
+ $parameters['dialplan_uuid'] = $dialplan_uuid;
+ $database = new database;
+ $dialplan_detail_uuid = $database->select($sql, $parameters, 'column');
+ $detail_action = is_uuid($dialplan_detail_uuid) ? 'update' : 'add';
+ unset($sql, $parameters);
//update the timezone
+ $p = new permissions;
if ($detail_action == "update") {
- $sql = "update v_dialplan_details ";
- $sql .= "set dialplan_detail_data = 'timezone=".$domain_setting_value."' ";
- $sql .= "where dialplan_detail_uuid = '".$dialplan_detail_uuid."' ";
+ $array['dialplan_details'][0]['dialplan_detail_uuid'] = $dialplan_detail_uuid;
+ $array['dialplan_details'][0]['dialplan_detail_data'] = 'timezone='.$domain_setting_value;
+ $p->add('dialplan_detail_edit', 'temp');
}
else {
- $dialplan_detail_uuid = uuid();
- $dialplan_detail_group = 0;
- $sql = "insert into v_dialplan_details ";
- $sql .= "(";
- $sql .= "domain_uuid, ";
- $sql .= "dialplan_detail_uuid, ";
- $sql .= "dialplan_uuid, ";
- $sql .= "dialplan_detail_tag, ";
- $sql .= "dialplan_detail_type, ";
- $sql .= "dialplan_detail_data, ";
- $sql .= "dialplan_detail_inline, ";
- $sql .= "dialplan_detail_group ";
- $sql .= ") ";
- $sql .= "values ";
- $sql .= "(";
- $sql .= "'".$domain_uuid."', ";
- $sql .= "'".$dialplan_detail_uuid."', ";
- $sql .= "'".$dialplan_uuid."', ";
- $sql .= "'action', ";
- $sql .= "'set', ";
- $sql .= "'timezone=".$domain_setting_value."', ";
- $sql .= "'true', ";
- $sql .= "'".$dialplan_detail_group."' ";
- $sql .= "); ";
+ $array['dialplan_details'][0]['dialplan_detail_uuid'] = uuid();
+ $array['dialplan_details'][0]['domain_uuid'] = $domain_uuid;
+ $array['dialplan_details'][0]['dialplan_uuid'] = $dialplan_uuid;
+ $array['dialplan_details'][0]['dialplan_detail_tag'] = 'action';
+ $array['dialplan_details'][0]['dialplan_detail_type'] = 'set';
+ $array['dialplan_details'][0]['dialplan_detail_data'] = 'timezone=".$domain_setting_value."';
+ $array['dialplan_details'][0]['dialplan_detail_inline'] = 'true';
+ $array['dialplan_details'][0]['dialplan_detail_group'] = '0';
+ $p->add('dialplan_detail_add', 'temp');
}
- $db->query($sql);
- unset($sql);
+ if (is_array($array) && sizeof($array) != 0) {
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->save($array);
+ unset($array);
- //get the dialplan_uuid
- $sql = "select * from v_domains ";
- $sql .= "where domain_uuid = '".$domain_uuid."' ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $row = $prep_statement->fetch(PDO::FETCH_NAMED);
- $domain_name = $row["domain_name"];
- unset ($prep_statement);
+ $p->delete('dialplan_detail_edit', 'temp');
+ $p->delete('dialplan_detail_add', 'temp');
+ }
+
+ //get the dialplan uuid
+ $sql = "select domain_name from v_domains ";
+ $sql .= "where domain_uuid = :domain_uuid ";
+ $parameters['domain_uuid'] = $domain_uuid;
+ $database = new database;
+ $domain_name = $database->select($sql, $parameters, 'column');
+ unset($sql, $parameters);
//update the dialplan xml
$dialplans = new dialplan;
@@ -206,132 +193,111 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
$cache->delete("dialplan:".$domain_name);
}
- //add the domain
+ //add
if ($action == "add" && permission_exists('domain_setting_add')) {
- $sql = "insert into v_domain_settings ";
- $sql .= "(";
- $sql .= "domain_uuid, ";
- $sql .= "domain_setting_uuid, ";
- $sql .= "domain_setting_category, ";
- $sql .= "domain_setting_subcategory, ";
- $sql .= "domain_setting_name, ";
- $sql .= "domain_setting_value, ";
- $sql .= "domain_setting_order, ";
- $sql .= "domain_setting_enabled, ";
- $sql .= "domain_setting_description ";
- $sql .= ")";
- $sql .= "values ";
- $sql .= "(";
- $sql .= "'$domain_uuid', ";
- $sql .= "'".uuid()."', ";
- $sql .= "'$domain_setting_category', ";
- $sql .= "'$domain_setting_subcategory', ";
- $sql .= "'$domain_setting_name', ";
- $sql .= "'$domain_setting_value', ";
- $sql .= "$domain_setting_order, ";
- $sql .= "'$domain_setting_enabled', ";
- $sql .= "'$domain_setting_description' ";
- $sql .= ")";
- $db->exec(check_sql($sql));
- unset($sql);
- } //if ($action == "add")
+ $array['domain_settings'][0]['domain_setting_uuid'] = uuid();
+ }
- //update the domain
+ //update
if ($action == "update" && permission_exists('domain_setting_edit')) {
- $sql = "update v_domain_settings set ";
- $sql .= "domain_setting_category = '$domain_setting_category', ";
- $sql .= "domain_setting_subcategory = '$domain_setting_subcategory', ";
- $sql .= "domain_setting_name = '$domain_setting_name', ";
- $sql .= "domain_setting_value = '$domain_setting_value', ";
- $sql .= "domain_setting_order = $domain_setting_order, ";
- $sql .= "domain_setting_enabled = '$domain_setting_enabled', ";
- $sql .= "domain_setting_description = '$domain_setting_description' ";
- $sql .= "where domain_uuid = '$domain_uuid' ";
- $sql .= "and domain_setting_uuid = '$domain_setting_uuid'";
- $db->exec(check_sql($sql));
- unset($sql);
- } //if ($action == "update")
+ $array['domain_settings'][0]['domain_setting_uuid'] = $domain_setting_uuid;
+ }
+ //execute
+ if (is_uuid($array['domain_settings'][0]['domain_setting_uuid'])) {
+ $array['domain_settings'][0]['domain_uuid'] = $domain_uuid;
+ $array['domain_settings'][0]['domain_setting_category'] = $domain_setting_category;
+ $array['domain_settings'][0]['domain_setting_subcategory'] = $domain_setting_subcategory;
+ $array['domain_settings'][0]['domain_setting_name'] = $domain_setting_name;
+ $array['domain_settings'][0]['domain_setting_value'] = $domain_setting_value;
+ $array['domain_settings'][0]['domain_setting_order'] = $domain_setting_order;
+ $array['domain_settings'][0]['domain_setting_enabled'] = $domain_setting_enabled;
+ $array['domain_settings'][0]['domain_setting_description'] = $domain_setting_description;
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->save($array);
+ unset($array);
+ }
//update time zone
if ($domain_setting_category == "domain" && $domain_setting_subcategory == "time_zone" && $domain_setting_name == "name" && strlen($domain_setting_value) > 0 ) {
$sql = "select * from v_dialplans ";
$sql .= "where app_uuid = '34dd307b-fffe-4ead-990c-3d070e288126' ";
- $sql .= "and domain_uuid = '".$_SESSION["domain_uuid"]."' ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- $time_zone_found = false;
- foreach ($result as &$row) {
- //get the dialplan_uuid
- $dialplan_uuid = $row["dialplan_uuid"];
+ $sql .= "and domain_uuid = :domain_uuid ";
+ $parameters['domain_uuid'] = $_SESSION["domain_uuid"];
+ $database = new database;
+ $result = $database->select($sql, $parameters, 'all');
+ unset($sql, $parameters);
- //get the dialplan details
- $sql = "select * from v_dialplan_details ";
- $sql .= "where dialplan_uuid = '".$dialplan_uuid."' ";
- $sql .= "and domain_uuid = '".$_SESSION["domain_uuid"]."' ";
- $sub_prep_statement = $db->prepare(check_sql($sql));
- $sub_prep_statement->execute();
- $sub_result = $sub_prep_statement->fetchAll(PDO::FETCH_NAMED);
- foreach ($sub_result as $field) {
- $dialplan_detail_uuid = $field["dialplan_detail_uuid"];
- $dialplan_detail_tag = $field["dialplan_detail_tag"]; //action //condition
- $dialplan_detail_type = $field["dialplan_detail_type"]; //set
- $dialplan_detail_data = $field["dialplan_detail_data"];
- $dialplan_detail_group = $field["dialplan_detail_group"];
- if ($dialplan_detail_tag == "action" && $dialplan_detail_type == "set") {
- $data_array = explode("=", $dialplan_detail_data);
- if ($data_array[0] == "timezone") {
- $time_zone_found = true;
- break;
+ $time_zone_found = false;
+ if (is_array($result) && sizeof($result) != 0) {
+ foreach ($result as &$row) {
+ //get the dialplan_uuid
+ $dialplan_uuid = $row["dialplan_uuid"];
+
+ //get the dialplan details
+ $sql = "select * from v_dialplan_details ";
+ $sql .= "where dialplan_uuid = :dialplan_uuid ";
+ $sql .= "and domain_uuid = :domain_uuid ";
+ $parameters['dialplan_uuid'] = $dialplan_uuid;
+ $parameters['domain_uuid'] = $_SESSION["domain_uuid"];
+ $database = new database;
+ $sub_result = $database->select($sql, $parameters, 'all');
+ if (is_array($sub_result) && sizeof($sub_result) != 0) {
+ foreach ($sub_result as $field) {
+ $dialplan_detail_uuid = $field["dialplan_detail_uuid"];
+ $dialplan_detail_tag = $field["dialplan_detail_tag"]; //action //condition
+ $dialplan_detail_type = $field["dialplan_detail_type"]; //set
+ $dialplan_detail_data = $field["dialplan_detail_data"];
+ $dialplan_detail_group = $field["dialplan_detail_group"];
+ if ($dialplan_detail_tag == "action" && $dialplan_detail_type == "set") {
+ $data_array = explode("=", $dialplan_detail_data);
+ if ($data_array[0] == "timezone") {
+ $time_zone_found = true;
+ break;
+ }
+ }
}
}
- }
+ unset($sql, $parameters, $sub_result, $field);
- //add the time zone
- if (!$time_zone_found) {
- //$dialplan_detail_uuid = uuid();
- $dialplan_detail_uuid = "eb3b3a4e-88ea-4306-b2a8-9f52d3c95f2f";
- $sql = "insert into v_dialplan_details ";
- $sql .= "(";
- $sql .= "domain_uuid, ";
- $sql .= "dialplan_uuid, ";
- $sql .= "dialplan_detail_uuid, ";
- $sql .= "dialplan_detail_tag, ";
- $sql .= "dialplan_detail_type, ";
- $sql .= "dialplan_detail_data, ";
- $sql .= "dialplan_detail_group, ";
- $sql .= "dialplan_detail_order ";
- $sql .= ") ";
- $sql .= "values ";
- $sql .= "(";
- $sql .= "'".$_SESSION["domain_uuid"]."', "; //8cfd9525-6ccf-4c2c-813a-bca5809067cd
- $sql .= "'$dialplan_uuid', "; //807b4aa6-4478-4663-a661-779397c1d542
- $sql .= "'$dialplan_detail_uuid', ";
- $sql .= "'action', ";
- $sql .= "'set', ";
- $sql .= "'timezone=$domain_setting_value', ";
- if (strlen($dialplan_detail_group) > 0) {
- $sql .= "'$dialplan_detail_group', ";
- }
- else {
- $sql .= "null, ";
- }
- $sql .= "'15' ";
- $sql .= ")";
- $db->exec(check_sql($sql));
- unset($sql);
- }
+ //add the time zone
+ if (!$time_zone_found) {
+ $dialplan_detail_uuid = "eb3b3a4e-88ea-4306-b2a8-9f52d3c95f2f";
+ $array['dialplan_details'][0]['domain_uuid'] = $_SESSION["domain_uuid"]; //8cfd9525-6ccf-4c2c-813a-bca5809067cd
+ $array['dialplan_details'][0]['dialplan_uuid'] = $dialplan_uuid; //807b4aa6-4478-4663-a661-779397c1d542
+ $array['dialplan_details'][0]['dialplan_detail_uuid'] = $dialplan_detail_uuid;
+ $array['dialplan_details'][0]['dialplan_detail_tag'] = 'action';
+ $array['dialplan_details'][0]['dialplan_detail_type'] = 'set';
+ $array['dialplan_details'][0]['dialplan_detail_data'] = 'timezone='.$domain_setting_value;
+ $array['dialplan_details'][0]['dialplan_detail_group'] = $dialplan_detail_group;
+ $array['dialplan_details'][0]['dialplan_detail_order'] = '15';
- //update the time zone
- if ($time_zone_found) {
- $sql = "update v_dialplan_details set ";
- $sql .= "dialplan_detail_data = 'timezone=".$domain_setting_value."' ";
- $sql .= "where domain_uuid = '".$_SESSION["domain_uuid"]."' ";
- $sql .= "and dialplan_uuid = '$dialplan_uuid' ";
- $sql .= "and dialplan_detail_uuid = '$dialplan_detail_uuid' ";
- $db->exec(check_sql($sql));
- unset($sql);
- }
+ $p = new permissions;
+ $p->add('dialplan_detail_add', 'temp');
+ }
+
+ //update the time zone
+ if ($time_zone_found) {
+ $array['dialplan_details'][0]['dialplan_detail_uuid'] = $dialplan_detail_uuid;
+ $array['dialplan_details'][0]['dialplan_detail_data'] = 'timezone='.$domain_setting_value;
+
+ $p = new permissions;
+ $p->add('dialplan_detail_edit', 'temp');
+ }
+
+ //execute
+ if (is_array($array) && sizeof($array) != 0) {
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->save($array);
+ unset($array);
+
+ $p->delete('dialplan_detail_add', 'temp');
+ $p->delete('dialplan_detail_edit', 'temp');
+ }
+ }
}
}
@@ -343,20 +309,21 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
message::add($text['message-add']);
}
header("Location: domain_edit.php?id=".$domain_uuid);
- return;
- } //if ($_POST["persistformvar"] != "true")
-} //(count($_POST)>0 && strlen($_POST["persistformvar"]) == 0)
+ exit;
+ }
+}
//pre-populate the form
- if (count($_GET)>0 && $_POST["persistformvar"] != "true") {
- $domain_setting_uuid = check_str($_GET["id"]);
+ if (count($_GET)>0 && $_POST["persistformvar"] != "true" && is_uuid($_GET["id"])) {
+ $domain_setting_uuid = $_GET["id"];
$sql = "select * from v_domain_settings ";
- $sql .= "where domain_uuid = '$domain_uuid' ";
- $sql .= "and domain_setting_uuid = '$domain_setting_uuid' ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- foreach ($result as &$row) {
+ $sql .= "where domain_uuid = :domain_uuid ";
+ $sql .= "and domain_setting_uuid = :domain_setting_uuid ";
+ $parameters['domain_uuid'] = $domain_uuid;
+ $parameters['domain_setting_uuid'] = $domain_setting_uuid;
+ $database = new database;
+ $row = $database->select($sql, $parameters, 'row');
+ if (is_array($row) && sizeof($row) != 0) {
$domain_setting_category = $row["domain_setting_category"];
$domain_setting_subcategory = $row["domain_setting_subcategory"];
$domain_setting_name = $row["domain_setting_name"];
@@ -364,9 +331,8 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
$domain_setting_order = $row["domain_setting_order"];
$domain_setting_enabled = $row["domain_setting_enabled"];
$domain_setting_description = $row["domain_setting_description"];
- break; //limit to 1 row
}
- unset ($prep_statement);
+ unset($sql, $parameters, $row);
}
//show the header
@@ -464,21 +430,17 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
if ($category == "domain" && $subcategory == "menu" && $name == "uuid" ) {
echo " \n";
}
elseif ($category == "domain" && $subcategory == "template" && $name == "name" ) {
diff --git a/core/domain_settings/domain_settings.php b/core/domain_settings/domain_settings.php
index 32126832c4..8ee87d0cab 100644
--- a/core/domain_settings/domain_settings.php
+++ b/core/domain_settings/domain_settings.php
@@ -40,20 +40,26 @@
//toggle enabled
if (sizeof($_REQUEST) > 1) {
//get the variables
- $action = check_str($_REQUEST["action"]);
- $domain_uuid = check_str($_REQUEST["domain_id"]);
+ $action = $_REQUEST["action"];
+ $domain_uuid = $_REQUEST["domain_id"];
$domain_setting_uuids = $_REQUEST["id"];
- $enabled = check_str($_REQUEST['enabled']);
+ $enabled = $_REQUEST['enabled'];
//change enabled value
- if ($domain_uuid != '' && sizeof($domain_setting_uuids) == 1 && $enabled != '') {
- $sql = "update v_domain_settings set ";
- $sql .= "domain_setting_enabled = '".$enabled."' ";
- $sql .= "where domain_uuid = '".$domain_uuid."' ";
- $sql .= "and domain_setting_uuid = '".$domain_setting_uuids[0]."' ";
- //echo $sql."
";
- $db->exec(check_sql($sql));
- unset($sql);
+ if (
+ permission_exists('domain_setting_edit') &&
+ is_uuid($domain_uuid) &&
+ is_array($domain_setting_uuids) &&
+ sizeof($domain_setting_uuids) == 1 &&
+ ($enabled == 'true' || $enabled == 'false')
+ ) {
+ $array['domain_settings'][0]['domain_setting_uuid'] = $domain_setting_uuids[0];
+ $array['domain_settings'][0]['domain_setting_enabled'] = $enabled;
+ $database = new database;
+ $database->app_name = 'domains';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->save($array);
+ unset($array);
message::add($text['message-update']);
header("Location: domain_edit.php?id=".$domain_uuid);
@@ -62,100 +68,96 @@
//copy domain settings
if ($action == 'copy' && permission_exists('domain_setting_add')) {
- $target_domain_uuid = check_str($_POST["target_domain_uuid"]);
+ $target_domain_uuid = $_POST["target_domain_uuid"];
- if ($target_domain_uuid != '' && sizeof($domain_setting_uuids) > 0) {
- $settings_copied = 0;
- foreach ($domain_setting_uuids as $domain_setting_uuid) {
+ if (is_uuid($target_domain_uuid) && is_array($domain_setting_uuids) && sizeof($domain_setting_uuids) != 0) {
+ foreach ($domain_setting_uuids as $index => $domain_setting_uuid) {
- // get default setting from db
- $sql = "select * from v_domain_settings ";
- $sql .= "where domain_setting_uuid = '".$domain_setting_uuid."' ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- foreach ($result as &$row) {
- $domain_setting_uuid = $row["default_setting_uuid"];
- $domain_setting_category = $row["default_setting_category"];
- $domain_setting_subcategory = $row["default_setting_subcategory"];
- $domain_setting_name = $row["default_setting_name"];
- $domain_setting_value = $row["default_setting_value"];
- $domain_setting_order = $row["default_setting_order"];
- $domain_setting_enabled = $row["default_setting_enabled"];
- $domain_setting_description = $row["default_setting_description"];
- }
- unset ($prep_statement);
+ if (is_uuid($domain_setting_uuid)) {
- //set a random password for http_auth_password
- if ($domain_setting_subcategory == "http_auth_password") {
- $domain_setting_value = generate_password();
- }
-
- // check if exists
- $sql = "select domain_setting_uuid from v_domain_settings ";
- $sql .= "where domain_uuid = '".$target_domain_uuid."' ";
- $sql .= "and domain_setting_category = '".$domain_setting_category."' ";
- $sql .= "and domain_setting_subcategory = '".$domain_setting_subcategory."' ";
- $sql .= "and domain_setting_name = '".$domain_setting_name."' ";
- $sql .= "and domain_setting_name <> 'array' ";
- $prep_statement = $db->prepare(check_sql($sql));
- $prep_statement->execute();
- $result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
- if (sizeof($result) > 0) {
- foreach ($result as &$row) {
- $target_domain_setting_uuid = $row["domain_setting_uuid"];
- break;
+ // get default setting from db
+ $sql = "select * from v_domain_settings ";
+ $sql .= "where domain_setting_uuid = :domain_setting_uuid ";
+ $parameters['domain_setting_uuid'] = $domain_setting_uuid;
+ $database = new database;
+ $row = $database->select($sql, $parameters, 'row');
+ if (is_array($row) && sizeof($row) != 0) {
+ $domain_setting_uuid = $row["default_setting_uuid"];
+ $domain_setting_category = $row["default_setting_category"];
+ $domain_setting_subcategory = $row["default_setting_subcategory"];
+ $domain_setting_name = $row["default_setting_name"];
+ $domain_setting_value = $row["default_setting_value"];
+ $domain_setting_order = $row["default_setting_order"];
+ $domain_setting_enabled = $row["default_setting_enabled"];
+ $domain_setting_description = $row["default_setting_description"];
}
- $action = "update";
- }
- else {
- $action = "add";
- $target_domain_setting_uuid = uuid();
- }
- unset ($prep_statement);
+ unset($sql, $parameters, $row);
- // fix null
- $domain_setting_order = ($domain_setting_order != '') ? $domain_setting_order : 'null';
+ //set a random password for http_auth_password
+ if ($domain_setting_subcategory == "http_auth_password") {
+ $domain_setting_value = generate_password();
+ }
- //prepare the array
- $array['domain_settings'][$x]['domain_uuid'] = $target_domain_uuid;
- $array['domain_settings'][$x]['domain_setting_uuid'] = $target_domain_setting_uuid;
- $array['domain_settings'][$x]['default_setting_category'] = $default_setting_category;
- $array['domain_settings'][$x]['domain_setting_uuid'] = $default_setting_subcategory;
- $array['domain_settings'][$x]['domain_setting_uuid'] = $default_setting_name;
- $array['domain_settings'][$x]['domain_setting_uuid'] = $default_setting_value;
- $array['domain_settings'][$x]['domain_setting_uuid'] = $default_setting_order;
- $array['domain_settings'][$x]['domain_setting_uuid'] = $default_setting_enabled;
- $array['domain_settings'][$x]['domain_setting_uuid'] = $default_setting_description;
- $x++;
+ // check if exists
+ $sql = "select domain_setting_uuid from v_domain_settings ";
+ $sql .= "where domain_uuid = :domain_uuid ";
+ $sql .= "and domain_setting_category = :domain_setting_category ";
+ $sql .= "and domain_setting_subcategory = :domain_setting_subcategory ";
+ $sql .= "and domain_setting_name = :domain_setting_name ";
+ $sql .= "and domain_setting_name <> 'array' ";
+ $parameters['domain_uuid'] = $target_domain_uuid;
+ $parameters['domain_setting_category'] = $domain_setting_category;
+ $parameters['domain_setting_subcategory'] = $domain_setting_subcategory;
+ $parameters['domain_setting_name'] = $domain_setting_name;
+ $database = new database;
+ $target_domain_setting_uuid = $database->select($sql, $parameters, 'column');
+ if (is_uuid($target_domain_setting_uuid)) {
+ $action = "update";
+ }
+ else {
+ $action = "add";
+ $target_domain_setting_uuid = uuid();
+ }
+ unset($sql, $parameters);
+
+ // fix null
+ $domain_setting_order = $domain_setting_order != '' ? $domain_setting_order : 'null';
+
+ //prepare the array
+ $array['domain_settings'][$index]['domain_uuid'] = $target_domain_uuid;
+ $array['domain_settings'][$index]['domain_setting_uuid'] = $target_domain_setting_uuid;
+ $array['domain_settings'][$index]['default_setting_category'] = $default_setting_category;
+ $array['domain_settings'][$index]['domain_setting_uuid'] = $default_setting_subcategory;
+ $array['domain_settings'][$index]['domain_setting_uuid'] = $default_setting_name;
+ $array['domain_settings'][$index]['domain_setting_uuid'] = $default_setting_value;
+ $array['domain_settings'][$index]['domain_setting_uuid'] = $default_setting_order;
+ $array['domain_settings'][$index]['domain_setting_uuid'] = $default_setting_enabled;
+ $array['domain_settings'][$index]['domain_setting_uuid'] = $default_setting_description;
+
+ }
} // foreach
- //save to the data
- $database = new database;
- $database->app_name = 'domain_settings';
- $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
- //if (strlen($stream_uuid) > 0) {
- // $database->uuid($stream_uuid);
- //}
- $database->save($array);
- $message = $database->message;
+ //save the data
+ if (is_array($array) && sizeof($array) != 0) {
+ $database = new database;
+ $database->app_name = 'domain_settings';
+ $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71';
+ $database->save($array);
+ $message = $database->message;
- //debug info
- //echo "
"; - //print_r($message); - //echo ""; - //exit; + // set message + $_SESSION["message"] = $text['message-copy'].": ".sizeof($array); - // set message - $_SESSION["message"] = $text['message-copy'].": ".escape($settings_copied); + unset($array); + } } else { // set message message::add($text['message-copy_failed']); } - header("Location: default_settings.php".(($search != '') ? "?search=".escape($search) : null)); + header("Location: default_settings.php".($search != '' ? "?search=".escape($search) : null)); exit; } @@ -165,16 +167,24 @@ $language = new text; $text = $language->get(); - if (sizeof($domain_setting_uuids) > 0) { - foreach ($domain_setting_uuids as $domain_setting_uuid) { - $sql = "delete from v_domain_settings "; - $sql .= "where domain_setting_uuid = '".$domain_setting_uuid."' "; - $prep_statement = $db->prepare(check_sql($sql)); - $prep_statement->execute(); - unset ($prep_statement, $sql); + if (is_array($domain_setting_uuids) && sizeof($domain_setting_uuids) != 0) { + foreach ($domain_setting_uuids as $index => $domain_setting_uuid) { + if (is_uuid($domain_setting_uuid)) { + $array['domain_settings'][$index]['domain_setting_uuid'] = $domain_setting_uuid; + } + } + if (is_array($array) && sizeof($array) != 0) { + $database = new database; + $database->app_name = 'domain_settings'; + $database->app_uuid = 'b31e723a-bf70-670c-a49b-470d2a232f71'; + $database->delete($array); + $message = $database->message; + + // set message + $_SESSION["message"] = $text['message-delete'].": ".sizeof($array); + + unset($array); } - // set message - $_SESSION["message"] = $text['message-delete'].": ".sizeof($domain_setting_uuids); } else { // set message @@ -190,8 +200,8 @@ require_once "resources/paging.php"; //get the variables - $order_by = check_str($_GET["order_by"]); - $order = check_str($_GET["order"]); + $order_by = $_GET["order_by"]; + $order = $_GET["order"]; //show the content echo "