Skip to content

Commit cfe04d3

Browse files
Фикс применения фильтра при кэшировании значений
1 parent cef5b5c commit cfe04d3

1 file changed

Lines changed: 19 additions & 2 deletions

File tree

web/client/js/grid.js

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -201,10 +201,25 @@ document.addEventListener('DOMContentLoaded', () => {
201201
document.getElementById('modalClose')?.addEventListener('click', closeModal);
202202
document.getElementById('modalOverlay')?.addEventListener('click', closeModal);
203203

204-
// Load initial data
205-
loadRepositories('', repoParam);
204+
// Defer initial load so browser-restored form state (e.g. exclude forks checkbox) is applied first
205+
requestAnimationFrame(() => {
206+
loadRepositories('', repoParam);
207+
});
206208
});
207209

210+
// Sync in-memory filters with DOM (browser may restore form state without firing change)
211+
function syncColumnFiltersFromDOM() {
212+
const langFilter = document.getElementById('langFilter');
213+
const licenseFilter = document.getElementById('licenseFilter');
214+
const authorFilter = document.getElementById('authorFilter');
215+
const excludeForksFilter = document.getElementById('excludeForksFilter');
216+
217+
columnFilters.lang = langFilter?.value || '';
218+
columnFilters.license = licenseFilter?.value || '';
219+
columnFilters.author = authorFilter?.value || '';
220+
columnFilters.excludeForks = Boolean(excludeForksFilter?.checked);
221+
}
222+
208223
// Switch filter
209224
function switchFilter(filter) {
210225
if (filter === currentFilter) return;
@@ -232,6 +247,8 @@ function switchFilter(filter) {
232247

233248
// Load repositories
234249
async function loadRepositories(searchQuery = '', highlightRepoId = null) {
250+
syncColumnFiltersFromDOM();
251+
235252
const loading = document.getElementById('tableLoading');
236253
const table = document.getElementById('reposTable');
237254
const empty = document.getElementById('tableEmpty');

0 commit comments

Comments
 (0)