mirror of https://github.com/go-gitea/gitea.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
1.3 KiB
39 lines
1.3 KiB
export function initAdminUserListSearchForm(): void { |
|
const searchForm = window.config.pageData.adminUserListSearchForm; |
|
if (!searchForm) return; |
|
|
|
const form = document.querySelector<HTMLFormElement>('#user-list-search-form'); |
|
if (!form) return; |
|
|
|
for (const button of form.querySelectorAll(`button[name=sort][value="${searchForm.SortType}"]`)) { |
|
button.classList.add('active'); |
|
} |
|
|
|
if (searchForm.StatusFilterMap) { |
|
for (const [k, v] of Object.entries(searchForm.StatusFilterMap)) { |
|
if (!v) continue; |
|
for (const input of form.querySelectorAll<HTMLInputElement>(`input[name="status_filter[${k}]"][value="${v}"]`)) { |
|
input.checked = true; |
|
} |
|
} |
|
} |
|
|
|
for (const radio of form.querySelectorAll<HTMLInputElement>('input[type=radio]')) { |
|
radio.addEventListener('click', () => { |
|
form.submit(); |
|
}); |
|
} |
|
|
|
const resetButtons = form.querySelectorAll<HTMLAnchorElement>('.j-reset-status-filter'); |
|
for (const button of resetButtons) { |
|
button.addEventListener('click', (e) => { |
|
e.preventDefault(); |
|
for (const input of form.querySelectorAll<HTMLInputElement>('input[type=radio]')) { |
|
if (input.name.startsWith('status_filter[')) { |
|
input.checked = false; |
|
} |
|
} |
|
form.submit(); |
|
}); |
|
} |
|
}
|
|
|