Схлопывание каталога товаров на n-ом уровне

#
Re: Схлопывание каталога товаров на n-ом уровне
s.y.panferov,
Задачу похожую решал
s.y.panferov писал(а):
Не могу дать ответа, писалось не мной

Но для каждого сайта в зависимости кто что написал нужен индивидуальный подход.
E-mail: info@syrbek.ru / телега: @syrbek /skype: activexm / syrbek.ru / Поддержка сайтов / г. Москва [HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, Git, SVN, Redmine]
#
Re: Схлопывание каталога товаров на n-ом уровне
HostCMS,
HostCMS писал(а):
Только у вас вместо Informationsystem будет Shop везде.

Попробовал Ваш вариант - то же самое.

Решил следующим образом:
Из анализа кода ясно, что подгруппы раскрываются по условию (пример первого уровня)
<xsl:if test="@id = $chosen_group or count(shop_group[@id = $chosen_group]) &gt; 0 or count(shop_group/shop_group[@id = $chosen_group]) &gt; 0" >

Здесь мы видим (но я не сразу допетрил естественно), что проверка проходит до второго уровня вложенности, в то время как целевая подгруппа находится ниже.
Исправил на следующий код:
<xsl:if test="@id = $chosen_group or count(shop_group[@id = $chosen_group]) &gt; 0 or count(shop_group/shop_group[@id = $chosen_group]) &gt; 0 or count(shop_group/shop_group/shop_group[@id = $chosen_group]) &gt; 0" >

Добавил подобные проверки по низлежайшим уровням, чтоб доставали до целевой подгруппы.
Сейчас все подгруппы прекрасно открываются, сворачиваются-разворачиваются.
Более универсального решения пока не придумал Хотел через родительский ID делать, но бросил.
Всех благодарю за отклики!
Авторизация