Musicsitetest / script.js
riddhiman's picture
Create script.js
86cc9a8 verified
raw
history blame
1.42 kB
let audio = new Audio();
let currentPlaying = '';
document.getElementById('toggle-play').addEventListener('click', function() {
if (audio.paused) {
audio.play();
this.textContent = 'Pause';
} else {
audio.pause();
this.textContent = 'Play';
}
});
function playMusic(filename) {
if (currentPlaying !== filename) {
audio.src = `/music/${filename}`;
currentPlaying = filename;
}
audio.play();
document.getElementById('toggle-play').textContent = 'Pause';
}
function fetchMusicList(query = '') {
document.getElementById('loading').style.display = 'block';
fetch('/music-list')
.then(response => response.json())
.then(files => {
const filteredFiles = files.filter(file => file.includes(query));
const musicListEl = document.getElementById('music-list');
musicListEl.innerHTML = '';
filteredFiles.forEach(file => {
const div = document.createElement('div');
div.textContent = file;
div.onclick = () => playMusic(file);
musicListEl.appendChild(div);
});
document.getElementById('loading').style.display = 'none';
});
}
// Search feature
document.getElementById('search').addEventListener('input', function() {
fetchMusicList(this.value);
});
// Initial fetch
fetchMusicList();