Update index.html

This commit is contained in:
TheErrorExe 2025-01-06 20:57:48 +01:00 committed by GitHub
parent aa1682d339
commit 1c3490beb3
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -8,6 +8,30 @@
<script src="/static/js/script.js" defer></script> <script src="/static/js/script.js" defer></script>
<style> <style>
/* Server Status Bereich */ /* Server Status Bereich */
#online-players {
margin-top: 20px;
}
#players-list {
display: flex;
flex-wrap: wrap;
}
#players-list .player {
margin: 10px;
text-align: center;
}
#players-list .player img {
border-radius: 50%;
}
#players-list .player span {
display: block;
margin-top: 5px;
font-weight: bold;
}
#server-status { #server-status {
margin-top: 40px; margin-top: 40px;
padding: 20px; padding: 20px;
@ -171,6 +195,7 @@
</div> </div>
</section> </section>
<!-- Server Status Anzeige --> <!-- Server Status Anzeige -->
<!-- Server Status Anzeige -->
<section id="server-status"> <section id="server-status">
<h2>Server Status</h2> <h2>Server Status</h2>
<p id="status-message">Lade Serverstatus...</p> <p id="status-message">Lade Serverstatus...</p>
@ -179,6 +204,12 @@
<p id="motd" style="display:none;"></p> <p id="motd" style="display:none;"></p>
</section> </section>
<!-- Online Spieler Sektion -->
<section id="online-players" style="display:none;">
<h2>Online Spieler</h2>
<div id="players-list"></div>
</section>
<script> <script>
// Minecraft Server Adresse // Minecraft Server Adresse
const serverAddress = 'blockattack.fun'; // Ändere dies auf deine Serveradresse const serverAddress = 'blockattack.fun'; // Ändere dies auf deine Serveradresse
@ -186,7 +217,7 @@
// API URL // API URL
const apiUrl = `https://api.mcsrvstat.us/3/${serverAddress}`; const apiUrl = `https://api.mcsrvstat.us/3/${serverAddress}`;
// Abrufen des Serverstatus // Abrufen des Serverstatus und Spieler
fetch(apiUrl) fetch(apiUrl)
.then(response => response.json()) .then(response => response.json())
.then(data => { .then(data => {
@ -194,17 +225,17 @@
const serverIpElement = document.getElementById('server-ip'); const serverIpElement = document.getElementById('server-ip');
const playersOnlineElement = document.getElementById('players-online'); const playersOnlineElement = document.getElementById('players-online');
const motdElement = document.getElementById('motd'); const motdElement = document.getElementById('motd');
const playersListElement = document.getElementById('players-list');
const onlinePlayersSection = document.getElementById('online-players');
if (data.online) { if (data.online) {
// Überprüfen, ob die MOTD das Wort "Wartung" enthält // Überprüfen, ob die MOTD das Wort "Wartung" enthält
const motdText = data.motd.clean.join(" "); // Kombiniere alle Zeilen der MOTD const motdText = data.motd.clean.join(" ");
if (motdText.toLowerCase().includes("wartung")) { if (motdText.toLowerCase().includes("wartung")) {
// Wenn "Wartung" in der MOTD enthalten ist, wird der Server als offline angezeigt
statusMessageElement.innerText = 'Server ist in Wartung!'; statusMessageElement.innerText = 'Server ist in Wartung!';
statusMessageElement.classList.remove("online"); statusMessageElement.classList.remove("online");
statusMessageElement.classList.add("offline"); statusMessageElement.classList.add("offline");
} else { } else {
// Wenn der Server online ist und keine Wartung angezeigt wird
statusMessageElement.innerText = 'Server ist Online!'; statusMessageElement.innerText = 'Server ist Online!';
statusMessageElement.classList.remove("offline"); statusMessageElement.classList.remove("offline");
statusMessageElement.classList.add("online"); statusMessageElement.classList.add("online");
@ -214,13 +245,46 @@
serverIpElement.innerText = `IP: ${data.ip}`; serverIpElement.innerText = `IP: ${data.ip}`;
playersOnlineElement.innerText = `Spieler Online: ${data.players.online} / ${data.players.max}`; playersOnlineElement.innerText = `Spieler Online: ${data.players.online} / ${data.players.max}`;
motdElement.innerText = `MOTD: ${data.motd.clean.join(' ')}`; motdElement.innerText = `MOTD: ${data.motd.clean.join(' ')}`;
// Spieler anzeigen, falls vorhanden
if (data.players.list && data.players.list.length > 0) {
// Spieler unter "Online Spieler" anzeigen
onlinePlayersSection.style.display = 'block';
playersListElement.innerHTML = '';
data.players.list.forEach(player => {
// UUID der Spieler ermitteln und Mojang API verwenden
fetch(`https://api.mojang.com/users/profiles/minecraft/${player}`)
.then(response => response.json())
.then(playerData => {
const playerName = playerData.name;
const playerUUID = playerData.id;
const skinUrl = `https://crafatar.com/avatars/${playerUUID}?size=64`;
// Spielername und Skin in die Liste einfügen
const playerElement = document.createElement('div');
playerElement.classList.add('player');
const playerImage = document.createElement('img');
playerImage.src = skinUrl;
playerImage.alt = `${playerName}'s Skin`;
playerImage.style.width = '64px';
playerImage.style.height = '64px';
const playerNameElement = document.createElement('span');
playerNameElement.textContent = playerName;
playerElement.appendChild(playerImage);
playerElement.appendChild(playerNameElement);
playersListElement.appendChild(playerElement);
})
.catch(error => console.error('Fehler beim Abrufen des Spielers:', error));
});
}
} else { } else {
// Server ist offline
statusMessageElement.innerText = 'Server ist Offline!'; statusMessageElement.innerText = 'Server ist Offline!';
statusMessageElement.classList.remove("online"); statusMessageElement.classList.remove("online");
statusMessageElement.classList.add("offline"); statusMessageElement.classList.add("offline");
// Nur die IP anzeigen
serverIpElement.innerText = `IP: ${data.ip}`; serverIpElement.innerText = `IP: ${data.ip}`;
} }
@ -230,11 +294,11 @@
motdElement.style.display = 'block'; motdElement.style.display = 'block';
}) })
.catch(error => { .catch(error => {
// Fehler beim Abrufen der Daten
document.getElementById('status-message').innerText = 'Fehler beim Abrufen des Serverstatus.'; document.getElementById('status-message').innerText = 'Fehler beim Abrufen des Serverstatus.';
console.error('Fehler:', error); console.error('Fehler:', error);
}); });
</script> </script>
<br><br><br><br><br><br><br><br><br><br><br><br> <br><br><br><br><br><br><br><br><br><br><br><br>
<footer> <footer>