var debug = true;
var debug_xhr_count = 0;

function sendPlayer()
{
    var email = $('targetemail').value;
    var pattern=/^([a-zA-Z0-9_.-])+@([a-zA-Z0-9_.-])+\.([a-zA-Z])+([a-zA-Z])+/;

    if(pattern.test(email))
    {
        $('sendplayerstatus').update('Odesílám');
        new Ajax.Request('/ajax.php', {
            parameters: { module: 'sendstation', email: $('targetemail').getValue(), stations_id: $('stations_id_to_send').getValue() },
            onSuccess: function(transport) {
                if( transport.responseText == 'fail')
                    $('sendplayerstatus').update('Nezdařilo se. Je správně adresa?');
                else
                {
                    $('sendplayerstatus').update('<span style="font-weight:bold;color:red;">Odesláno.</span>');
                    setTimeout('afterSending()', 1000);
                }
            }
        });
    }
    else
    {
        $('sendplayerstatus').update('<span style="font-weight:bold;color:red;">Neplatná emailová adresa</span>');
    }
}

function afterSending()
{

    $('sendplayerstatus').update('');
    toggleblock('sendplayer');
    $('targetemail').value = '@';

}

var track_lastchange = false;
var track_id = false;

function checkCurrentTrack(stations_id, popup)
{
    if( popup )
        var ct_url = '/data/ct/' + stations_id + '-popup.json';
    else
        var ct_url = '/data/ct/' + stations_id + '.json';

//alert(ct_url);
    var rand_no = Math.random();
    rand_no = rand_no * 100;

    new Ajax.Request(ct_url, {
        method: 'get',
        parameters: {
            stations_id: stations_id,
            popup: popup,
            rand: rand_no
        },
        onCreate: function()
        {
            if( $('statusbar') ) {

  //              debug_xhr_count++;
  //              $('statusbar').update("Počet requestů na server: " + debug_xhr_count);
            }
        },
        onSuccess: function(transport) {
//            alert(transport.responseText);
                var response = transport.responseText.evalJSON();
                if( track_lastchange != response.lastchange )
                {
                    track_lastchange = response.lastchange;
                    $('tracksinfo').update(response.html);
//                    alert(response.html_current);
                    $('currentartist').update(response.html_current);
                    makeLinksPopup();
                }
            }
//        onFailure: function(transport) {
//            $('tracksinfo').update('<div class="playererror">Nebylo možné načíst aktuální skladbu.<br />Prosím ověřte, jestli je Vaše připojení k Internetu v pořádku.</div>')
//        }
    });
}

function iAmListening( stations_id )
{
    new Ajax.Request('/ajax.php', {
        method: 'get',
        parameters: {
            module: 'iamlistening',
            stations_id: stations_id},
        onSuccess: function(transport) {

//             alert(transport.responseText);
            }
    });
}

function initPlayer( stations_id, refreshinterval )
{
    if( !refreshinterval )
        refreshinterval = 30000;

    checkCurrentTrack(stations_id, false);
    setInterval('checkCurrentTrack( ' + stations_id + ', false)', refreshinterval);
}

function initPopupPlayer( stations_id, refreshinterval )
{
    if( !refreshinterval )
        refreshinterval = 30000;
    
    checkCurrentTrack(stations_id, true);
    setInterval('checkCurrentTrack( ' + stations_id + ', true )', refreshinterval);
}

function changeBitrate( stations_id, stations_streams_id )
{
    //http://static.abradio.cz
    location.href = '/player/' + stations_id + '/' + stations_streams_id + '/';
//    new Ajax.Updater('playerplugin', '/ajax.php', {
//        method: 'get',
//        parameters: {
//            module: 'getEmbedPlayer',
//            stations_id: stations_id,
//            stations_streams_id: stations_streams_id}
//    })
//    location.href='/player/?stations_id=' + stations_id + '&bitrate=' + bitrate ;
}

function makeLinksPopup()
{
    $$('a[href!=""]').each(function(link){
            link.writeAttribute('target','_blank');
    });
}

function GetInnerSize () {
	var x,y;
	if (self.innerHeight) // all except Explorer
	{
		x = self.innerWidth;
		y = self.innerHeight;
	}
	else if (document.documentElement && document.documentElement.clientHeight)
		// Explorer 6 Strict Mode
	{
		x = document.documentElement.clientWidth;
		y = document.documentElement.clientHeight;
	}
	else if (document.body) // other Explorers
	{
		x = document.body.clientWidth;
		y = document.body.clientHeight;
	}
	return [x,y];
}

function ResizeToInner (w, h, x, y) {

	if (x==undefined) x = window.screenLeft || window.screenX;
	if (y==undefined) y = window.screenTop || window.screenY;

	window.moveTo(0,0);
	window.resizeTo(screen.availWidth,screen.availHeight);


	var inner = GetInnerSize();
	var ox = screen.availWidth-inner[0];
	var oy = screen.availHeight-inner[1];

	window.resizeTo(w+ox, h+oy);
	//window.moveTo(x,y);
}