mirror of
https://github.com/pandorafms/pandorafms.git
synced 2025-07-29 08:45:12 +02:00
Merge branch 'ent-8125-Usuarios-globales-se-borran-si-les-borras-todos-los-perfiles' into 'develop'
prevent from deleting global admin users when removing all of their profiles See merge request artica/pandorafms!4493
This commit is contained in:
commit
cb3bba0a0d
@ -140,7 +140,9 @@ if (is_ajax()) {
|
|||||||
|
|
||||||
|
|
||||||
$has_profile = db_get_row('tusuario_perfil', 'id_usuario', $id2);
|
$has_profile = db_get_row('tusuario_perfil', 'id_usuario', $id2);
|
||||||
if ($has_profile == false) {
|
$user_is_global_admin = users_is_admin($id2);
|
||||||
|
|
||||||
|
if ($has_profile === false && $user_is_global_admin === false) {
|
||||||
$result = delete_user($id2);
|
$result = delete_user($id2);
|
||||||
|
|
||||||
if ($result) {
|
if ($result) {
|
||||||
@ -1544,6 +1546,7 @@ $(document).ready (function () {
|
|||||||
var img_delete = '<?php echo $delete_image; ?>';
|
var img_delete = '<?php echo $delete_image; ?>';
|
||||||
var id_user = '<?php echo io_safe_output($id); ?>';
|
var id_user = '<?php echo io_safe_output($id); ?>';
|
||||||
var is_metaconsole = '<?php echo $meta; ?>';
|
var is_metaconsole = '<?php echo $meta; ?>';
|
||||||
|
var user_is_global_admin = '<?php echo users_is_admin($id); ?>';
|
||||||
var data = [];
|
var data = [];
|
||||||
|
|
||||||
$('input:image[name="add"]').click(function (e) {
|
$('input:image[name="add"]').click(function (e) {
|
||||||
@ -1588,7 +1591,7 @@ $(document).ready (function () {
|
|||||||
$('input:image[name="del"]').click(function (e) {
|
$('input:image[name="del"]').click(function (e) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
var rows = $("#table_profiles tr").length;
|
var rows = $("#table_profiles tr").length;
|
||||||
if ((is_metaconsole === '1' && rows <= 4) || (is_metaconsole === '' && rows <= 3)) {
|
if (((is_metaconsole === '1' && rows <= 4) || (is_metaconsole === '' && rows <= 3)) && user_is_global_admin !== '1') {
|
||||||
if (!confirm('<?php echo __('Deleting last profile will delete this user'); ?>' + '. ' + '<?php echo __('Are you sure?'); ?>')) {
|
if (!confirm('<?php echo __('Deleting last profile will delete this user'); ?>' + '. ' + '<?php echo __('Are you sure?'); ?>')) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -1610,8 +1613,11 @@ $(document).ready (function () {
|
|||||||
success: function (data) {
|
success: function (data) {
|
||||||
row.remove();
|
row.remove();
|
||||||
var rows = $("#table_profiles tr").length;
|
var rows = $("#table_profiles tr").length;
|
||||||
if ((is_metaconsole === '1' && rows <= 3) || (is_metaconsole === '' && rows <= 2)) {
|
|
||||||
|
if (is_metaconsole === '' && rows <= 2 && user_is_global_admin !== '1') {
|
||||||
window.location.replace("<?php echo ui_get_full_url('index.php?sec=gusuarios&sec2=godmode/users/user_list&tab=user&pure=0', false, false, false); ?>");
|
window.location.replace("<?php echo ui_get_full_url('index.php?sec=gusuarios&sec2=godmode/users/user_list&tab=user&pure=0', false, false, false); ?>");
|
||||||
|
} else if (is_metaconsole === '1' && rows <= 3 && user_is_global_admin !== '1') {
|
||||||
|
window.location.replace("<?php echo ui_get_full_url('index.php?sec=advanced&sec2=advanced/users_setup', false, false, true); ?>");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@ -1750,7 +1756,6 @@ function show_double_auth_info () {
|
|||||||
var $dialogContainer = $("div#dialog-double_auth-container");
|
var $dialogContainer = $("div#dialog-double_auth-container");
|
||||||
|
|
||||||
$dialogContainer.html($loadingSpinner);
|
$dialogContainer.html($loadingSpinner);
|
||||||
console.log(userID);
|
|
||||||
// Load the info page
|
// Load the info page
|
||||||
var request = $.ajax({
|
var request = $.ajax({
|
||||||
url: "<?php echo ui_get_full_url('ajax.php', false, false, false); ?>",
|
url: "<?php echo ui_get_full_url('ajax.php', false, false, false); ?>",
|
||||||
@ -1915,7 +1920,6 @@ function show_double_auth_deactivation () {
|
|||||||
|
|
||||||
},
|
},
|
||||||
success: function(data, textStatus, xhr) {
|
success: function(data, textStatus, xhr) {
|
||||||
console.log(data);
|
|
||||||
if (data === -1) {
|
if (data === -1) {
|
||||||
$dialogContainer.html("<?php echo '<b><div class=\"red\">'.__('Authentication error').'</div></b>'; ?>");
|
$dialogContainer.html("<?php echo '<b><div class=\"red\">'.__('Authentication error').'</div></b>'; ?>");
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user