From db633d1e0f55dc1fbcc6315c3932e02141c9ac1c Mon Sep 17 00:00:00 2001 From: pengyin-shan Date: Wed, 6 Apr 2022 17:18:46 -0400 Subject: [PATCH 1/2] update accordion method and structure of sections --- app/controllers/org_admin/phases_controller.rb | 2 +- app/controllers/org_admin/sections_controller.rb | 2 +- app/javascript/src/utils/accordion.js | 12 +++++++----- app/views/org_admin/sections/_section.html.erb | 2 +- app/views/org_admin/sections/_section_group.html.erb | 4 ++-- 5 files changed, 12 insertions(+), 10 deletions(-) diff --git a/app/controllers/org_admin/phases_controller.rb b/app/controllers/org_admin/phases_controller.rb index 3ef617119a..84ef0134ca 100644 --- a/app/controllers/org_admin/phases_controller.rb +++ b/app/controllers/org_admin/phases_controller.rb @@ -195,4 +195,4 @@ def phase_params end -end +end \ No newline at end of file diff --git a/app/controllers/org_admin/sections_controller.rb b/app/controllers/org_admin/sections_controller.rb index 0d5b9b2b2f..415d5139c4 100644 --- a/app/controllers/org_admin/sections_controller.rb +++ b/app/controllers/org_admin/sections_controller.rb @@ -146,4 +146,4 @@ def section_params end -end +end \ No newline at end of file diff --git a/app/javascript/src/utils/accordion.js b/app/javascript/src/utils/accordion.js index d80ee9c5ee..c287026eaa 100644 --- a/app/javascript/src/utils/accordion.js +++ b/app/javascript/src/utils/accordion.js @@ -31,21 +31,23 @@ * */ $(() => { - $('body').on('click', '.accordion-controls', (e) => { + $('body').on('click', '.accordion-controls a', (e) => { e.preventDefault(); const currentTarget = $(e.currentTarget); const target = $(e.target); const direction = target.attr('data-toggle-direction'); + const parentTargetName = currentTarget.parent().attr('data-parent'); if (direction) { // Selects all .panel elements where the parent is currentTarget.attr('data-parent') and // after gets the immediately children whose class selector is panel-collapse - $(`#${currentTarget.attr('data-parent')} > .panel`).children('.panel-collapse').each((i, el) => { + const parentTarget = $(`#${parentTargetName}`).length ? $(`#${parentTargetName}`) : $(`.${parentTargetName}`); + $(parentTarget).find('.panel').find('.panel-collapse').each((i, el) => { const panelCollapse = $(el); // Expands or collapses the panel according to the // direction passed (e.g. show --> expands, hide --> collapses) if (direction === 'show') { - if (!panelCollapse.hasClass('in')) { - panelCollapse.prev().trigger('click'); + if (!panelCollapse.find('.panel-body').attr('data-loaded') || !panelCollapse.hasClass('in')) { + panelCollapse.prev()[0].click(); } } else { panelCollapse.collapse(direction); @@ -56,4 +58,4 @@ $(() => { }); } }); -}); +}); \ No newline at end of file diff --git a/app/views/org_admin/sections/_section.html.erb b/app/views/org_admin/sections/_section.html.erb index ca7062ca7f..cb56aa07b2 100644 --- a/app/views/org_admin/sections/_section.html.erb +++ b/app/views/org_admin/sections/_section.html.erb @@ -46,4 +46,4 @@ <% end %> - + \ No newline at end of file diff --git a/app/views/org_admin/sections/_section_group.html.erb b/app/views/org_admin/sections/_section_group.html.erb index 4623c019b0..37a960ab59 100644 --- a/app/views/org_admin/sections/_section_group.html.erb +++ b/app/views/org_admin/sections/_section_group.html.erb @@ -1,5 +1,5 @@ -
@@ -12,4 +12,4 @@ data_parent: panel_id, draggable: draggable_for_section?(section) } %> <% end%> -
+ \ No newline at end of file From 703e7af3403f4571ad3745b687f009304a985691 Mon Sep 17 00:00:00 2001 From: pengyin-shan Date: Wed, 6 Apr 2022 17:25:54 -0400 Subject: [PATCH 2/2] update changelog --- CHANGELOG.md | 4 ++++ app/javascript/src/utils/accordion.js | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2c20852ee7..a63242d062 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +### Fixed + +- Adjusted accordion javascript for a different user case [#166](https://github.com/portagenetwork/roadmap/issues/166) + ## [3.0.4+portage-3.0.7] - 2022-04-05 ### Added diff --git a/app/javascript/src/utils/accordion.js b/app/javascript/src/utils/accordion.js index c287026eaa..253893bbd9 100644 --- a/app/javascript/src/utils/accordion.js +++ b/app/javascript/src/utils/accordion.js @@ -58,4 +58,4 @@ $(() => { }); } }); -}); \ No newline at end of file +});