Использую стандартный шаблон меню Tree для вывода меню из элементов и разделов инфоблока, беда в том, при переходе в пункт меню (из раздела) переход осуществляется и остаются развернуты нужные разделы и подраздел, до того раздела в который я перешел.
Но при переходе в пункт меню из элемента инфоблока меню сворачивается, т.е. не проставляется свойство "CHILD_SELECTED" формируемое в файле result_modifier.php шаблона меню.
Понимаю, что надо проставлять свойство всем раздела выше при клике на пункт меню из элемента инфоблока, но как это сделать не могу сообразить, беда с php../
Но при переходе в пункт меню из элемента инфоблока меню сворачивается, т.е. не проставляется свойство "CHILD_SELECTED" формируемое в файле result_modifier.php шаблона меню.
Понимаю, что надо проставлять свойство всем раздела выше при клике на пункт меню из элемента инфоблока, но как это сделать не могу сообразить, беда с php../
Код |
---|
<? if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die(); //determine if child selected $bWasSelected = false; $arParents = array(); $depth = 1; foreach($arResult as $i=>$arMenu) { $depth = $arMenu['DEPTH_LEVEL']; if($arMenu['IS_PARENT'] == true) { $arParents[$arMenu['DEPTH_LEVEL']-1] = $i; } elseif($arMenu['SELECTED'] == true ) { $bWasSelected = true; break; } } if($bWasSelected) { for($i=0; $i<$depth-1; $i++) $arResult[$arParents[$i]]['CHILD_SELECTED'] = true; } ?> |