Actualiser js/public.js

This commit is contained in:
2026-06-21 14:01:13 +02:00
parent baed897912
commit 33c268efc3
+22 -1
View File
@@ -6,6 +6,7 @@ let activeStreamingFilter = '';
let searchQuery = ''; let searchQuery = '';
let currentPage = 1; let currentPage = 1;
const itemsPerPage = 12; const itemsPerPage = 12;
let physicalOnlyFilter = false;
function getStarsHTML(rating) { function getStarsHTML(rating) {
const r = parseFloat(rating) || 0; const r = parseFloat(rating) || 0;
@@ -48,10 +49,21 @@ function generateStreamingSelect() {
} }
async function loadPublicData() { async function loadPublicData() {
try { try {
const response = await fetch(`${API_URL}?action=get_films`); const response = await fetch(`${API_URL}?action=get_films`);
films = await response.json(); films = await response.json();
generateStreamingSelect(); generateStreamingSelect();
// Écouteur pour le filtre physique
const physicalCheckbox = document.getElementById('physical-only-checkbox');
if (physicalCheckbox) {
physicalCheckbox.addEventListener('change', (e) => {
physicalOnlyFilter = e.target.checked;
currentPage = 1;
renderPublicGrid();
});
}
renderPublicGrid(); renderPublicGrid();
} catch (error) { } catch (error) {
console.error("Erreur de récupération :", error); console.error("Erreur de récupération :", error);
@@ -101,6 +113,15 @@ function renderPublicGrid() {
let filtered = films.filter(f => f.type === currentPubTab); let filtered = films.filter(f => f.type === currentPubTab);
// FILTRE PHYSIQUE UNIQUENENT
if (physicalOnlyFilter) {
filtered = filtered.filter(f =>
!f.streaming ||
f.streaming === 'Disponible en support physique ou Cinéma' ||
f.streaming.trim() === ''
);
}
if (currentPubTab === 'critique' && activeRatingFilter > 0) { if (currentPubTab === 'critique' && activeRatingFilter > 0) {
filtered = filtered.filter(f => { filtered = filtered.filter(f => {
const rating = parseFloat(f.rating) || 0; const rating = parseFloat(f.rating) || 0;