mirror of
https://github.com/fusionpbx/fusionpbx.git
synced 2026-01-06 11:43:50 +00:00
Completely rewrote number_translation_delete.php.
This commit is contained in:
@@ -17,83 +17,71 @@
|
||||
|
||||
The Initial Developer of the Original Code is
|
||||
Mark J Crane <markjcrane@fusionpbx.com>
|
||||
Portions created by the Initial Developer are Copyright (C) 2008-2017
|
||||
Portions created by the Initial Developer are Copyright (C) 2017
|
||||
the Initial Developer. All Rights Reserved.
|
||||
|
||||
Contributor(s):
|
||||
Matthew Vale <github@mafoo.org>
|
||||
*/
|
||||
|
||||
include "root.php";
|
||||
require_once "resources/require.php";
|
||||
require_once "resources/check_auth.php";
|
||||
if (!permission_exists('number_translation_delete')) {
|
||||
echo "access denied";
|
||||
exit;
|
||||
}
|
||||
//includes
|
||||
require_once "root.php";
|
||||
require_once "resources/require.php";
|
||||
require_once "resources/check_auth.php";
|
||||
|
||||
//add multi-lingual support
|
||||
$language = new text;
|
||||
$text = $language->get();
|
||||
|
||||
//set the number_translation uuid
|
||||
$number_translation_uuids = $_REQUEST["id"];
|
||||
$app_uuid = check_str($_REQUEST['app_uuid']);
|
||||
//delete the message
|
||||
messages::add($text['message-delete']);
|
||||
|
||||
//delete the number_translations
|
||||
if (sizeof($number_translation_uuids) > 0) {
|
||||
//delete the data
|
||||
if (isset($_GET["id"]) && is_uuid($_GET["id"]) && permission_exists('number_translation_delete')) {
|
||||
|
||||
//get number_translation contexts
|
||||
foreach ($number_translation_uuids as $number_translation_uuid) {
|
||||
//check each
|
||||
$number_translation_uuid = check_str($number_translation_uuid);
|
||||
//get the id
|
||||
$id = check_str($_GET["id"]);
|
||||
|
||||
//get the number_translation data
|
||||
$sql = "select * from v_number_translations ";
|
||||
$sql .= "where number_translation_uuid = '".$number_translation_uuid."' ";
|
||||
$prep_statement = $db->prepare(check_sql($sql));
|
||||
$prep_statement->execute();
|
||||
$result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
|
||||
foreach ($result as &$row) {
|
||||
$database_number_translation_uuid = $row["number_translation_uuid"];
|
||||
$number_translation_contexts[] = $row["number_translation_context"];
|
||||
}
|
||||
unset($prep_statement);
|
||||
}
|
||||
//delete the child data
|
||||
$sql = "delete from v_number_translation_details ";
|
||||
$sql .= "where number_translation_uuid = '".$id."' ";
|
||||
//$sql .= "and domain_uuid = '".$domain_uuid."' ";
|
||||
$prep_statement = $db->prepare($sql);
|
||||
$prep_statement->execute();
|
||||
|
||||
//start the atomic transaction
|
||||
$db->beginTransaction();
|
||||
|
||||
//delete number_translation and details
|
||||
$number_translations_deleted = 0;
|
||||
foreach ($number_translation_uuids as $number_translation_uuid) {
|
||||
|
||||
//delete child data
|
||||
$sql = "delete from v_number_translation_details ";
|
||||
$sql .= "where number_translation_uuid = '".$number_translation_uuid."'; ";
|
||||
$db->query($sql);
|
||||
unset($sql);
|
||||
|
||||
//delete parent data
|
||||
$sql = "delete from v_number_translations ";
|
||||
$sql .= "where number_translation_uuid = '".$number_translation_uuid."'; ";
|
||||
$db->query($sql);
|
||||
unset($sql);
|
||||
|
||||
$number_translations_deleted++;
|
||||
}
|
||||
|
||||
//commit the atomic transaction
|
||||
$db->commit();
|
||||
|
||||
//update the number_translation xml
|
||||
$number_translations = new number_translation;
|
||||
$number_translations->xml();
|
||||
//delete number_translation
|
||||
$sql = "delete from v_number_translations ";
|
||||
$sql .= "where number_translation_uuid = '$id' ";
|
||||
$sql .= "and domain_uuid = '$domain_uuid' ";
|
||||
$prep_statement = $db->prepare(check_sql($sql));
|
||||
$prep_statement->execute();
|
||||
unset($sql);
|
||||
|
||||
//redirect the user
|
||||
header('Location: number_translations.php');
|
||||
}
|
||||
|
||||
//redirect the browser
|
||||
messages::add($text['message-delete'].(($number_translations_deleted > 1) ? ": ".$number_translations_deleted : null));
|
||||
header("Location: ".PROJECT_PATH."/app/number_translation/number_translations.php".(($app_uuid != '') ? "?app_uuid=".$app_uuid : null));
|
||||
//delete the child data
|
||||
if (isset($_REQUEST["number_translation_detail_uuid"]) && is_uuid($_REQUEST["number_translation_detail_uuid"]) && permission_exists('number_translation_detail_delete')) {
|
||||
//select from v_number_translation_details
|
||||
$sql = "select * from v_number_translation_details ";
|
||||
$sql .= "where number_translation_detail_uuid = '".$_REQUEST["number_translation_detail_uuid"]."' ";
|
||||
//$sql .= "and domain_uuid = '".$domain_uuid."' ";
|
||||
$prep_statement = $db->prepare($sql);
|
||||
$prep_statement->execute();
|
||||
$result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
|
||||
foreach ($result as &$row) {
|
||||
$number_translation_uuid = $row["number_translation_uuid"];
|
||||
}
|
||||
unset ($prep_statement, $result);
|
||||
|
||||
?>
|
||||
//delete the row
|
||||
$sql = "delete from v_number_translation_details ";
|
||||
$sql .= "where number_translation_detail_uuid = '".$_REQUEST["number_translation_detail_uuid"]."' ";
|
||||
//$sql .= "and domain_uuid = '".$domain_uuid."' ";
|
||||
$prep_statement = $db->prepare($sql);
|
||||
$prep_statement->execute();
|
||||
|
||||
//redirect the user
|
||||
header('Location: number_translation_edit.php?id='.$number_translation_uuid);
|
||||
}
|
||||
|
||||
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user