public/js/script.js aktualisiert
This commit is contained in:
parent
b1cecc7baf
commit
8244ac1858
|
@ -41,50 +41,77 @@ document.addEventListener('DOMContentLoaded', () => {
|
||||||
})
|
})
|
||||||
.catch(error => console.error('Fehler beim Abrufen der Bot-Version:', error));
|
.catch(error => console.error('Fehler beim Abrufen der Bot-Version:', error));
|
||||||
|
|
||||||
// Funktion, um die neuesten Filme abzurufen
|
async function fetchLatestMovies() {
|
||||||
async function fetchLatestMovies() {
|
try {
|
||||||
try {
|
const response = await fetch('/api/latest-movies'); // API-URL
|
||||||
const response = await fetch('/api/latest-movies'); // API-URL
|
const movies = await response.json(); // Filme abrufen
|
||||||
const movies = await response.json(); // Filme abrufen
|
const moviesList = document.getElementById('movies-list');
|
||||||
const moviesList = document.getElementById('movies-list');
|
|
||||||
|
|
||||||
// Leere die Liste, bevor du neue Filme hinzufügst
|
// Leere die Liste, bevor du neue Filme hinzufügst
|
||||||
moviesList.innerHTML = '';
|
moviesList.innerHTML = '';
|
||||||
|
|
||||||
// Füge die neuesten Filme zur Liste hinzu
|
// Füge die neuesten Filme zur Liste hinzu
|
||||||
movies.forEach(movie => {
|
movies.forEach(movie => {
|
||||||
const listItem = document.createElement('li');
|
const listItem = document.createElement('li');
|
||||||
listItem.classList.add('movie-item'); // Füge Klasse hinzu für CSS
|
listItem.classList.add('movie-item'); // Füge Klasse hinzu für CSS
|
||||||
|
|
||||||
// Erstelle das Coverbild
|
// Erstelle das Coverbild
|
||||||
const coverImage = document.createElement('img');
|
const coverImage = document.createElement('img');
|
||||||
coverImage.src = movie.coverImage; // URL des Coverbilds
|
coverImage.src = movie.coverImage; // URL des Coverbilds
|
||||||
coverImage.alt = movie.title; // Alternativtext für das Bild
|
coverImage.alt = movie.title; // Alternativtext für das Bild
|
||||||
|
|
||||||
// Überprüfen, ob das Bild geladen werden kann
|
// Überprüfen, ob das Bild geladen werden kann
|
||||||
coverImage.onerror = () => {
|
coverImage.onerror = () => {
|
||||||
console.error(`Konnte das Bild für ${movie.title} nicht laden: ${coverImage.src}`);
|
console.error(`Konnte das Bild für ${movie.title} nicht laden: ${coverImage.src}`);
|
||||||
coverImage.src = 'fallback-image-url.jpg'; // Fallback-Bild, wenn das Bild nicht geladen werden kann
|
coverImage.src = 'fallback-image-url.jpg'; // Fallback-Bild, wenn das Bild nicht geladen werden kann
|
||||||
};
|
};
|
||||||
|
|
||||||
// Füge das Bild zur Liste hinzu
|
// Füge ein Klick-Event hinzu, um das Popup zu öffnen
|
||||||
listItem.appendChild(coverImage);
|
coverImage.addEventListener('click', () => {
|
||||||
moviesList.appendChild(listItem);
|
openMoviePopup(movie); // Popup mit Filminformationen öffnen
|
||||||
});
|
});
|
||||||
|
|
||||||
// Animation für das Einblenden der Filme
|
// Füge das Bild zur Liste hinzu
|
||||||
requestAnimationFrame(() => {
|
listItem.appendChild(coverImage);
|
||||||
moviesList.childNodes.forEach((item, index) => {
|
moviesList.appendChild(listItem);
|
||||||
setTimeout(() => {
|
|
||||||
item.style.opacity = 1; // Opazität für sanftes Einblenden
|
|
||||||
}, index * 100); // Verzögerung für jeden Film
|
|
||||||
});
|
});
|
||||||
});
|
|
||||||
|
|
||||||
} catch (error) {
|
// Animation für das Einblenden der Filme
|
||||||
console.error('Fehler beim Abrufen der Filme:', error);
|
requestAnimationFrame(() => {
|
||||||
|
moviesList.childNodes.forEach((item, index) => {
|
||||||
|
setTimeout(() => {
|
||||||
|
item.style.opacity = 1; // Opazität für sanftes Einblenden
|
||||||
|
}, index * 100); // Verzögerung für jeden Film
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
} catch (error) {
|
||||||
|
console.error('Fehler beim Abrufen der Filme:', error);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
// Funktion zum Öffnen des Popups mit Filmdetails
|
||||||
|
function openMoviePopup(movie) {
|
||||||
|
document.getElementById('popup-title').innerText = movie.title; // Titel
|
||||||
|
document.getElementById('popup-cover').src = movie.coverImage; // Cover
|
||||||
|
document.getElementById('popup-summary').innerText = movie.summary || "Keine Zusammenfassung verfügbar."; // Zusammenfassung
|
||||||
|
|
||||||
|
// Popup anzeigen
|
||||||
|
document.getElementById('movie-popup').style.display = 'block';
|
||||||
|
}
|
||||||
|
|
||||||
|
// Event Listener zum Schließen des Popups
|
||||||
|
document.getElementById('close-popup').addEventListener('click', () => {
|
||||||
|
document.getElementById('movie-popup').style.display = 'none';
|
||||||
|
});
|
||||||
|
|
||||||
|
// Event Listener zum Schließen des Popups, wenn außerhalb des Inhalts geklickt wird
|
||||||
|
window.addEventListener('click', (event) => {
|
||||||
|
const popup = document.getElementById('movie-popup');
|
||||||
|
if (event.target === popup) {
|
||||||
|
popup.style.display = 'none';
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
// Event-Listener für das Formular
|
// Event-Listener für das Formular
|
||||||
document.getElementById('subscribe-form').addEventListener('submit', function(event) {
|
document.getElementById('subscribe-form').addEventListener('submit', function(event) {
|
||||||
|
@ -130,55 +157,57 @@ document.addEventListener('DOMContentLoaded', () => {
|
||||||
|
|
||||||
// Changelog-Daten
|
// Changelog-Daten
|
||||||
const changelogData = {
|
const changelogData = {
|
||||||
"changelog": [
|
"changelog": [
|
||||||
{
|
{
|
||||||
"version": "1.8.5",
|
"version": "1.8.8", // Hinzugefügte Version
|
||||||
"date": "2024-10-18",
|
"date": "2024-10-21", // Aktuelles Datum
|
||||||
"changes": [
|
"changes": [
|
||||||
"Dev-Report Filme können jetzt gemeldet werden",
|
"Mehrere Bugfix",
|
||||||
"Backend Notification für Dev-Melungen hinzugefügt",
|
"Genre im Profil hinzugefügt",
|
||||||
"Diverse kleinere Bugfix",
|
"Nachtmodus Zeit in Profil eingebaut"
|
||||||
"Darkmode Bugfix"
|
]
|
||||||
]
|
},
|
||||||
},
|
{
|
||||||
{
|
"version": "1.8.7", // Hinzugefügte Version
|
||||||
"version": "1.8.4",
|
"date": "2024-10-20", // Aktuelles Datum
|
||||||
"date": "2024-10-17",
|
"changes": [
|
||||||
"changes": [
|
"Fehlerbehebung mit Profil.",
|
||||||
"Backups Passwort schutz",
|
"Nachtmodus komplett überarbeitet.",
|
||||||
"Verbesserter Passwort schutz für Admin Bereich"
|
"Fehler beim Wunsch behoben.",
|
||||||
]
|
"Benutzerlevel erweitert"
|
||||||
},
|
]
|
||||||
{
|
},
|
||||||
"version": "1.8.3",
|
{
|
||||||
"date": "2024-10-17",
|
"version": "1.8.6", // Neue Version hinzufügen
|
||||||
"changes": [
|
"date": "2024-10-19", // Aktuelles Datum
|
||||||
"Logout Timer hinzugefügt.",
|
"changes": [
|
||||||
"Automatisches Logout bei Inaktivität",
|
"Neue Popup-Funktionalität für Filmcover hinzugefügt.",
|
||||||
"Login-Seite überarbeitet für bessere Benutzerfreundlichkeit.",
|
"Cursor wechselt zu Handzeiger über Filmcover.",
|
||||||
"Darkmode im Adminbereich hinzugefügt."
|
"Rahmenfarbe für das Popup hinzugefügt.",
|
||||||
]
|
"Verschiedene kleinere Bugfixes."
|
||||||
},
|
]
|
||||||
{
|
},
|
||||||
"version": "1.8.2",
|
{
|
||||||
"date": "2024-10-16",
|
"version": "1.8.5",
|
||||||
"changes": [
|
"date": "2024-10-18",
|
||||||
"Neue FAQ-Seite für Benutzer hinzugefügt.",
|
"changes": [
|
||||||
"Benutzerfreundliche Darstellung der FAQs.",
|
"Dev-Report Filme können jetzt gemeldet werden",
|
||||||
"Verbesserte Performance bei der Datenabfrage.",
|
"Backend Notification für Dev-Melungen hinzugefügt",
|
||||||
"Diverse kleinere Fehlerbehebungen."
|
"Diverse kleinere Bugfix",
|
||||||
]
|
"Darkmode Bugfix"
|
||||||
},
|
]
|
||||||
{
|
},
|
||||||
"version": "1.8.1",
|
{
|
||||||
"date": "2024-10-16",
|
"version": "1.8.4",
|
||||||
"changes": [
|
"date": "2024-10-17",
|
||||||
"Bugfix mit Darkmode.",
|
"changes": [
|
||||||
"Dev-Report hinzugefügt (Bug-Report & Funktionswünsche)."
|
"Backups Passwort schutz",
|
||||||
]
|
"Verbesserter Passwort schutz für Admin Bereich"
|
||||||
}
|
]
|
||||||
]
|
}
|
||||||
};
|
]
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Changelog im Popup anzeigen
|
// Changelog im Popup anzeigen
|
||||||
|
@ -224,7 +253,6 @@ document.addEventListener('DOMContentLoaded', () => {
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//wunsch html
|
//wunsch html
|
||||||
|
|
||||||
|
|
||||||
|
@ -393,3 +421,4 @@ toggle.addEventListener('change', () => {
|
||||||
//link html --> keine Scripte
|
//link html --> keine Scripte
|
||||||
|
|
||||||
//funktionen html --> keine Scripte
|
//funktionen html --> keine Scripte
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue