Added recursion to delete modules children warning
This commit is contained in:
parent
5d0826f412
commit
0458f4357e
|
@ -1640,13 +1640,13 @@ if (check_login()) {
|
|||
$children_selected = false;
|
||||
} else {
|
||||
foreach ($parent_modules as $parent) {
|
||||
$child_modules = get_children_module($parent_modules, ['nombre', 'id_agente_modulo']);
|
||||
$child_modules = get_children_module($parent_modules, ['nombre', 'id_agente_modulo'], true);
|
||||
if ((bool) $child_modules === false) {
|
||||
continue;
|
||||
}
|
||||
|
||||
foreach ($child_modules as $child) {
|
||||
$module_exist = in_array($child['id_agente_modulo'], $children_selected);
|
||||
$module_exist = in_array($child['id_agente_modulo'], $parent_modules);
|
||||
$child_exist = in_array($child, $children_selected);
|
||||
|
||||
if ($module_exist === false && $child_exist === false) {
|
||||
|
|
|
@ -3986,9 +3986,10 @@ function recursive_get_dt_from_modules_tree(&$f_modules, $modules, $deep)
|
|||
* Get the module data from a children
|
||||
*
|
||||
* @param integer $id_module Id module
|
||||
* @param boolean $recursive Recursive children search.
|
||||
* @return array Children module data
|
||||
*/
|
||||
function get_children_module($id_module, $fields=false)
|
||||
function get_children_module($id_module, $fields=false, $recursion=false)
|
||||
{
|
||||
$children_module_data = db_get_all_rows_filter(
|
||||
'tagente_modulo',
|
||||
|
@ -3996,6 +3997,17 @@ function get_children_module($id_module, $fields=false)
|
|||
$fields
|
||||
);
|
||||
|
||||
if ($children_module_data !== false && $recursion === true) {
|
||||
foreach ($children_module_data as $child) {
|
||||
$niece = get_children_module($child['id_agente_modulo'], $fields, false);
|
||||
if ((bool) $niece === false) {
|
||||
continue;
|
||||
} else {
|
||||
$children_module_data = array_merge($children_module_data, $niece);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return $children_module_data;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue