36276-vm/assets/js/main.js
2025-11-25 15:11:21 +00:00

37 lines
1.8 KiB
JavaScript

document.addEventListener('DOMContentLoaded', function() {
console.log('Twitch Dashboard Ready');
const searchBar = document.getElementById('search-bar');
if (searchBar) {
searchBar.addEventListener('keyup', function(e) {
const term = e.target.value.toLowerCase();
// Filter Top Games
const gameCards = document.querySelectorAll('.game-card');
gameCards.forEach(card => {
const title = card.querySelector('.card-title').textContent.toLowerCase();
const tags = Array.from(card.querySelectorAll('.badge-genre')).map(tag => tag.textContent.toLowerCase());
if (title.includes(term) || tags.some(tag => tag.includes(term))) {
card.parentElement.style.display = '';
} else {
card.parentElement.style.display = 'none';
}
});
// Filter Live Channels
const channelCards = document.querySelectorAll('.channel-card');
channelCards.forEach(card => {
const name = card.querySelector('.card-title').textContent.toLowerCase();
const game = card.querySelector('.card-text.small').textContent.toLowerCase();
const title = card.querySelector('.card-text.text-white-50').textContent.toLowerCase();
const tags = Array.from(card.querySelectorAll('.badge-genre')).map(tag => tag.textContent.toLowerCase());
if (name.includes(term) || game.includes(term) || title.includes(term) || tags.some(tag => tag.includes(term))) {
card.parentElement.style.display = '';
} else {
card.parentElement.style.display = 'none';
}
});
});
}
});