mirror of
https://github.com/fusionpbx/fusionpbx.git
synced 2026-01-06 11:43:50 +00:00
Database class integration.
This commit is contained in:
@@ -30,10 +30,7 @@
|
||||
require_once "resources/check_auth.php";
|
||||
|
||||
//check the permissions
|
||||
if (permission_exists('call_center_agent_delete')) {
|
||||
//access granted
|
||||
}
|
||||
else {
|
||||
if (!permission_exists('call_center_agent_delete')) {
|
||||
echo "access denied";
|
||||
exit;
|
||||
}
|
||||
@@ -43,47 +40,50 @@
|
||||
$text = $language->get();
|
||||
|
||||
//get the primary key
|
||||
if (isset($_GET["id"]) && is_uuid($_GET["id"])) {
|
||||
$id = check_str($_GET["id"]);
|
||||
}
|
||||
else {
|
||||
exit;
|
||||
if (is_uuid($_GET["id"])) {
|
||||
$agent_uuid = $_GET["id"];
|
||||
|
||||
//delete the agent from the freeswitch
|
||||
//setup the event socket connection
|
||||
$fp = event_socket_create($_SESSION['event_socket_ip_address'], $_SESSION['event_socket_port'], $_SESSION['event_socket_password']);
|
||||
//delete the agent over event socket
|
||||
if ($fp) {
|
||||
$cmd = "api callcenter_config agent del ".$agent_uuid;
|
||||
$response = event_socket_request($fp, $cmd);
|
||||
}
|
||||
|
||||
//delete the agent from db
|
||||
//tiers table
|
||||
$sql = "delete from v_call_center_tiers ";
|
||||
$sql .= "where domain_uuid = :domain_uuid ";
|
||||
$sql .= "and agent_name = :agent_name ";
|
||||
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
|
||||
$parameters['agent_name'] = $agent_uuid;
|
||||
$database = new database;
|
||||
$database->execute($sql, $parameters);
|
||||
unset($sql, $parameters);
|
||||
|
||||
//agents table
|
||||
$array['call_center_agents'][0]['call_center_agent_uuid'] = $agent_uuid;
|
||||
$array['call_center_agents'][0]['domain_uuid'] = $_SESSION['domain_uuid'];
|
||||
$database = new database;
|
||||
$database->app_name = 'call_centers';
|
||||
$database->app_uuid = '95788e50-9500-079e-2807-fd530b0ea370';
|
||||
$database->delete($array);
|
||||
$response = $database->message;
|
||||
unset($array);
|
||||
|
||||
//synchronize configuration
|
||||
save_call_center_xml();
|
||||
remove_config_from_cache('configuration:callcenter.conf');
|
||||
|
||||
//set message
|
||||
message::add($text['message-delete']);
|
||||
|
||||
}
|
||||
|
||||
//delete the agent from the freeswitch
|
||||
//setup the event socket connection
|
||||
$fp = event_socket_create($_SESSION['event_socket_ip_address'], $_SESSION['event_socket_port'], $_SESSION['event_socket_password']);
|
||||
//delete the agent over event socket
|
||||
if ($fp) {
|
||||
$cmd = "api callcenter_config agent del ".$id;
|
||||
$response = event_socket_request($fp, $cmd);
|
||||
}
|
||||
|
||||
//delete the agent from db
|
||||
if (strlen($id)>0) {
|
||||
//tiers table
|
||||
$sql = "delete from v_call_center_tiers ";
|
||||
$sql .= "where domain_uuid = '$domain_uuid' ";
|
||||
$sql .= "and agent_name = '$agent_name' ";
|
||||
$prep_statement = $db->prepare(check_sql($sql));
|
||||
$prep_statement->execute();
|
||||
unset($sql);
|
||||
|
||||
//agents table
|
||||
$sql = "delete from v_call_center_agents ";
|
||||
$sql .= "where domain_uuid = '$domain_uuid' ";
|
||||
$sql .= "and call_center_agent_uuid = '$id' ";
|
||||
$prep_statement = $db->prepare(check_sql($sql));
|
||||
$prep_statement->execute();
|
||||
unset($sql);
|
||||
}
|
||||
|
||||
//synchronize configuration
|
||||
save_call_center_xml();
|
||||
remove_config_from_cache('configuration:callcenter.conf');
|
||||
|
||||
//redirect the browser
|
||||
message::add($text['message-delete']);
|
||||
header("Location: call_center_agents.php");
|
||||
return;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user