if ($.browser.msie && $.browser.version <= 6){
	DD_belatedPNG.fix('*');
}

eval("try {document.execCommand('BackgroundImageCache', false, true);} catch(e) {}");

/* nastaveni promennych */
var qualityStreamText = new Array("Vyberte<br/>kvalitu", "Úsporná<br />kvalita","Nízká<br />kvalita","Střední<br />kvalita","Vysoká<br />kvalita");
var radioStreams = new Array();
radioStreams["f1"] = ["http://rlcast.lide.cz:80/fm-frekvence1-", "", "", "64", "128"];
radioStreams["romantika"] = ["http://ice-01.lagardere.cz:80/web-f1-romantika", "", "", "", ""];
radioStreams["retroDisco"] = ["http://ice-01.lagardere.cz:80/web-f1-retro", "", "", "", ""];
radioStreams["cs"] = ["http://ice-01.lagardere.cz:80/web-f1-cshity", "", "", "", ""];
radioStreams["legendy"] = ["http://ice-01.lagardere.cz:80/web-f1-legendy", "", "", "", ""];


var lastVol = -800; 			// vychozi hodnota - v intervalu (-4000, -400) - nasobky 400
var defaultStreamQuality = 3;
var selectedStreamQuality = 3;	// 64kbps

var debug = 0;

/* sys vars */
var refreshSongster;
var kindOfRadio;
var volumeStep = 400;
var volumeMin = -4000;
var volumeMax = -400;

var lastsDuration = 0;
var lastmDuration = 0;
var songSDuration = 0;
var songMDuration = 0;
var timeoutSongsterUpdate = 0;
var controlsActivated = false;

var radioPlay = true;
var radioPause = false;
var autostartPlay = true;
var parametrInURL = window.location.search.split("?");
var selectedStream = parametrInURL[1];

if (selectedStream == "selectRadio" || parametrInURL.length < 2){
	autostartPlay = false;
}

function returnRadioName(str) {
	return str.replace("f1", "Frekvence 1").replace("romantika", "F1 Romantika").replace("retroDisco", "F1 Retro Disco").replace("cs", "F1 Československé hity").replace("legendy", "F1 Legendy");
}

function wmpCreate(url) {
	// var autoplay = autostartPlay ? 1 : 0;
	var autoplay = 1;
	var str = "";
	str = '<object width="1" height="1" id="mediaPlayer" classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701" standby="Loading Microsoft Windows Media Player components..." type="application/x-oleobject">';
	str += '	<param name="fileName" value="'+url+'" />';
	str += '	<param name="animationatStart" value="false" />';
	str += '	<param name="transparentatStart" value="false" />';
	str += '	<param name="autoStart" value="' + autoplay + '" />';
	str += '	<embed autoStart="' + autoplay + '" animationatStart="false" transparentStart="true" type="application/x-mplayer2" src="'+url+'" name="mediaPlayer" width="1" height="1" />';
	str += '</object>';
	if (autoplay) { $(".buttonPlay").addClass("buttonPause"); }
	return str;
}

function setRadioStream(streamId, streamQuality) {
	clearTimeout(timeoutSongsterUpdate);
	if (streamId) { selectedStream = kindOfRadio = streamId; }
	$("#player").attr("class",selectedStream);
/*	if ($.browser.msie && $.browser.version <= 6){
//		var tmpPlayerContent = $("#player").html();
//		$(".playerLogo").remove();
//		$(".playerDisplay").before("<h2 class=\"playerLogo\"></h2>");
		$("#player").html(tmpPlayerContent);
		DD_belatedPNG.fix('*');
	}*/
	
	if (streamQuality) {
		selectedStreamQuality = streamQuality;
	} else {
		selectedStreamQuality = defaultStreamQuality;
	}
	$("#player-content").html("");
	var streamUrl = radioStreams[selectedStream][0] + radioStreams[selectedStream][selectedStreamQuality];		// slozeni streamu - url+kvalita
	$("#player-content").html(wmpCreate(streamUrl));															// vytvoreni playeru
	radioPlay = true;

	if (is_WMPskin || is_WMP64) {
		document.getElementById('mediaPlayer').volume = lastVol;
	}
	$(".volumeDisplay").attr("class", "volumeDisplay");
	$(".volumeDisplay").addClass("volume"+(-1*volumeMin+lastVol)/volumeStep);


																												// vypis kvality streamu

	$('.stream').html(radioStreams[selectedStream][selectedStreamQuality]);
	$('.qualityText').html(qualityStreamText[selectedStreamQuality]);

	$(".qualityDown, .qualityUp").removeClass("disabled");

	if (selectedStreamQuality > 1 && radioStreams[selectedStream][selectedStreamQuality-1] == "") {
		$(".qualityDown").addClass("disabled");
	}

	if (!radioStreams[selectedStream][selectedStreamQuality + 1]) {
		$(".qualityUp").addClass("disabled");
	}


	if (selectedStream == "retroDisco") { swfFlashForRetro(); } else { swfFlashNormal(); }
	$(".playerInterprets .time").hide();
	updateSongster();
}


$(document).ready( function() {
	if (selectedStream=="romantika" || selectedStream=="f1" || selectedStream=="cs" || selectedStream=="legendy" || selectedStream=="retroDisco"){
		insertVideoAd(20,50,selectedStream);
		$("#player").attr("class", selectedStream);
	}

	if (!autostartPlay) {
		$(".moreRadios").show(200);
	} else {
		// play banner
		insertVideoAd(20,50);
	}

	/* disable controls if not AX support*/
	if (!is_WMPskin || !is_WMP64) {
		$(".volume").addClass("disabled");
		$(".volumeMute, .volumeMuteText").wrap("<div class=\"disabled\"></div>");
	}


	// zmena streamu radia
	$(".selectNewGeneres .generes").click(function(){
		radioPlay = false;
		$(".buttonPlay").removeClass("buttonPause");
		var newClassForPlayer = $(this).attr("href").substring(1);
		kindOfRadio = $(this).attr("href").substring(1);
		$(".moreRadios").hide(200);
		// play banner
		insertVideoAd(20,50,newClassForPlayer);
		//setRadioStream(newClassForPlayer);
		return false;
	});
	
	// zavreni vyberu radia
	$(".moreRadioClose").click(function(){ $(".moreRadios").hide(200); });

});

function activateControls() {

	if (controlsActivated) return;

	// otevreni vyberu radia
	$(".moreRadiosSelect").click(function(){ $(".moreRadios").show(200); });
	$(".volume .volumeUp").mousedown(function(){ VolumeUpWM(); });
	$(".volume .volumeDown").mousedown(function(){ VolumeDownWM(); });
	$(".buttonPlay").mousedown(function(){
		if (radioPlay){
			StopWM();
			return;
		}
		else {
			PlayWM();
			return;
		}
	});
	$(".qualityDown").mousedown(function(){ StreamDownWM(); });
	$(".qualityUp").mousedown(function(){ StreamUpWM(); });
	$(".volumeMute").mousedown(function(){
		MuteWM();
		if (!radioPause){
			$(this).addClass("volumeMuteActive");
			radioPause = true;
		}
		else{
			$(this).removeClass("volumeMuteActive");
			radioPause = false;
		}
	});
	
	controlsActivated = true;
}

function StreamDownWM() {
	 try {
			if (selectedStreamQuality > 1 && radioStreams[selectedStream][selectedStreamQuality-1] == "") { return; } // jsme na nejnizsi mozne kvalite
		 	selectedStreamQuality--;
		 	setRadioStream(selectedStream, selectedStreamQuality);
		 	$(".qualityUp").removeClass("disabled");
		}
	catch(e) {}
}

function StreamUpWM() {
	 try {
		 	if (!radioStreams[selectedStream][selectedStreamQuality + 1]) { return; } // jsme na nejvyssi mozne kvalite
			selectedStreamQuality++;
		 	setRadioStream(selectedStream, selectedStreamQuality);
		 	$(".qualityDown").removeClass("disabled");
		}
	 catch(e) {}
}

function PlayWM() {
	if (debug) alert("play executed");
	clearInterval(refreshSongster);
	window.clearTimeout(timeoutSongsterUpdate);
	radioPlay = true;
	if (is_WMPskin) {
		try {
			document.getElementById('mediaPlayer').play();
		} catch(e) {
			try {
				 document.getElementById('mediaPlayer').controls.play();
			} catch(e) {}
		}
		updateSongster();
	} else {
		setRadioStream(selectedStream, selectedStreamQuality);
	}
	$(".buttonPlay").addClass("buttonPause");
	$("#analyzer").show();
	$(".analyzerStop").hide();
}

function StopWM() {
	clearInterval(refreshSongster);
	window.clearTimeout(timeoutSongsterUpdate);
	if (debug) alert("stop executed");
	if (is_WMPskin) {
		try {
			document.getElementById('mediaPlayer').stop();
		} catch(e) {
			try {
				 document.getElementById('mediaPlayer').controls.stop();
			} catch(e) {}
		}
	} else {
		$("#player-content").html("");
	}
	radioPlay = false;
	$(".buttonPlay").removeClass("buttonPause");
	$("#analyzer").hide();
	$(".analyzerStop").show();
}

function MuteWM() {
	try {
		document.getElementById('mediaPlayer').mute = !document.getElementById('mediaPlayer').mute;
		document.getElementById('mediaPlayer').volume = lastVol;
	} catch(e) {}
}

function MuteWMClear() {
	if (document.getElementById('mediaPlayer').mute) document.getElementById('mediaPlayer').mute = false;
	$(".volumeMute").removeClass("volumeMuteActive");
	radioPause = false;
}

function VolumeDownWM() {
	if (!is_WMP64 || !is_WMPskin) return;

	if(document.getElementById('mediaPlayer').volume > volumeMin) {

		document.getElementById('mediaPlayer').volume = document.getElementById('mediaPlayer').volume - volumeStep;
		lastVol = document.getElementById('mediaPlayer').volume;

		$(".volumeDisplay").attr("class", "volumeDisplay");
		$(".volumeDisplay").addClass("volume"+(-1*volumeMin+lastVol)/volumeStep);
		MuteWMClear();
	}
}
function VolumeUpWM() {
	if (!is_WMP64 || !is_WMPskin) return;
	if(document.getElementById('mediaPlayer').volume < volumeMax) {
		document.getElementById('mediaPlayer').volume = document.getElementById('mediaPlayer').volume + volumeStep;
		lastVol = document.getElementById('mediaPlayer').volume;

		$(".volumeDisplay").attr("class", "volumeDisplay");
		$(".volumeDisplay").addClass("volume"+(-1*volumeMin+lastVol)/volumeStep);
		MuteWMClear();
	}
}


function BrowserCheckEnh() {
	var o = navigator.userAgent;
	if (o.indexOf("Opera")>=0) { this.b = "Opera"; this.v = o.substring(o.indexOf("Opera")+6, o.indexOf(" ",o.indexOf("Opera")+6)); }
	else if (o.indexOf("MSIE")>=0) { this.b = "IE"; this.v = o.substring(o.indexOf("MSIE")+5, o.indexOf(";",o.indexOf("MSIE")+5)); }
	else if (o.indexOf("Netscape6")>=0) { this.b = "Netscape"; this.v = o.substring(o.indexOf("Netscape")+10, o.length); }
	else if (o.indexOf("Netscape")>=0) { this.b = "Netscape"; this.v = o.substring(o.indexOf("Netscape")+9, o.indexOf(" ",o.indexOf("Netscape")+9)); }
	else if (o.indexOf("Firefox")>=0) { this.b = "Firefox"; this.v = o.substring(o.indexOf("Firefox")+8, o.length); }
	else if (o.indexOf("Gecko")>=0) { this.b = "Mozilla"; this.v = o.substring(o.indexOf("rv:")+3, o.indexOf(")",o.indexOf("rv:")+3)); }
	this.v = (this.v.indexOf(" (") != -1)? this.v.substring(0,this.v.indexOf(" (")) : this.v;
	this.op = (this.b=="Opera" && this.v>=5);
	this.ns = (this.b=="Netscape" && this.v>=4);
	this.ns4 = (this.b=="Netscape" && parseInt(this.v)==4);
	this.ns6 = (this.b=="Netscape" && parseInt(this.v)==6);
	this.ns7 = (this.b=="Netscape" && parseInt(this.v)==7);
	this.ff = (this.b=="Firefox");
	this.mo = (this.b=="Mozilla" && parseInt(this.v)>=1);
	this.ie = (this.b=="IE" && this.v>=4);
	this.ie4 = (this.b=="IE" && parseInt(this.v)==4);
	this.ie5 = (this.b=="IE" && parseInt(this.v)==5);
	this.ie6 = (this.b=="IE" && parseInt(this.v)==6);
	this.min = (this.op||this.ns||this.mo||this.ie);
}

var isbr = new BrowserCheckEnh();

// Detection WMP and ActiveX
var is_WMP64 = false;
var is_WMP7up = false;
var is_WMPPlugin = false;
var is_WMPskin = false;

if (isbr.ie) {
	if (window.ActiveXObject) {
		try { var mp = new ActiveXObject("MediaPlayer.MediaPlayer.1"); is_WMP64 = true; }
		catch(e) { }
		try { mp = new ActiveXObject("WMPlayer.OCX"); is_WMP7up = true; is_WMPskin = true; }
		catch(objError) { }
	}
} else {
	// detect WMP64
	var plugin = (navigator.mimeTypes && navigator.mimeTypes["application/x-mplayer2"])? navigator.mimeTypes["application/x-mplayer2"].enabledPlugin : false;
	if (plugin) { is_WMP64 = true; }

	// detect FF + Op WMP Plugin
	var plugin = (navigator.mimeTypes && navigator.mimeTypes["application/x-ms-wmp"])? navigator.mimeTypes["application/x-ms-wmp"].enabledPlugin : false;
	if (plugin) { is_WMPPlugin = true; }

	// detect ActiveX
	plugin = (navigator.mimeTypes && navigator.mimeTypes["application/x-oleobject"])? navigator.mimeTypes["application/x-oleobject"].enabledPlugin : false;
	if (plugin) { is_WMPskin = true; }
}

function getXAjaxResult() {
	bObj.removeScriptTag(); 
}

/* Songster AJAX request */
function updateSongster() {
	/* Stop refresh interval */
	clearInterval(refreshSongster);
	clearTimeout(timeoutSongsterUpdate);
	var xmlhttp=false;

	/* Make reguest */
	var rDate = new Date();
	
	$(".playerInterprets .cover").html('<img src="/img/u/default-cover.gif" width="40" height="40" class="fl mr" alt="" />');
	
	$.ajax({
		url: "/cs/songster-"+selectedStream+".xml?"+rDate.getTime(),
		processData: true,
		dataType: "html",
		success: function(xmlhttp){
			/* Parse data if respence recieved */
			if (xmlhttp!="") {
				// Get Songster data
				var sTitle = null;
				var sAuthor = null;
				var sSduration = null;
				var sMduration = null;
				var sAddsduration = null;
				var sAddmduration = null;
				var sCover = null;
				var songsterData = xmlhttp;
				
				/* Parse response data into variables */
				sTitle = parseSongster(songsterData,"songTitle");
				sAuthor = parseSongster(songsterData,"songArtist");
				aTime = parseSongster(songsterData,"timeGenerated");
				sStart = parseSongster(songsterData,"songStart");
				sDuration = parseSongster(songsterData,"songDuration");
				
				/*sSduration = parseSongster(songsterData,"sduration");
				sMduration = parseSongster(songsterData,"mduration");
				sAddsduration = parseSongster(songsterData,"addsduration");
				sAddmduration = parseSongster(songsterData,"addmduration");*/
				sCover = parseSongster(songsterData,"cover");
				
				if (sTitle != null && sAuthor != null) {

					/* Set time evaluation */
					if (radioPlay){
					
						var startTime = sStart.substring(sStart.indexOf("T")+1, sStart.indexOf("+"));
						var sM = parseInt(startTime.substring(startTime.indexOf(":")+1, startTime.lastIndexOf(":")));
						var sS = parseInt(startTime.substring(startTime.lastIndexOf(":")+1, startTime.length));
						
						var actualTime = aTime.substring(aTime.indexOf("T")+1, aTime.indexOf("+"));
						var aM = parseInt(actualTime.substring(startTime.indexOf(":")+1, startTime.lastIndexOf(":")));
						var aS = parseInt(actualTime.substring(startTime.lastIndexOf(":")+1, startTime.length));
						
						var odehrano = 0;
						
						if ((sM*60+sS) > (aM*60+aS)) odehrano = 3600-(sM*60+sS) + (aM*60+aS);
						else odehrano =(aM*60+aS) - (sM*60+sS);
						
						lastsDuration = Math.floor(odehrano%60);
						lastmDuration = Math.floor(odehrano/60);
						songSDuration = Math.floor(sDuration%60);
						songMDuration = Math.floor(sDuration/60);
						
						if (parseInt(songMDuration)>=lastmDuration || (parseInt(songMDuration)==lastmDuration && parseInt(songSDuration)>lastsDuration)){
							if (lastsDuration < 10) {
								$('.playerInterprets .time').text("("+lastmDuration+":0"+lastsDuration+")");
							} else {
								$('.playerInterprets .time').text("("+lastmDuration+":"+lastsDuration+")");
							}
							$(".playerInterprets .time").show();
						}
						
					}
					$(".playerInterprets .song").text(sTitle);
					$(".playerInterprets .name").text(sAuthor);
					//$(".playerInterprets .cover").html('<img src="http://songster.rmc.fg.cz/img/u/'+sCover+'.jpg"width="40" height="40" class="fl mr" alt="" />');
				} else {
					$(".playerInterprets .song").text(returnRadioName(selectedStream));
					$(".playerInterprets .name").text("");
					$(".playerInterprets .time").html("").hide();
					
				}

				/* Set timers */
				if (radioPlay){
					refreshSongster = setInterval("countDown()", 1000);
				}
				timeoutSongsterUpdate = setTimeout("updateSongster()",15000);
			
				if (sCover=="" || sCover == null){
					$(".playerInterprets .cover").html('<img src="/img/u/default-cover.gif" width="40" height="40" class="fl mr" alt="" />');
				}
				else{
					$(".playerInterprets .cover").html('<img src="http://songster.rmc.fg.cz/img/u/'+sCover+'.jpg" width="40" height="40" class="fl mr" alt="" />');
				}
			} else {
				$(".playerInterprets .song").text(returnRadioName(selectedStream));
				$(".playerInterprets .name").text("");
			}
		}
	});
}

/* Parse songster response */
function parseSongster(sSongster,sTag) {
	var regexp = eval("/<"+sTag+">(.+?)<\\/"+sTag+">/");
	if (sSongster.search(regexp) > -1) {
		return sSongster.match(regexp)[1];
	}
	return null;
}

/* Timer */
function countDown() {
	$(".playerInterprets .time").show();
	lastsDuration++;
	if (parseInt(songMDuration)<lastmDuration || (parseInt(songMDuration)==lastmDuration && parseInt(songSDuration)<=lastsDuration)){
		clearInterval(refreshSongster);
		return;
	}
	if (lastsDuration > 59) {
		lastsDuration = 0;
		lastmDuration = Math.floor(lastmDuration) + 1;
	}
	if (lastsDuration < 10) {
		$('.playerInterprets .time').text("("+lastmDuration+":0"+lastsDuration+")");
	} else {
		$('.playerInterprets .time').text("("+lastmDuration+":"+lastsDuration+")");
	}
}

var flashvars = {
};
var params = {
	wmode: "transparent"
};
var attributes = {
};
//swfFlashNormal();
function swfFlashForRetro(){
	swfobject.embedSWF("/swf/u/webradia/analyzer2.swf", "analyzer", "78", "44", "9.0.0", null, flashvars, params, attributes);
}
function swfFlashNormal(){
	swfobject.embedSWF("/swf/u/webradia/analyzer1.swf", "analyzer", "78", "44", "9.0.0", null, flashvars, params, attributes);
}
function supportedBrowser() {
  try {
	var strVersion = $.browser.version;
	var index = strVersion.indexOf(".");
	if (index > -1) {
	  var index2 = strVersion.indexOf(".", index + 1);
	  if (index2 == -1) index2 = strVersion.length;
	  strVersion = strVersion.substr(0, index2);
	}

	var version = parseFloat(strVersion);

	if ($.browser.msie && version >= 6) return true;
	if ($.browser.mozilla && version >= 1.5) return true;
	if ($.browser.opera && version >= 9) return true;
	if ($.browser.safari) return true;
  } catch (err) {
	return false;
  }
}
$(window).load(function(){
	//$("#analyzer").hide();
});
