Actualiser js/admin.js
This commit is contained in:
+9
-10
@@ -100,11 +100,14 @@ function initEventListeners() {
|
|||||||
async function loadDashboardData() {
|
async function loadDashboardData() {
|
||||||
try {
|
try {
|
||||||
const res = await fetch(`${API_URL}?action=get_films`, { cache: 'no-store' });
|
const res = await fetch(`${API_URL}?action=get_films`, { cache: 'no-store' });
|
||||||
allItems = await res.json();
|
const data = await res.json(); // Reçoit {critiques: [...], videotheque: [...]}
|
||||||
|
dataStore = data;
|
||||||
|
|
||||||
const secRes = await fetch(`${API_URL}?action=check_security_status`, { cache: 'no-store' });
|
const secRes = await fetch(`${API_URL}?action=check_security_status`, { cache: 'no-store' });
|
||||||
const secData = await secRes.json();
|
const secData = await secRes.json();
|
||||||
const banner = document.getElementById('security-banner');
|
const banner = document.getElementById('security-banner');
|
||||||
if (banner) banner.style.display = secData.is_blank ? 'flex' : 'none';
|
if (banner) banner.style.display = secData.is_blank ? 'flex' : 'none';
|
||||||
|
|
||||||
renderAdminTable();
|
renderAdminTable();
|
||||||
} catch (err) { console.error('Erreur chargement :', err); }
|
} catch (err) { console.error('Erreur chargement :', err); }
|
||||||
}
|
}
|
||||||
@@ -118,15 +121,11 @@ function renderAdminTable() {
|
|||||||
const currentSearch = searchInput ? searchInput.value.toLowerCase() : '';
|
const currentSearch = searchInput ? searchInput.value.toLowerCase() : '';
|
||||||
const physicalFilter = document.getElementById('admin-physical-checkbox');
|
const physicalFilter = document.getElementById('admin-physical-checkbox');
|
||||||
|
|
||||||
let filtered = allItems.filter(item => item.type === currentAdminTab);
|
// On prend directement la bonne liste dans dataStore
|
||||||
|
let filtered = dataStore[currentAdminTab] || [];
|
||||||
|
|
||||||
if (physicalFilter && physicalFilter.checked) {
|
if (physicalFilter && physicalFilter.checked && currentAdminTab === 'critique') {
|
||||||
filtered = filtered.filter(f => {
|
filtered = filtered.filter(f => f.streaming && f.streaming.toLowerCase().includes('support physique'));
|
||||||
if (f.type === 'critique') {
|
|
||||||
return f.streaming && f.streaming.toLowerCase().includes('support physique');
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (currentSearch) {
|
if (currentSearch) {
|
||||||
@@ -176,7 +175,7 @@ function toggleSingleSelect(id, checkbox) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function toggleSelectAll(source) {
|
function toggleSelectAll(source) {
|
||||||
const filtered = allItems.filter(item => item.type === currentAdminTab);
|
const filtered = dataStore[currentAdminTab] || [];
|
||||||
if (source.checked) filtered.forEach(f => selectedIds.add(String(f.id)));
|
if (source.checked) filtered.forEach(f => selectedIds.add(String(f.id)));
|
||||||
else filtered.forEach(f => selectedIds.delete(String(f.id)));
|
else filtered.forEach(f => selectedIds.delete(String(f.id)));
|
||||||
document.querySelectorAll('.film-checkbox').forEach(cb => { cb.checked = selectedIds.has(cb.value); });
|
document.querySelectorAll('.film-checkbox').forEach(cb => { cb.checked = selectedIds.has(cb.value); });
|
||||||
|
|||||||
Reference in New Issue
Block a user