function RefreshNowPlaying() { var req = new XMLHttpRequest(); req.onreadystatechange = function () { if (this.readyState != 4 || this.status != 200) return; document.getElementById('nowplaying_content').innerHTML=this.responseText; }; req.open("GET", "ajax/trackinfo.php", true); req.send(); } function RefreshTitle() { var req = new XMLHttpRequest(); req.onreadystatechange = function () { if (this.readyState != 4 || this.status != 200) return; document.title='MPD Player: '+this.responseText; }; req.open("GET", "ajax/trackname.php", true); req.send(); } function RefreshPlayerState() { var req = new XMLHttpRequest(); req.onreadystatechange = function () { if (this.readyState != 4 || this.status != 200) return; if (this.responseText=="play") { document.getElementById('playpausebutton').innerHTML=""; } else { document.getElementById('playpausebutton').innerHTML=""; } }; req.open("GET", "ajax/playerstate.php", true); req.send(); } function RefreshRepeatState() { var req = new XMLHttpRequest(); req.onreadystatechange = function () { if (this.readyState != 4 || this.status != 200) return; if (this.responseText=="1") { document.getElementById('repeatstate').innerHTML=""; } else { document.getElementById('repeatstate').innerHTML=""; } }; req.open("GET", "ajax/repeatstate.php", true); req.send(); } function RefreshVolume() { var req = new XMLHttpRequest(); req.onreadystatechange = function () { if (this.readyState != 4 || this.status != 200) return; document.getElementById('volume_total').innerHTML="
"; }; req.open("GET", "ajax/volume.php", true); req.send(); } function RefreshPageStatus() { RefreshTitle(); RefreshNowPlaying(); RefreshPlayerState(); RefreshRepeatState(); RefreshVolume(); } function RefreshPlaylist() { var req = new XMLHttpRequest(); req.onreadystatechange = function () { if (this.readyState != 4 || this.status != 200) return; document.getElementById('playlist').innerHTML=this.responseText; }; req.open("GET", "ajax/playlist.php", true); req.send(); } function EditPlayList(dir) { var req = new XMLHttpRequest(); req.onreadystatechange = function () { if (this.readyState != 4 || this.status != 200) return; document.getElementById('playlist').innerHTML=this.responseText; }; if (!dir) { dir = ''; }; req.open("GET", "ajax/editplaylist.php?dir="+dir, true); req.send(); } function LoadPlayList() { var req = new XMLHttpRequest(); req.onreadystatechange = function () { if (this.readyState != 4 || this.status != 200) return; document.getElementById('playlist').innerHTML=this.responseText; }; req.open("GET", "ajax/playlists.php", true); req.send(); } function RefreshPageContent() { RefreshPageStatus(); RefreshPlaylist(); } function Command(cmd) { var req = new XMLHttpRequest(); req.onreadystatechange = function () { if (this.readyState != 4 || this.status != 200) return; RefreshPageStatus(); }; req.open("GET", "ajax/command.php?task="+cmd, true); req.send(); } function PlaylistCommand(cmd,item) { var req = new XMLHttpRequest(); req.onreadystatechange = function () { if (this.readyState != 4 || this.status != 200) return; RefreshPageContent(); }; req.open("GET", "ajax/playlist-command.php?item="+item+"&task="+cmd, true); req.send(); } function PlaylistCommandRefStatus(cmd,item) { var req = new XMLHttpRequest(); req.onreadystatechange = function () { if (this.readyState != 4 || this.status != 200) return; RefreshPageStatus(); }; req.open("GET", "ajax/playlist-command.php?item="+item+"&task="+cmd, true); req.send(); } function PlaylistEditCommand(cmd,item) { var req = new XMLHttpRequest(); req.onreadystatechange = function () { if (this.readyState != 4 || this.status != 200) return; RefreshPageStatus(); }; req.open("GET", "ajax/playlist-command.php?item="+item+"&task="+cmd, true); req.send(); } function PlaylistEditCommandRefFull(cmd,item) { var req = new XMLHttpRequest(); req.onreadystatechange = function () { if (this.readyState != 4 || this.status != 200) return; RefreshPageContent(); }; req.open("GET", "ajax/playlist-command.php?item="+item+"&task="+cmd, true); req.send(); } function PlaylistItemsCommand(cmd) { var req = new XMLHttpRequest(); var selected = [].filter.call(document.getElementsByName('itemlist[]'), function(c) { return c.checked; }).map(function(c) { return c.value; }); req.onreadystatechange = function () { if (this.readyState != 4 || this.status != 200) return; RefreshPageContent(); }; params=selected.map(function(el) { //Map each field into a name=value string, make sure to properly escape! return 'itemlist[]=' + encodeURIComponent(el); }).join('&'); req.open("POST", "ajax/playlist-command.php?task="+cmd, true); req.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); req.send(params); } function PlaylistEditItemsCommand(cmd,dir) { var req = new XMLHttpRequest(); var selected = [].filter.call(document.getElementsByName('itemlist[]'), function(c) { return c.checked; }).map(function(c) { return c.value; }); params=selected.map(function(el) { //Map each field into a name=value string, make sure to properly escape! return 'itemlist[]=' + encodeURIComponent(el); }).join('&'); req.onreadystatechange = function () { if (this.readyState != 4 || this.status != 200) return; RefreshPageStatus(); }; req.open("POST", "ajax/playlist-command.php?dir="+dir+"&task="+cmd, true); req.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); req.send(params); } setInterval(RefreshPageStatus, 10000);