2012-06-04 16:58:40 +02:00
|
|
|
<?php
|
|
|
|
|
/*
|
|
|
|
|
FusionPBX
|
|
|
|
|
Version: MPL 1.1
|
|
|
|
|
|
|
|
|
|
The contents of this file are subject to the Mozilla Public License Version
|
|
|
|
|
1.1 (the "License"); you may not use this file except in compliance with
|
|
|
|
|
the License. You may obtain a copy of the License at
|
|
|
|
|
http://www.mozilla.org/MPL/
|
|
|
|
|
|
|
|
|
|
Software distributed under the License is distributed on an "AS IS" basis,
|
|
|
|
|
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
|
|
|
|
for the specific language governing rights and limitations under the
|
|
|
|
|
License.
|
|
|
|
|
|
|
|
|
|
The Original Code is FusionPBX
|
|
|
|
|
|
|
|
|
|
The Initial Developer of the Original Code is
|
|
|
|
|
Mark J Crane <markjcrane@fusionpbx.com>
|
2015-03-05 10:37:37 +01:00
|
|
|
Portions created by the Initial Developer are Copyright (C) 2008-2015
|
2012-06-04 16:58:40 +02:00
|
|
|
the Initial Developer. All Rights Reserved.
|
|
|
|
|
|
|
|
|
|
Contributor(s):
|
|
|
|
|
Mark J Crane <markjcrane@fusionpbx.com>
|
|
|
|
|
*/
|
2016-10-02 22:30:38 +02:00
|
|
|
|
|
|
|
|
//includes
|
|
|
|
|
include "root.php";
|
|
|
|
|
require_once "resources/require.php";
|
|
|
|
|
require_once "resources/check_auth.php";
|
|
|
|
|
|
|
|
|
|
//check permissions
|
|
|
|
|
if (permission_exists('user_delete')) {
|
|
|
|
|
//access allowed
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
echo "access denied";
|
|
|
|
|
return;
|
|
|
|
|
}
|
2012-06-04 16:58:40 +02:00
|
|
|
|
2014-10-18 08:49:34 +02:00
|
|
|
//add multi-lingual support
|
2015-01-18 10:22:07 +01:00
|
|
|
$language = new text;
|
|
|
|
|
$text = $language->get();
|
2014-10-18 08:49:34 +02:00
|
|
|
|
2012-06-04 16:58:40 +02:00
|
|
|
//get the id
|
|
|
|
|
$user_uuid = check_str($_GET["id"]);
|
|
|
|
|
|
2015-03-05 10:37:37 +01:00
|
|
|
//validate the uuid
|
|
|
|
|
if (is_uuid($user_uuid)) {
|
2015-03-31 02:54:24 +02:00
|
|
|
//get the user's domain from v_users
|
|
|
|
|
if (permission_exists('user_domain')) {
|
|
|
|
|
$sql = "select domain_uuid from v_users ";
|
|
|
|
|
$sql .= "where user_uuid = '".$user_uuid."' ";
|
|
|
|
|
$prep_statement = $db->prepare(check_sql($sql));
|
|
|
|
|
$prep_statement->execute();
|
|
|
|
|
$result = $prep_statement->fetchAll(PDO::FETCH_NAMED);
|
|
|
|
|
foreach ($result as &$row) {
|
|
|
|
|
$domain_uuid = $row["domain_uuid"];
|
|
|
|
|
}
|
|
|
|
|
unset ($prep_statement);
|
|
|
|
|
}
|
|
|
|
|
else {
|
|
|
|
|
$domain_uuid = $_SESSION['domain_uuid'];
|
2015-03-05 10:37:37 +01:00
|
|
|
}
|
2012-06-04 16:58:40 +02:00
|
|
|
|
2015-03-05 10:37:37 +01:00
|
|
|
//required to be a superadmin to delete a member of the superadmin group
|
|
|
|
|
$superadmin_list = superadmin_list($db);
|
|
|
|
|
if (if_superadmin($superadmin_list, $user_uuid)) {
|
|
|
|
|
if (!if_group("superadmin")) {
|
|
|
|
|
//access denied - do not delete the user
|
|
|
|
|
header("Location: index.php");
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
}
|
2012-11-23 03:57:34 +01:00
|
|
|
|
2015-03-31 02:54:24 +02:00
|
|
|
//delete the user settings
|
|
|
|
|
$sql = "delete from v_user_settings ";
|
|
|
|
|
$sql .= "where user_uuid = '".$user_uuid."' ";
|
|
|
|
|
$sql .= "and domain_uuid = '".$domain_uuid."' ";
|
|
|
|
|
if (!$db->exec($sql)) {
|
|
|
|
|
$info = $db->errorInfo();
|
|
|
|
|
print_r($info);
|
|
|
|
|
}
|
|
|
|
|
|
2015-03-05 10:37:37 +01:00
|
|
|
//delete the groups the user is assigned to
|
|
|
|
|
$sql = "delete from v_group_users ";
|
2015-03-31 02:54:24 +02:00
|
|
|
$sql .= "where user_uuid = '".$user_uuid."' ";
|
|
|
|
|
$sql .= "and domain_uuid = '".$domain_uuid."' ";
|
2015-03-05 10:37:37 +01:00
|
|
|
if (!$db->exec($sql)) {
|
|
|
|
|
$info = $db->errorInfo();
|
|
|
|
|
print_r($info);
|
|
|
|
|
}
|
2012-06-04 16:58:40 +02:00
|
|
|
|
2015-03-05 10:37:37 +01:00
|
|
|
//delete the user
|
|
|
|
|
$sql = "delete from v_users ";
|
2015-03-31 02:54:24 +02:00
|
|
|
$sql .= "where user_uuid = '".$user_uuid."' ";
|
|
|
|
|
$sql .= "and domain_uuid = '".$domain_uuid."' ";
|
2015-03-05 10:37:37 +01:00
|
|
|
if (!$db->exec($sql)) {
|
|
|
|
|
$info = $db->errorInfo();
|
|
|
|
|
print_r($info);
|
|
|
|
|
}
|
2012-06-04 16:58:40 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//redirect the user
|
2014-10-18 08:49:34 +02:00
|
|
|
$_SESSION["message"] = $text['message-delete'];
|
2016-10-05 18:29:30 +02:00
|
|
|
header("Location: users.php");
|
2012-06-04 16:58:40 +02:00
|
|
|
|
|
|
|
|
?>
|