From 44ae4d23a21ce8ac28d6ad3b2636394af8395790 Mon Sep 17 00:00:00 2001 From: Dariusz Szut Date: Tue, 10 Oct 2023 14:36:08 +0200 Subject: [PATCH 1/5] IBX-6530: Fixed checkbox in content type edit --- .../Resources/public/js/scripts/admin.contenttype.matrix.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js b/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js index 446b34c..4f8f0ab 100644 --- a/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js +++ b/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js @@ -49,8 +49,8 @@ updateDisabledState(parentNode); parentNode.querySelectorAll(SELECTOR_COLUMN_CHECKBOX).forEach((btn) => { - btn.removeEventListener('click', checkColumn, false); - btn.addEventListener('click', checkColumn, false); + btn.removeEventListener('change', checkColumn, false); + btn.addEventListener('change', checkColumn, false); }); }; const initComponent = (container) => { From 20d218a29d156bf9b309c28e6cf70b69908b020f Mon Sep 17 00:00:00 2001 From: Dariusz Szut Date: Wed, 11 Oct 2023 09:50:21 +0200 Subject: [PATCH 2/5] changed btn to checkbox --- .../Resources/public/js/scripts/admin.contenttype.matrix.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js b/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js index 4f8f0ab..11884eb 100644 --- a/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js +++ b/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js @@ -48,9 +48,9 @@ const initColumns = (parentNode) => { updateDisabledState(parentNode); - parentNode.querySelectorAll(SELECTOR_COLUMN_CHECKBOX).forEach((btn) => { - btn.removeEventListener('change', checkColumn, false); - btn.addEventListener('change', checkColumn, false); + parentNode.querySelectorAll(SELECTOR_COLUMN_CHECKBOX).forEach((checkbox) => { + checkbox.removeEventListener('change', checkColumn, false); + checkbox.addEventListener('change', checkColumn, false); }); }; const initComponent = (container) => { From fd3280923b4aabcc8a004e0d701881d42e5c7f27 Mon Sep 17 00:00:00 2001 From: Dariusz Szut Date: Wed, 18 Oct 2023 15:50:12 +0200 Subject: [PATCH 3/5] after qa --- .../public/js/scripts/admin.contenttype.matrix.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js b/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js index 11884eb..2ac8ac5 100644 --- a/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js +++ b/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js @@ -32,11 +32,17 @@ node.insertAdjacentHTML('beforeend', template.replace(NUMBER_PLACEHOLDER, getNextIndex(node))); initColumns(settingsNode); + + node.closest('.ibexa-table').dispatchEvent(new CustomEvent('ibexa-refresh-main-table-checkbox')); }; const removeItems = (event) => { const settingsNode = event.target.closest(SELECTOR_SETTINGS_COLUMNS); - findCheckedColumns(settingsNode).forEach((btn) => btn.closest(SELECTOR_COLUMN).remove()); + findCheckedColumns(settingsNode).forEach((checkbox) => { + checkbox.checked = false; + checkbox.dispatchEvent(new Event('change')); + checkbox.closest(SELECTOR_COLUMN).remove(); + }); initColumns(settingsNode); }; From 95fcb16aa632311b0f83a82ee0f170455b083ad1 Mon Sep 17 00:00:00 2001 From: Dariusz Szut Date: Thu, 19 Oct 2023 12:32:38 +0200 Subject: [PATCH 4/5] after qa --- .../public/js/scripts/admin.contenttype.matrix.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js b/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js index 2ac8ac5..9ffa7c6 100644 --- a/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js +++ b/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js @@ -47,7 +47,12 @@ initColumns(settingsNode); }; const checkColumn = (event) => { - const settingsNode = event.target.closest(SELECTOR_SETTINGS_COLUMNS); + const settingsNode = event.currentTarget.closest(SELECTOR_SETTINGS_COLUMNS); + const isFromJS = event.detail?.isFromJS ?? false; + + if (isFromJS) { + return; + } updateDisabledState(settingsNode); }; @@ -58,6 +63,8 @@ checkbox.removeEventListener('change', checkColumn, false); checkbox.addEventListener('change', checkColumn, false); }); + + parentNode.querySelector('.ibexa-table').dispatchEvent(new CustomEvent('ibexa-refresh-main-table-checkbox')); }; const initComponent = (container) => { container.querySelector(SELECTOR_ADD_COLUMN).addEventListener('click', addItem, false); From 9b140b24f55d6c379fb95a611ec950c3f88a6de4 Mon Sep 17 00:00:00 2001 From: Dariusz Szut Date: Thu, 19 Oct 2023 14:14:19 +0200 Subject: [PATCH 5/5] after qa --- .../public/js/scripts/admin.contenttype.matrix.js | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js b/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js index 9ffa7c6..5c7c77a 100644 --- a/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js +++ b/src/bundle/Resources/public/js/scripts/admin.contenttype.matrix.js @@ -47,12 +47,7 @@ initColumns(settingsNode); }; const checkColumn = (event) => { - const settingsNode = event.currentTarget.closest(SELECTOR_SETTINGS_COLUMNS); - const isFromJS = event.detail?.isFromJS ?? false; - - if (isFromJS) { - return; - } + const settingsNode = event.target.closest(SELECTOR_SETTINGS_COLUMNS); updateDisabledState(settingsNode); };