mirror of
https://github.com/pandorafms/pandorafms.git
synced 2025-07-27 15:54:29 +02:00
Fixed problem with delete maps when user is admin and have all permisions and other user have RM and RW and delete with RW rule
This commit is contained in:
parent
85eda328a4
commit
c28fd1f4d8
@ -39,29 +39,28 @@ if (is_ajax()) {
|
|||||||
$delete_networkmaps = (bool) get_parameter('delete_networkmaps');
|
$delete_networkmaps = (bool) get_parameter('delete_networkmaps');
|
||||||
if ($delete_networkmaps) {
|
if ($delete_networkmaps) {
|
||||||
if ( check_acl ($config['id_user'], 0, "RW") || check_acl ($config['id_user'], 0, "RM") ) {
|
if ( check_acl ($config['id_user'], 0, "RW") || check_acl ($config['id_user'], 0, "RM") ) {
|
||||||
if (check_acl ($config['id_user'], 0, "RW")) {
|
if (check_acl ($config['id_user'], 0, "RM")) {
|
||||||
$result = false;
|
|
||||||
$results = array();
|
|
||||||
$ids_networkmap = (array) get_parameter ('ids_networkmap');
|
|
||||||
|
|
||||||
foreach ($ids_networkmap as $id) {
|
|
||||||
$results[$id] = (bool) networkmap_delete_user_networkmap($config['id_user'], $id);
|
|
||||||
}
|
|
||||||
echo json_encode($results);
|
|
||||||
return;
|
|
||||||
}else{
|
|
||||||
if (check_acl ($config['id_user'], 0, "RM")) {
|
|
||||||
$result = false;
|
$result = false;
|
||||||
$results = array();
|
$results = array();
|
||||||
$ids_networkmap = (array) get_parameter ('ids_networkmap');
|
$ids_networkmap = (array) get_parameter ('ids_networkmap');
|
||||||
|
|
||||||
foreach ($ids_networkmap as $id) {
|
foreach ($ids_networkmap as $id) {
|
||||||
$results[$id] = (bool) networkmap_delete_networkmap($id);
|
$results[$id] = (bool) networkmap_delete_networkmap($id);
|
||||||
}
|
}
|
||||||
echo json_encode($results);
|
echo json_encode($results);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
else{
|
||||||
|
if (check_acl ($config['id_user'], 0, "RW")) {
|
||||||
|
$result = false;
|
||||||
|
$results = array();
|
||||||
|
$ids_networkmap = (array) get_parameter ('ids_networkmap');
|
||||||
|
foreach ($ids_networkmap as $id) {
|
||||||
|
$results[$id] = (bool) networkmap_delete_user_networkmap($config['id_user'], $id);
|
||||||
|
}
|
||||||
|
echo json_encode($results);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
}else{
|
}else{
|
||||||
db_pandora_audit("ACL Violation",
|
db_pandora_audit("ACL Violation",
|
||||||
"Trying to access Networkmap deletion");
|
"Trying to access Networkmap deletion");
|
||||||
@ -69,7 +68,6 @@ if (is_ajax()) {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -82,19 +80,19 @@ $id_networkmap = get_parameter ('id_networkmap', 0);
|
|||||||
$delete_networkmap = get_parameter ('delete_networkmap', 0);
|
$delete_networkmap = get_parameter ('delete_networkmap', 0);
|
||||||
|
|
||||||
if ($delete_networkmap) {
|
if ($delete_networkmap) {
|
||||||
if (check_acl ($config['id_user'], 0, "RW")) {
|
if (is_user_admin ($config['id_user'])){
|
||||||
|
$result = networkmap_delete_networkmap($id_networkmap);
|
||||||
|
}
|
||||||
|
elseif (check_acl ($config['id_user'], 0, "RM")) {
|
||||||
|
$result = networkmap_delete_networkmap($id_networkmap);
|
||||||
|
}elseif (check_acl ($config['id_user'], 0, "RW")) {
|
||||||
$result = networkmap_delete_user_networkmap($config['id_user'], $id_networkmap);
|
$result = networkmap_delete_user_networkmap($config['id_user'], $id_networkmap);
|
||||||
}else{
|
|
||||||
if (check_acl ($config['id_user'], 0, "RM")) {
|
|
||||||
$result = networkmap_delete_networkmap($id_networkmap);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
$message = ui_print_result_message ($result,
|
$message = ui_print_result_message ($result,
|
||||||
__('Network map deleted successfully'),
|
__('Network map deleted successfully'),
|
||||||
__('Could not delete network map'), '', true);
|
__('Could not delete network map'), '', true);
|
||||||
|
|
||||||
echo $message;
|
echo $message;
|
||||||
|
|
||||||
$id_networkmap = 0;
|
$id_networkmap = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user