mirror of
https://github.com/nadrad/h-m-m.git
synced 2024-06-08 03:52:12 +02:00
sibling activated when node becomes hidden
This commit is contained in:
parent
d16214e78d
commit
2dc9ebdd4c
28
h-m-m
28
h-m-m
|
@ -1211,8 +1211,30 @@ function toggle_hide(&$mm)
|
||||||
{
|
{
|
||||||
$mm['nodes'][ $mm['active_node'] ]['title'] = '[HIDDEN] ' . $mm['nodes'][ $mm['active_node'] ]['title'];
|
$mm['nodes'][ $mm['active_node'] ]['title'] = '[HIDDEN] ' . $mm['nodes'][ $mm['active_node'] ]['title'];
|
||||||
$is_hidden = true;
|
$is_hidden = true;
|
||||||
|
|
||||||
if (!$mm['show_hidden'])
|
if (!$mm['show_hidden'])
|
||||||
$mm['active_node'] = $mm['nodes'][ $mm['active_node'] ]['parent'];
|
{
|
||||||
|
$parent_id = $mm['nodes'][ $mm['active_node'] ]['parent'];
|
||||||
|
if (count($mm['nodes'][$parent_id]['visible_children'])<=1)
|
||||||
|
$mm['active_node'] = $parent_id;
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$previous_sibling = 0;
|
||||||
|
$passed = false;
|
||||||
|
foreach ($mm['nodes'][$parent_id]['visible_children'] as $cid)
|
||||||
|
if ($cid==$mm['active_node'])
|
||||||
|
{
|
||||||
|
if ($previous_sibling!=0) break;
|
||||||
|
$passed = true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$previous_sibling = $cid;
|
||||||
|
if ($passed) break;
|
||||||
|
}
|
||||||
|
$mm['active_node'] = $previous_sibling;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
build_map($mm);
|
build_map($mm);
|
||||||
|
@ -2606,7 +2628,7 @@ function delete_node_internal(&$mm, $active_node, $exclude_parent = false )
|
||||||
|
|
||||||
$previous_sibling = 0;
|
$previous_sibling = 0;
|
||||||
$passed = false;
|
$passed = false;
|
||||||
foreach ($mm['nodes'][$parent_id]['children'] as $cid)
|
foreach ($mm['nodes'][$parent_id]['visible_children'] as $cid)
|
||||||
if ($cid==$active_node)
|
if ($cid==$active_node)
|
||||||
{
|
{
|
||||||
if ($previous_sibling!=0) break;
|
if ($previous_sibling!=0) break;
|
||||||
|
@ -2631,7 +2653,7 @@ function delete_node_internal(&$mm, $active_node, $exclude_parent = false )
|
||||||
|
|
||||||
unset($mm['nodes'][ $active_node ]);
|
unset($mm['nodes'][ $active_node ]);
|
||||||
|
|
||||||
if ($mm['nodes'][$parent_id]['is_leaf'])
|
if (count($mm['nodes'][$parent_id]['visible_children'])==0)
|
||||||
$mm['active_node'] = $parent_id;
|
$mm['active_node'] = $parent_id;
|
||||||
else
|
else
|
||||||
$mm['active_node'] = $previous_sibling;
|
$mm['active_node'] = $previous_sibling;
|
||||||
|
|
Loading…
Reference in a new issue