Skip to content

Commit e5db3ad

Browse files
authored
Fix list-view js to work with ajaxed content (#40598)
1 parent 5720269 commit e5db3ad

File tree

1 file changed

+15
-5
lines changed

1 file changed

+15
-5
lines changed

build/media_source/system/js/list-view.es6.js

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -89,8 +89,18 @@ function applyIsChecked(event) {
8989
}
9090
}
9191

92-
document.querySelectorAll('.js-grid-item-check-all').forEach((element) => element.addEventListener('click', (event) => Joomla.checkAll(event.target)));
93-
document.querySelectorAll('.js-grid-item-is-checked').forEach((element) => element.addEventListener('click', applyIsChecked));
94-
document.querySelectorAll('.js-grid-item-action').forEach((element) => element.addEventListener('click', gridItemAction));
95-
document.querySelectorAll('.js-grid-item-transition-action').forEach((element) => element.addEventListener('change', gridTransitionItemAction));
96-
document.querySelectorAll('.js-grid-button-transition-action').forEach((element) => element.addEventListener('click', gridTransitionButtonAction));
92+
/*
93+
* Set up an interactive list elements
94+
*
95+
* @param {Event} event
96+
*/
97+
const setup = ({ target }) => {
98+
target.querySelectorAll('.js-grid-item-check-all').forEach((element) => element.addEventListener('click', (event) => Joomla.checkAll(event.target)));
99+
target.querySelectorAll('.js-grid-item-is-checked').forEach((element) => element.addEventListener('click', applyIsChecked));
100+
target.querySelectorAll('.js-grid-item-action').forEach((element) => element.addEventListener('click', gridItemAction));
101+
target.querySelectorAll('.js-grid-item-transition-action').forEach((element) => element.addEventListener('change', gridTransitionItemAction));
102+
target.querySelectorAll('.js-grid-button-transition-action').forEach((element) => element.addEventListener('click', gridTransitionButtonAction));
103+
};
104+
105+
setup({ target: document });
106+
document.addEventListener('joomla:updated', setup);

0 commit comments

Comments
 (0)