From 43ca227daec23a96971c917d71849fb2a2def54e Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Tue, 5 Feb 2019 18:27:01 -0700 Subject: [PATCH] Update call_flow_delete.php --- app/call_flows/call_flow_delete.php | 120 ++++++++++++++-------------- 1 file changed, 62 insertions(+), 58 deletions(-) diff --git a/app/call_flows/call_flow_delete.php b/app/call_flows/call_flow_delete.php index d06ac4eeb8..2441928b3a 100644 --- a/app/call_flows/call_flow_delete.php +++ b/app/call_flows/call_flow_delete.php @@ -17,82 +17,86 @@ The Initial Developer of the Original Code is Mark J Crane - Portions created by the Initial Developer are Copyright (C) 2008-2012 + Portions created by the Initial Developer are Copyright (C) 2008-2019 the Initial Developer. All Rights Reserved. Contributor(s): Mark J Crane */ -require_once "root.php"; -require_once "resources/require.php"; -require_once "resources/check_auth.php"; -if (permission_exists('call_flow_delete')) { - //access granted -} -else { - echo "access denied"; - exit; -} +//includes + require_once "root.php"; + require_once "resources/require.php"; + require_once "resources/check_auth.php"; + +//check permissions + if (permission_exists('call_flow_delete')) { + //access granted + } + else { + echo "access denied"; + exit; + } //add multi-lingual support $language = new text; $text = $language->get(); -if (count($_GET)>0) { - $id = check_str($_GET["id"]); -} +//get the http value and set it as a php variable + if (count($_GET)>0) { + $id = check_str($_GET["id"]); + } -if (strlen($id)>0) { +//delete the user data + if (is_uuid($id)) { - //get the dialplan uuid - $sql = "select * from v_call_flows "; - $sql .= "where domain_uuid = '$domain_uuid' "; - $sql .= "and call_flow_uuid = '$id' "; - $prep_statement = $db->prepare($sql); - $prep_statement->execute(); - while($row = $prep_statement->fetch(PDO::FETCH_ASSOC)) { - $dialplan_uuid = $row['dialplan_uuid']; - } + //get the dialplan uuid + $sql = "select * from v_call_flows "; + $sql .= "where domain_uuid = '$domain_uuid' "; + $sql .= "and call_flow_uuid = '$id' "; + $prep_statement = $db->prepare($sql); + $prep_statement->execute(); + while($row = $prep_statement->fetch(PDO::FETCH_ASSOC)) { + $dialplan_uuid = $row['dialplan_uuid']; + $call_flow_context = $row['call_flow_context']; + } - //delete call_flow - $sql = "delete from v_call_flows "; - $sql .= "where domain_uuid = '$domain_uuid' "; - $sql .= "and call_flow_uuid = '$id' "; - $prep_statement = $db->prepare(check_sql($sql)); - $prep_statement->execute(); - unset($sql); + //delete call_flow + $sql = "delete from v_call_flows "; + $sql .= "where domain_uuid = '$domain_uuid' "; + $sql .= "and call_flow_uuid = '$id' "; + $prep_statement = $db->prepare(check_sql($sql)); + $prep_statement->execute(); + unset($sql); - //delete the dialplan entry - $sql = "delete from v_dialplans "; - $sql .= "where domain_uuid = '$domain_uuid' "; - $sql .= "and dialplan_uuid = '$dialplan_uuid' "; - $db->query($sql); - unset($sql); + //delete the dialplan entry + $sql = "delete from v_dialplans "; + $sql .= "where domain_uuid = '$domain_uuid' "; + $sql .= "and dialplan_uuid = '$dialplan_uuid' "; + $db->query($sql); + unset($sql); - //delete the dialplan details - $sql = "delete from v_dialplan_details "; - $sql .= "where domain_uuid = '$domain_uuid' "; - $sql .= "and dialplan_uuid = '$dialplan_uuid' "; - $db->query($sql); - unset($sql); + //delete the dialplan details + $sql = "delete from v_dialplan_details "; + $sql .= "where domain_uuid = '$domain_uuid' "; + $sql .= "and dialplan_uuid = '$dialplan_uuid' "; + $db->query($sql); + unset($sql); - //syncrhonize configuration - save_dialplan_xml(); + //syncrhonize configuration + save_dialplan_xml(); - //apply settings reminder - $_SESSION["reload_xml"] = true; + //apply settings reminder + $_SESSION["reload_xml"] = true; - //delete the dialplan context from memcache - $fp = event_socket_create($_SESSION['event_socket_ip_address'], $_SESSION['event_socket_port'], $_SESSION['event_socket_password']); - if ($fp) { - $switch_cmd = "memcache delete dialplan:".$_SESSION["context"]."@".$_SESSION['domain_name']; - $switch_result = event_socket_request($fp, 'api '.$switch_cmd); - } -} + //clear the cache + $cache = new cache; + $cache->delete("dialplan:".$call_flow_context); + } -message::add($text['message-delete']); -header("Location: call_flows.php"); -return; +//send a message an redirect the browser + message::add($text['message-delete']); + header("Location: call_flows.php"); + return; -?> \ No newline at end of file +?>