﻿// JScript File

function playTrack(trackId, jukeboxUrl)
{
        openJukeboxWindowIfRequired(jukeboxUrl);
        setCookie('JukeboxCookiePlayTrack', trackId, '/');
}

function queueTrack(trackId, jukeboxUrl)
{
    openJukeboxWindowIfRequired(jukeboxUrl);
    setCookie('JukeboxCookieQueueTrack', trackId, '/');
}

function playPlaylistById(playlistId, jukeboxUrl)
{
    openJukeboxWindowIfRequired(jukeboxUrl);
    setCookie('JukeboxCookiePlayPlaylist', '__________Playlist' + playlistId, '/');
}

function playPlaylistByUsername(username, jukeboxUrl)
{
    openJukeboxWindowIfRequired(jukeboxUrl);
    setCookie('JukeboxCookiePlayPlaylist', username, '/');
}

function playPlaylistByUsernameAndId(playlist, jukeboxUrl)
{
    openJukeboxWindowIfRequired(jukeboxUrl);
    setCookie('JukeboxCookiePlayPlaylistId', playlist, '/');
}

function queuePlaylistById(playlistId, jukeboxUrl)
{
    openJukeboxWindowIfRequired(jukeboxUrl);
    setCookie('JukeboxCookieQueuePlaylist', '__________Playlist' + playlistId, '/');
}

function queuePlaylistByUsername(username, jukeboxUrl)
{
    openJukeboxWindowIfRequired(jukeboxUrl);
    setCookie('JukeboxCookieQueuePlaylist', username, '/');
}

function queuePlaylistByUsernameAndId(playlist, jukeboxUrl)
{
    openJukeboxWindowIfRequired(jukeboxUrl);
    setCookie('JukeboxCookieQueuePlaylistId', playlist, '/');
}

function jukeboxAuthenticateUser(userId)
{
    setCookie('JukeboxCookieAuthenticateUser', userId, '/');
}

function jukeboxLogout()
{
    deleteCookie('JukeboxCookieAuthenticateUser', '/');
}

function openJukeboxWindowIfRequired(jukeboxUrl)
{
    try {
    var reloadJukebox= true;
    var now = new Date();
    var millisecond = now.getSeconds() * 1000 + now.getMilliseconds();
    var jukeboxCookieCurrentTick= getCookie("JukeboxCookieCurrentTick");
    if (jukeboxCookieCurrentTick)
    {
        var diff= millisecond- jukeboxCookieCurrentTick;
        if (diff<0) diff+= 60000;
        if (diff<1500) reloadJukebox= false;
        //alert('diff ' + diff);
    }

    if (reloadJukebox)
    {
        openJukeboxWindow(jukeboxUrl);
    }
/*
   var jukeboxCookieOpen= getCookie("JukeboxCookieOpen");
    if (jukeboxCookieOpen==null)
    {
        openJukeboxWindow(jukeboxUrl);
    } 
    */
   }
   catch (err)
   {
        
   }
}

function openJukeboxWindow(jukeboxUrl)
{
    var mywin = window.open('', 'Jukebox', 'width=380,height=460');
    if((typeof mywin) == "undefined")
    {
        window.open(jukeboxUrl, 'Jukebox', 'width=380,height=460');
    }else if((typeof mywin.location) == "undefined")
    {
        mywin.location.href=jukeboxUrl;
    }else {
		var hln = jukeboxUrl.length;
		var oln = mywin.location.href.length;
		var hstr = mywin.location.href.substring(oln-hln,oln);
		if(hstr!=jukeboxUrl)
		{
			mywin.location.href=jukeboxUrl;
		}
	}
}

function openJukeboxRadioWindow(jukeboxUrl)
{
    window.open(jukeboxUrl, 'Jukebox', 'width=380,height=110');
}

function jukeboxTick()
{
    var now = new Date();
    var millisecond = now.getSeconds() * 1000 + now.getMilliseconds();
    setCookie('JukeboxCookieCurrentTick', millisecond, '/');
}


function updatePage() {    
	var external=[], L, a, tem,i;
    if(document.getElementsByClassName){
        a= document.getElementsByClassName('nowplaying_entry');
        L= a.length;
        while(L) external.push(a[--L]);
    }
    else{
        a= document.getElementsByTagName("td");
        L= a.length;
        while(L){
            tem= a[--L];
            if(tem.className.indexOf("nowplaying_entry")!=-1) external.push(tem);
        }
    }
    i=0;
    while(external.length){
        tem= external.pop();
        tem.innerHTML = unearthed_recent[i];
        i++;
        }
    }
		
		function showPlayer() {
			launch_url = "http://abc.net.au/triplej/player/unearthed.htm";
			eval("drPlayer = window.open(launch_url, 'drPlayer', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=600,height=350');");
		}
