You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Плэйсхолдер [+wrapper+] во всех шаблонах заменён на [+children+].
* \ddMenuBuilder:
+ Добавлен метод \ddMenuBuilder::getOutputTemplate.
* Метод \ddMenuBuilder::generate:
* Переменная $children должна быть определена.
* Для проверки наличия дочерних документов используется empty вместо простого логического значения (т.к. пустой массив также означает отсутствие детей).
* Рефакторинг:
* Один return вместо нескольких.
* Переменная $tpl объявляется в любом случае.
* Элемент массива str объявляется в самом начале, таким образом, он всегда существует.
* Код определения шаблона для вывода документа вынесен в отдельный метод.
* Обработка пустого menutitle документа делается только если документ будет выводиться.
* Определение «активности» текущего документа объеденено в одно условие и перенесено после парсинга.
* Парсинг текущего пункта меню делается только если шаблон определён (если не определён, значит выводить не надо).
* Всегда возвращает массив.
* Поля результирующего массива переименованы:
* act → hasActive.
* str → outputString.
* В массиве документа поле wrapper переименовано в children.
* В результирующем массиве в любом случае будут поля hasActive и outputString.
* Переменная $doc в любом случае будет содержать поле children с массивом дочерних документов, в случае если их нет или не нужно выводить, $doc['children']['outputString'] будет равняться пустой строке.
* Определение шаблона и прочие операции, связанные с выводом, производятся только если в этом есть смысл.