From cdc4b670d2155f6671ed58924f49a7098bfa35b5 Mon Sep 17 00:00:00 2001 From: Alexey Melnichuk Date: Thu, 2 Jul 2015 18:49:58 +0400 Subject: [PATCH 1/3] Change. Use number_alias as voicemail_id. --- app/extensions/extension_copy.php | 6 +++--- app/extensions/extension_edit.php | 2 +- app/extensions/resources/classes/extension.php | 6 +++--- app/hot_desking/extension_edit.php | 12 ++++++------ 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/app/extensions/extension_copy.php b/app/extensions/extension_copy.php index d406b5ef4f..1f9a8d3563 100644 --- a/app/extensions/extension_copy.php +++ b/app/extensions/extension_copy.php @@ -176,11 +176,11 @@ else { //get the voicemails $sql = "select * from v_voicemails "; $sql .= "where domain_uuid = '$domain_uuid' "; - if (is_numeric($extension)) { - $sql .= "and voicemail_id = '$extension' "; + if (is_numeric($number_alias)) { + $sql .= "and voicemail_id = '$number_alias' "; } else { - $sql .= "and voicemail_id = '$number_alias' "; + $sql .= "and voicemail_id = '$extension' "; } $prep_statement = $db->prepare(check_sql($sql)); $prep_statement->execute(); diff --git a/app/extensions/extension_edit.php b/app/extensions/extension_edit.php index 3407fdeedc..2920bef162 100644 --- a/app/extensions/extension_edit.php +++ b/app/extensions/extension_edit.php @@ -849,7 +849,7 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) { //get the voicemails $sql = "select * from v_voicemails "; $sql .= "where domain_uuid = '".$domain_uuid."' "; - $sql .= "and voicemail_id = '".((is_numeric($extension)) ? $extension : $number_alias)."' "; + $sql .= "and voicemail_id = '".((is_numeric($number_alias)) ? $number_alias : $extension)."' "; $prep_statement = $db->prepare(check_sql($sql)); $prep_statement->execute(); $result = $prep_statement->fetchAll(PDO::FETCH_NAMED); diff --git a/app/extensions/resources/classes/extension.php b/app/extensions/resources/classes/extension.php index a1eb923c5b..dd557c8d7c 100644 --- a/app/extensions/resources/classes/extension.php +++ b/app/extensions/resources/classes/extension.php @@ -91,11 +91,11 @@ public function voicemail() { //determine the voicemail_id - if (is_numeric($this->extension)) { - $this->voicemail_id = $this->extension; + if (is_numeric($this->number_alias)) { + $this->voicemail_id = $this->number_alias; } else { - $this->voicemail_id = $this->number_alias; + $this->voicemail_id = $this->extension; } //update the voicemail settings diff --git a/app/hot_desking/extension_edit.php b/app/hot_desking/extension_edit.php index 86cb81dd1b..0f493eed82 100644 --- a/app/hot_desking/extension_edit.php +++ b/app/hot_desking/extension_edit.php @@ -134,11 +134,11 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) { $sql = "update v_voicemails set "; $sql .= "voicemail_password = '$vm_password' "; $sql .= "where domain_uuid = '$domain_uuid' "; - if (is_numeric($extension)) { - $sql .= "and voicemail_id = '$extension'"; + if (is_numeric($number_alias)) { + $sql .= "and voicemail_id = '$number_alias'"; } else { - $sql .= "and voicemail_id = '$number_alias'"; + $sql .= "and voicemail_id = '$extension'"; } $db->exec(check_sql($sql)); unset($sql); @@ -181,11 +181,11 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) { //get the voicemail data $sql = "select * from v_voicemails "; $sql .= "where domain_uuid = '$domain_uuid' "; - if (is_numeric($extension)) { - $sql .= "and voicemail_id = '$extension' "; + if (is_numeric($number_alias)) { + $sql .= "and voicemail_id = '$number_alias' "; } else { - $sql .= "and voicemail_id = '$number_alias' "; + $sql .= "and voicemail_id = '$extension' "; } //$sql .= "and voicemail_enabled = 'true' "; $prep_statement = $db->prepare(check_sql($sql)); From fec3b0f14cb1151f7e0d1c3218f6d357cf368d52 Mon Sep 17 00:00:00 2001 From: Alexey Melnichuk Date: Tue, 7 Jul 2015 18:16:21 +0400 Subject: [PATCH 2/3] Fix. xml_handler/directory generate vm params based on number_alias --- .../app/xml_handler/resources/scripts/directory/directory.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/resources/install/scripts/app/xml_handler/resources/scripts/directory/directory.lua b/resources/install/scripts/app/xml_handler/resources/scripts/directory/directory.lua index bdd926dbdb..3971a6314d 100644 --- a/resources/install/scripts/app/xml_handler/resources/scripts/directory/directory.lua +++ b/resources/install/scripts/app/xml_handler/resources/scripts/directory/directory.lua @@ -281,8 +281,8 @@ --get the voicemail from the database if (continue) then vm_enabled = "true"; - if tonumber(user) == nil then - sql = "SELECT * FROM v_voicemails WHERE domain_uuid = '" .. domain_uuid .. "' and voicemail_id = '" .. number_alias .. "' "; + if number_alias and #number_alias > 0 then + sql = "SELECT * FROM v_voicemails WHERE domain_uuid = '" .. domain_uuid .. "' and voicemail_id = '" .. number_alias .. "' "; else sql = "SELECT * FROM v_voicemails WHERE domain_uuid = '" .. domain_uuid .. "' and voicemail_id = '" .. user .. "' "; end From c556498dae5449b7c9d738fad21709d511e4ed91 Mon Sep 17 00:00:00 2001 From: Alexey Melnichuk Date: Tue, 21 Jul 2015 11:22:16 +0400 Subject: [PATCH 3/3] Fix. remove hot_desking app. --- app/hot_desking/extension_edit.php | 327 ----------------------------- 1 file changed, 327 deletions(-) delete mode 100644 app/hot_desking/extension_edit.php diff --git a/app/hot_desking/extension_edit.php b/app/hot_desking/extension_edit.php deleted file mode 100644 index 0f493eed82..0000000000 --- a/app/hot_desking/extension_edit.php +++ /dev/null @@ -1,327 +0,0 @@ - - Copyright (C) 2008-2015 All Rights Reserved. - - Contributor(s): - Mark J Crane - Luis Daniel Lucio Quiroz -*/ -include "root.php"; -require_once "resources/require.php"; -require_once "resources/check_auth.php"; -if (permission_exists('extension_add') || permission_exists('extension_edit')) { - //access granted -} -else { - echo "access denied"; - exit; -} - -//add multi-lingual support - $language = new text; - $text = $language->get(); - -//set the action as an add or an update - if (isset($_REQUEST["id"])) { - $action = "update"; - $extension_uuid = check_str($_REQUEST["id"]); - } - else { - $action = "add"; - } - -//get the http values and set them as php variables - if (count($_POST) > 0) { - //get the values from the HTTP POST and save them as PHP variables - $extension_uuid = check_str($_POST["extension_uuid"]); - $unique_id = check_str($_POST["unique_id"]); - $vm_password = check_str($_POST["vm_password"]); - $dial_string = check_str($_POST["dial_string"]); - } - -if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) { - - //check for all required data - if (strlen($extension_uuid) == 0) { $msg .= $text['message-required'].$text['label-extension']."
\n"; } - if (strlen($unique_id) == 0) { $msg .= $text['message-required'].$text['label-unique_id']."
\n"; } - //get the number of rows in v_extensions - $sql = "select count(*) as num_rows from v_extensions "; - $sql .= "where unique_id = '".$unique_id."' and "; - $sql .= "extension_uuid <> '".$extension_uuid."'"; - $prep_statement = $db->prepare(check_sql($sql)); - if ($prep_statement) { - $prep_statement->execute(); - $row = $prep_statement->fetch(PDO::FETCH_ASSOC); - if ($row['num_rows'] > 0) { - $msg .= $text['message-unique']."
\n"; - } - } - unset($prep_statement, $result); - if (strlen($msg) > 0 && strlen($_POST["persistformvar"]) == 0) { - require_once "resources/header.php"; - require_once "resources/persist_form_var.php"; - echo "
\n"; - echo "
\n"; - echo $msg."
"; - echo "
\n"; - persistformvar($_POST); - echo "
\n"; - require_once "resources/footer.php"; - return; - } - - //set the default user context - if (if_group("superadmin")) { - //allow a user assigned to super admin to change the user_context - } - else { - //if the user_context was not set then set the default value - if (strlen($user_context) == 0) { - if (count($_SESSION["domains"]) > 1) { - $user_context = $_SESSION['domain_name']; - } - else { - $user_context = "default"; - } - } - } - - //add or update the database - if ($_POST["persistformvar"] != "true") { - - //get the extension - $sql = "select * from v_extensions "; - $sql .= "where domain_uuid = '$domain_uuid' "; - $sql .= "and extension_uuid = '$extension_uuid' "; - $prep_statement = $db->prepare(check_sql($sql)); - $prep_statement->execute(); - $result = $prep_statement->fetchAll(PDO::FETCH_NAMED); - foreach ($result as &$row) { - $extension = $row["extension"]; - $number_alias = $row["number_alias"]; - } - unset ($prep_statement); - - //update the extension and voicemail - if (($action == "add" && permission_exists('extension_add')) || ($action == "update" && permission_exists('extension_edit'))) { - //update the extension - $sql = "update v_extensions set "; - $sql .= "unique_id = '$unique_id' "; - $sql .= "where domain_uuid = '$domain_uuid' "; - $sql .= "and extension_uuid = '$extension_uuid'"; - $db->exec(check_sql($sql)); - unset($sql); - - //update the voicemail - if (strlen($vm_password) > 0) { - $sql = "update v_voicemails set "; - $sql .= "voicemail_password = '$vm_password' "; - $sql .= "where domain_uuid = '$domain_uuid' "; - if (is_numeric($number_alias)) { - $sql .= "and voicemail_id = '$number_alias'"; - } - else { - $sql .= "and voicemail_id = '$extension'"; - } - $db->exec(check_sql($sql)); - unset($sql); - } - } - - //clear the cache - $cache = new cache; - $cache->delete("directory:".$extension."@".$_SESSION['domain_name']); - - //set message and redirect user - if ($action == "add") { - $_SESSION["message"] = $text['message-add']; - } - if ($action == "update") { - $_SESSION["message"] = $text['message-update']; - } - header("Location: index.php"); - return; - - } //if ($_POST["persistformvar"] != "true") -} //(count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) - -//pre-populate the form - if ($_POST["persistformvar"] != "true") { - //get the extension data - $sql = "select * from v_extensions "; - $sql .= "where domain_uuid = '$domain_uuid' "; - $sql .= "and extension_uuid = '$extension_uuid' "; - $prep_statement = $db->prepare(check_sql($sql)); - $prep_statement->execute(); - $result = $prep_statement->fetchAll(PDO::FETCH_NAMED); - foreach ($result as &$row) { - $extension = $row["extension"]; - $dial_string = $row["dial_string"]; - $unique_id = $row["unique_id"]; - } - unset ($prep_statement); - - //get the voicemail data - $sql = "select * from v_voicemails "; - $sql .= "where domain_uuid = '$domain_uuid' "; - if (is_numeric($number_alias)) { - $sql .= "and voicemail_id = '$number_alias' "; - } - else { - $sql .= "and voicemail_id = '$extension' "; - } - //$sql .= "and voicemail_enabled = 'true' "; - $prep_statement = $db->prepare(check_sql($sql)); - $prep_statement->execute(); - $result = $prep_statement->fetchAll(PDO::FETCH_NAMED); - foreach ($result as &$row) { - $vm_password = $row["voicemail_password"]; - } - unset ($prep_statement); - } - -//set the defaults - if (strlen($limit_max) == 0) { $limit_max = '5'; } - -//begin the page content - require_once "resources/header.php"; - - echo ""; - - echo "
\n"; - echo "\n"; - echo "\n"; - echo " \n"; - echo " \n"; - echo "\n"; - - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - - if ($action == "update") { - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - - echo "\n"; - echo "\n"; - echo "\n"; - echo "\n"; - - echo "\n"; - } - - echo "\n"; - echo "\n"; - echo "\n"; - - echo "
\n"; - echo " ".$text['header-hot_desking']."\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo "
\n"; - echo " ".$text['label-extension']."\n"; - echo "\n"; - if ($action == "add") { - echo "
\n"; - echo $text['description-extension-add']."\n"; - } - if ($action == "update") { - echo " $extension
\n"; - echo $text['description-extension-edit']."\n"; - } - echo "
\n"; - - echo "
\n"; - echo " ".$text['label-unique_id']."\n"; - echo "\n"; - echo " \n"; - echo "
\n"; - echo $text['description-unique_id']."\n"; - echo "
\n"; - echo " ".$text['label-voicemail_password']."\n"; - echo "\n"; - echo " \n"; - echo "
\n"; - echo " ".$text['description-voicemail_password']."\n"; - echo "
\n"; - echo " ".$text['label-dial_string']."\n"; - echo "\n"; - echo " \n"; - echo "
\n"; - echo $text['description-dial_string']."\n"; - echo "
\n"; - echo "
"; - echo " \n"; - echo "
"; - echo "

"; - echo "
"; - -require_once "resources/footer.php"; -?>