From d0de8c2cf868518b4f21ad6d209f9a2cfdf59097 Mon Sep 17 00:00:00 2001 From: Angel Fernando Quiroz Campos Date: Mon, 17 Jun 2024 19:07:44 -0500 Subject: [PATCH] Display: LP: Improve styles for accordion when lp.lp_view_accordion is set - refs BT#21588 --- assets/css/scorm.scss | 16 +++++++ assets/js/legacy/lp.js | 4 ++ .../views/LearnPath/scorm_list.html.twig | 42 ++----------------- .../Resources/views/LearnPath/view.html.twig | 22 ---------- 4 files changed, 24 insertions(+), 60 deletions(-) diff --git a/assets/css/scorm.scss b/assets/css/scorm.scss index 932e642949..4151d29c9c 100644 --- a/assets/css/scorm.scss +++ b/assets/css/scorm.scss @@ -645,6 +645,12 @@ See https://support.chamilo.org/issues/6976 } &.scorm_item_section { + &.accordion { + .section { + @apply cursor-pointer; + } + } + .section { @apply py-3 pr-4 bg-no-repeat bg-left relative bg-gray-10 after:block after:absolute after:bottom-0 after:left-0 after:right-0 after:mr-4 after:border-b after:border-gray-25 @@ -820,4 +826,14 @@ See https://support.chamilo.org/issues/6976 .item-children { @apply bg-white; + + .accordion + & { + @apply hidden; + } + + .accordion.active + &, + .accordion + &:has(> .scorm_highlight), + &:has(& .scorm_highlight) { + @apply block; + } } diff --git a/assets/js/legacy/lp.js b/assets/js/legacy/lp.js index 359e590cc8..1760a06947 100644 --- a/assets/js/legacy/lp.js +++ b/assets/js/legacy/lp.js @@ -39,4 +39,8 @@ document.addEventListener("DOMContentLoaded", (event) => { } }) }) + + document + .querySelectorAll(".accordion") + .forEach((accordion) => accordion.addEventListener("click", () => accordion.classList.toggle("active"))) }) diff --git a/src/CoreBundle/Resources/views/LearnPath/scorm_list.html.twig b/src/CoreBundle/Resources/views/LearnPath/scorm_list.html.twig index 56edb3d62d..5603853401 100644 --- a/src/CoreBundle/Resources/views/LearnPath/scorm_list.html.twig +++ b/src/CoreBundle/Resources/views/LearnPath/scorm_list.html.twig @@ -1,21 +1,18 @@ {% autoescape false %} {% macro processItem(item, lp_current_item_id, status_list) %} {% import _self as self %} - {% set itemClass = '' %} + {% set itemClass = ' ' %} {% if 'dir' == item.itemType %} - {% set itemClass = 'scorm_item_section' %} + {% set itemClass = itemClass ~ 'scorm_item_section ' %} {% endif %} {% if lp_current_item_id == item.iid %} - {% set itemClass = 'scorm_highlight' %} + {% set itemClass = itemClass ~ 'scorm_highlight ' %} {% endif %} {% set itemLevel = 'level_' ~ (item.lvl - 1) %} {% set itemStatusClass = status_list[item.iid] %} - {% set accordionClass = '' %} - {% if item.itemType == 'dir' %} - {% set accordionClass = 'accordion' %} - {% endif %} + {% set accordionClass = item.itemType == 'dir' and 'true' == chamilo_settings_get('lp.lp_view_accordion') ? 'accordion' : '' %}
{% if item.itemType == 'dir' %} @@ -119,34 +116,3 @@
{% endif %} {% endautoescape %} - diff --git a/src/CoreBundle/Resources/views/LearnPath/view.html.twig b/src/CoreBundle/Resources/views/LearnPath/view.html.twig index 8b27cf34ab..0641e8f7ae 100644 --- a/src/CoreBundle/Resources/views/LearnPath/view.html.twig +++ b/src/CoreBundle/Resources/views/LearnPath/view.html.twig @@ -387,27 +387,5 @@ {% endif %} }) - - {% endautoescape %} {% endblock %}