2021-10-12 21:11:35 +03:00
|
|
|
export function initAdminUserListSearchForm() {
|
2021-10-15 05:35:26 +03:00
|
|
|
const searchForm = window.config.pageData.adminUserListSearchForm;
|
2021-10-12 21:11:35 +03:00
|
|
|
if (!searchForm) return;
|
|
|
|
|
2024-02-13 17:13:06 +03:00
|
|
|
const form = document.querySelector('#user-list-search-form');
|
|
|
|
if (!form) return;
|
2021-10-12 21:11:35 +03:00
|
|
|
|
2024-02-13 17:13:06 +03:00
|
|
|
for (const button of form.querySelectorAll(`button[name=sort][value="${searchForm.SortType}"]`)) {
|
|
|
|
button.classList.add('active');
|
|
|
|
}
|
2021-10-12 21:11:35 +03:00
|
|
|
|
|
|
|
if (searchForm.StatusFilterMap) {
|
|
|
|
for (const [k, v] of Object.entries(searchForm.StatusFilterMap)) {
|
|
|
|
if (!v) continue;
|
2024-02-13 17:13:06 +03:00
|
|
|
for (const input of form.querySelectorAll(`input[name="status_filter[${k}]"][value="${v}"]`)) {
|
|
|
|
input.checked = true;
|
|
|
|
}
|
2021-10-12 21:11:35 +03:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2024-02-13 17:13:06 +03:00
|
|
|
for (const radio of form.querySelectorAll('input[type=radio]')) {
|
|
|
|
radio.addEventListener('click', () => {
|
|
|
|
form.submit();
|
|
|
|
});
|
|
|
|
}
|
2021-10-12 21:11:35 +03:00
|
|
|
|
2024-02-13 17:13:06 +03:00
|
|
|
const resetButtons = form.querySelectorAll('.j-reset-status-filter');
|
|
|
|
for (const button of resetButtons) {
|
|
|
|
button.addEventListener('click', (e) => {
|
|
|
|
e.preventDefault();
|
|
|
|
for (const input of form.querySelectorAll('input[type=radio]')) {
|
|
|
|
if (input.name.startsWith('status_filter[')) {
|
|
|
|
input.checked = false;
|
|
|
|
}
|
2021-10-12 21:11:35 +03:00
|
|
|
}
|
2024-02-13 17:13:06 +03:00
|
|
|
form.submit();
|
2021-10-12 21:11:35 +03:00
|
|
|
});
|
2024-02-13 17:13:06 +03:00
|
|
|
}
|
2021-10-12 21:11:35 +03:00
|
|
|
}
|