Untitled
unknown
javascript
a year ago
6.0 kB
7
Indexable
// Haber ekleme işlemi (add-news.html)
document.getElementById('news-form')?.addEventListener('submit', async (event) => {
event.preventDefault();
const title = document.getElementById('title').value;
const content = document.getElementById('content').value;
const imageUrl = document.getElementById('image-url').value;
const response = await fetch('/api/add-news', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ title, content, imageUrl })
});
if (response.ok) {
alert('Haber başarıyla eklendi!');
window.location.href = '/public/admin-panel.html'; // Haber eklendikten sonra admin paneline yönlendir
} else {
alert('Haber eklenirken bir hata oluştu.');
}
});
// Haberleri listeleme işlemi (index.html)
async function fetchNews() {
const response = await fetch('/api/news');
const news = await response.json();
const newsHeading = document.getElementById('news-heading');
const newsCards = document.getElementById('news-cards');
if (newsCards === null) {
console.error("newsCards öğesi bulunamadı.");
return;
}
newsCards.innerHTML = '';
if (news.length === 0) {
newsHeading.classList.add('d-none'); // Haber yoksa başlığı gizle
} else {
newsHeading.classList.remove('d-none'); // Haber varsa başlığı göster
news.forEach((item, index) => {
const card = `
<div class="col-md-4 mb-4">
<div class="card">
${item.imageUrl ? `<img src="${item.imageUrl}" class="card-img-top" alt="Haber Resmi">` : ''}
<div class="card-body">
<h5 class="card-title">${item.title}</h5>
<p class="card-text">${item.content}</p>
</div>
</div>
</div>
`;
newsCards.innerHTML += card;
});
}
}
fetchNews();
// Sunucu durumunu almak ve göstermek
document.addEventListener('DOMContentLoaded', function() {
fetchServerStatus();
async function fetchServerStatus() {
try {
const response = await fetch('/api/server-status');
const data = await response.json();
// ID'leri kontrol edelim ve ilgili öğeleri seçelim
const serverStatusIndicator = document.getElementById('server-status-indicator');
const playerCount = document.getElementById('player-count');
const map = document.getElementById('map');
const gameMode = document.getElementById('game-mode');
const ping = document.getElementById('ping');
const playerListElement = document.getElementById('player-list');
const topThreePlayersElement = document.getElementById('top-three-players');
// ID'lerin null olup olmadığını kontrol edelim
if (!serverStatusIndicator || !playerCount || !map || !gameMode || !ping || !playerListElement || !topThreePlayersElement) {
console.error("HTML öğeleri bulunamadı.");
return;
}
if (data.error) {
serverStatusIndicator.innerText = data.error;
} else {
serverStatusIndicator.innerText = data.status;
playerCount.innerText = data.players;
map.innerText = data.map;
gameMode.innerText = data.gameMode;
ping.innerText = data.ping;
playerListElement.innerHTML = '';
data.playerList.forEach(player => {
const listItem = document.createElement('li');
listItem.className = 'list-group-item';
listItem.innerText = `${player.name} - Score: ${player.score}`;
playerListElement.appendChild(listItem);
});
// Liderler bölümünü doldur
const topThreePlayers = data.playerList.slice(0, 3); // İlk üç oyuncuyu al
topThreePlayersElement.innerHTML = '';
topThreePlayers.forEach(player => {
const playerCard = document.createElement('div');
playerCard.className = 'col-md-4';
playerCard.innerHTML = `
<div class="card">
<div class="card-body">
<h5 class="card-title">${player.name}</h5>
<p class="card-text">Score: ${player.score}</p>
</div>
</div>
`;
topThreePlayersElement.appendChild(playerCard);
});
}
} catch (error) {
document.getElementById('server-status-indicator').innerText = 'Sunucu durumu alınamadı.';
console.error('Sunucu durumu alınamadı:', error);
}
}
});
// Modal açıldığında ve kapatıldığında kaydırma çubuğunu koruma
$('#connectModal').on('show.bs.modal', function () {
$('body').css('overflow', 'auto');
});
$('#connectModal').on('hide.bs.modal', function () {
$('body').css('overflow', 'auto');
});
// Buton 2'ye tıklandığında IP adresini ve portu kopyalama
document.getElementById('copyButton')?.addEventListener('click', () => {
const serverInfo = "192.168.1.1:27015"; // Sunucunuzun IP adresi ve portunu buraya ekleyin
navigator.clipboard.writeText(serverInfo).then(() => {
const copyMessage = document.getElementById('copyMessage');
copyMessage.style.display = 'block'; // Kopyalandı mesajını göster
setTimeout(() => {
copyMessage.style.display = 'none'; // 3 saniye sonra mesajı gizle
}, 3000);
}).catch(err => {
console.error('Kopyalama başarısız:', err);
});
});Editor is loading...
Leave a Comment