var vol_minimo = 0;
var vol_maximo = 100;

var playerBackElement;
var playerMiniElement;
var flashElement;

var urlPlayerMini = "";
var urlPlayerBack = "";

var flagPrimeraLlamadaAudio = true;

ie4_b = (document.all)?1:0;
ns4_b = (document.layers)?1:0;

////////// INICIO FUNCIONES NAVEGADOR ////////////////
function checkBrowser(){
  this.ver=navigator.appVersion 
  this.dom=document.getElementById?1:0 
  this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom)?1:0; 
  this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom)?1:0; 
  this.ie4=(document.all && !this.dom)?1:0; 
  this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
  this.ns4=(document.layers && !this.dom)?1:0; 
  this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns5) 
  return this 
} 


$(document).ready(function(){
  objPie = document.getElementById("pie");
  if (objPie != null){
    posPie = getAbsoluteElementPositionOld(objPie);
    var audioLayer = myGetElementByID("audio");
    //audioLayer.style.top = posPie.top+40+"px";
    audioLayer.style.bottom = "-20px";
    audioLayer.style.left = posPie.left+700+"px";
  }
});


var bw = checkBrowser();

function checkAX()
{
	try{
		if (window.ActiveXObject)
		{
			obj = new ActiveXObject("WMPlayer.OCX");
			return true;
		}
		else if (window.GeckoActiveXObject)
		{
			obj = new GeckoActiveXObject("WMPlayer.OCX");
			return true;
		}
		else return false;
	}
	catch(e) { return false; }
}

var hasActX = checkAX();


function set_navegador(){
	//objFlash = getCarcasaObj();
	if (navigator.appName && navigator.appName.indexOf("Microsoft") != -1 && navigator.userAgent.indexOf("Windows") != -1 && navigator.userAgent.indexOf("Windows 3.1") == -1 && navigator.userAgent.indexOf("Opera") < 0){
		nav = "iexplorer";
	}else if(navigator.userAgent.indexOf("Opera") != -1){
		nav = "opera";
	}else if(navigator.appName.indexOf("Netscape") != -1 || navigator.userAgent.indexOf("Mozilla") != -1){
		nav = "netscape";
	}else{
		nav = "default";
	}
	
	return nav;
}
var navegadorStr = set_navegador();
var setNavegadorFlashVar="main.navegador";
var player_mini_ready = (navegadorStr == "iexplorer");
function setFlashBrowser(idFlash){
	
	
	
	if(navegadorStr!="iexplorer"){
		var valor = false;
	} else {
		var valor = true;
	}
	
	var funcFlash = "";
	
	if((idFlash=="home")||(idFlash=="ticker")||(idFlash=="flash_programas")){
			funcFlash = "_level0.main.audioControl.setNavegadorValue";
	} else {
			funcFlash = "_level0.main.setNavegadorValue";
	}
	setVariableFlash(idFlash, funcFlash, valor);

/*
	if (idFlash == "audioLayer")
	{
		player_mini_ready = true;
		if (datosAudio)
			setVariableFlash("audioLayer", openPlayerLayerFlashVar, datosAudio);
	}
*/

}


function pingFSCommand(){
	//objFlash = getCarcasaObj();
	//objFlash.SetVariable("main.ping", "fscommand");
}

function myGetElementByID(id){
	return (bw.dom?document.getElementById(id):bw.ie4?document.all[id]:bw.ns4?document[id]:0); 
}
////////// FIN  FUNCIONES NAVEGADOR ////////////////

function setVariableFlash(idFlash, variable, valor){
    
	if(navegadorStr!="iexplorer"){        
		var flashElement = document[idFlash];
    } else {
        var flashElement = document.getElementById(idFlash);
    }
	/*
	if (playerActivo == "flash_programas")
		flashElement = document.flash_programas;*/
	
	flashElement.SetVariable(variable, valor);
}
	
function changeVolumenMini(porcentaje) {
	if(playerMiniElement){
		if(playerMiniElement.settings){
			vol_act_mini = vol_maximo * porcentaje;
			if (vol_act_mini < vol_minimo) 
				playerMiniElement.settings.volume = vol_minimo;
			else
				playerMiniElement.settings.volume = vol_act_mini;
		}
	}
}

var openPlayerLayerFlashVar="_level0.main.showPlayerLayer";
var resetPlayerFlashVar = "_level0.main.resetPlayer";
var playerActivo = "";
var datosAudio = false;

function openPlayerLlevatelo(player, id, hrefAudio, timeAudio, xref){
	player_especial = (playerActivo=="home")||(playerActivo=="ticker")||(playerActivo=="flash_programas");

	if(playerActivo != player) {
		// Stop del previo

		if(player_especial) {
			setVariableFlash(playerActivo, resetPlayerFlashVar, "ok");
		}
		else if (playerActivo != ''){
			Pr_Player_Mini("Stop");
		}

		// PLAY
		playerActivo = player;
		
		datosAudio = Array();
		datosAudio.push(true);
		datosAudio.push(hrefAudio);
		datosAudio.push(timeAudio);
		datosAudio.push(id);
		datosAudio.push(xref);

		// hacemos que ahora suene el nuevo
		if (player_mini_ready)
			setVariableFlash("audioLayer", openPlayerLayerFlashVar, datosAudio);
		
	} else {
		
		Pr_Player_Mini("Stop");
		setVariableFlash("audioLayer", openPlayerLayerFlashVar, false);
		playerActivo = "";
		datosAudio = false;
		
	}
		
}


function configuraFlashFraseRetardo(id, hrefAudio, timeAudio, xref, tipo) {
	datosAudio = Array();
	datosAudio.push(true);
	datosAudio.push(hrefAudio);
	datosAudio.push(timeAudio);
	datosAudio.push(id);
	datosAudio.push(xref);
	datosAudio.push(tipo);

	// hacemos que ahora suene el nuevo
	setVariableFlash("audioLayer", openPlayerLayerFlashVar, datosAudio);
}



//función para los audios de las frases de los lectores
function openPodCastPlayerFrase(player, id, hrefAudio, timeAudio, xref, tipo){
	
		
	if(tipo == null) {
		openPodCastPlayer(player, id, hrefAudio, timeAudio, xref);
	} else {
		//if(navegadorStr=="iexplorer"){
		setFlashBrowser("audioLayer");
		//}
	
		
		
		
		
		player_especial = (playerActivo=="home")||(playerActivo=="ticker");//||(playerActivo=="flash_programas");
		if(playerActivo != player) {			
			if((player_especial) ||(playerActivo=="flash_programas")) {
					
				setVariableFlash(playerActivo, resetPlayerFlashVar, "ok");
			}	else if (playerActivo != ''){
				
				Pr_Player_Mini("Stop");
				showPlayerLayer(playerActivo, false);
			}

			// PLAY
			playerActivo = player;
			showPlayerLayer(playerActivo, true);
			
			
			if ((navegadorStr!="iexplorer") && (flagPrimeraLlamadaAudio==true)  && (player_especial==false)) {
				
				ID=window.setTimeout('configuraFlashFraseRetardo("'+id+'", "'+hrefAudio+'", "'+timeAudio+'", "'+xref+'", "'+tipo+'")',125);
				flagPrimeraLlamadaAudio = false;
			} else {
				
				//ID=window.setTimeout('configuraFlashFraseRetardo("'+id+'", "'+hrefAudio+'", "'+timeAudio+'", "'+xref+'", "'+tipo+'")',125);
				configuraFlashFraseRetardo(id,hrefAudio,timeAudio,xref,tipo);
			}
		} else {
			
			Pr_Player_Mini("Stop");
			
			showPlayerLayer(playerActivo, false);
			
			datosAudio = Array();
			datosAudio.push(false);
			setVariableFlash("audioLayer", openPlayerLayerFlashVar, datosAudio);
			
			playerActivo = "";
		}
	}
}

function configuraFlashRetardo(id,hrefAudio,timeAudio,xref) {
	datosAudio = Array();
	datosAudio.push(true);
	datosAudio.push(hrefAudio);
	datosAudio.push(timeAudio);
	datosAudio.push(id);
	datosAudio.push(xref);

	// hacemos que ahora suene el nuevo
	setVariableFlash("audioLayer", openPlayerLayerFlashVar, datosAudio);
}
		
// Solo es llamada por los mini players
function openPodCastPlayer(player, id, hrefAudio, timeAudio, xref){
	
	
	
	
	//if(navegadorStr=="iexplorer"){
				setFlashBrowser("audioLayer");
	//}

	player_especial = (playerActivo=="home")||(playerActivo=="ticker")||(playerActivo=="flash_programas");

	if(playerActivo != player) {

		// Stop del previo

		if(player_especial) {
			setVariableFlash(playerActivo, resetPlayerFlashVar, "ok");
		}	else if (playerActivo != ''){
			Pr_Player_Mini("Stop");
  			showPlayerLayer(playerActivo, false);
		}

		// PLAY
		playerActivo = player;
		showPlayerLayer(playerActivo, true);

		if ((navegadorStr!="iexplorer") && (flagPrimeraLlamadaAudio==true) && (player_especial==false)) {
			ID=window.setTimeout('configuraFlashRetardo("'+id+'", "'+hrefAudio+'", "'+timeAudio+'", "'+xref+'")',125);
			flagPrimeraLlamadaAudio = false;
		} else
			configuraFlashRetardo(id,hrefAudio,timeAudio,xref);

	} else {
		Pr_Player_Mini("Stop");
		showPlayerLayer(playerActivo, false);
		datosAudio = Array();
    datosAudio.push(false);
		setVariableFlash("audioLayer", openPlayerLayerFlashVar, datosAudio);
		playerActivo = "";
	
	
	}
	
	

	
}

function showPlayerLayer(layerId, action){
	
	
	
	var newPlayerLayer = myGetElementByID(layerId);
	var audioLayer=myGetElementByID("audio");

	var offsetTop = 0;
	
	if (navegadorStr == "iexplorer") 
		offsetTop = -8;
	else
		offsetTop = 2;
		
	if(action){
		var tempObj = getAbsoluteElementPosition(newPlayerLayer);
		audioLayer.style.top = tempObj.top+offsetTop+"px";
		audioLayer.style.left = tempObj.left+20+"px";
		audioLayer.style.visibility = "visible";
		audioLayer.style.zIndex = 55;
	} else {
		audioLayer.style.visibility = "hidden";
		audioLayer.style.top = 0+"px";
		audioLayer.style.left = 0+"px";
		audioLayer.style.zIndex = 0;
	}
}

function getAbsoluteElementPosition (obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return {top:curtop,left:curleft};

}

function getAbsoluteElementPositionOld(element) {
  
  var y = 0;
  var x = 0;
  while (element.offsetParent) {
    x += element.offsetLeft;
    y += element.offsetTop;
    element = element.offsetParent;
  }
  return {top:y,left:x};
}

// Esta afunciones llamada por el player "ticker" o "home" cuando entran
// Es "equivalente" al openPodcastPlayer de los mini players
function hidePlayersAll(player)
{
	
	
	
	
	player_especial = (playerActivo=="home")||(playerActivo=="ticker")||(playerActivo=="flash_programas");
	
	if (player_especial){
			if((playerActivo!=player) && (playerActivo!="")){
				
				setVariableFlash(playerActivo, resetPlayerFlashVar, "ok");
   		
			}
	 	
	 } else	{
			showPlayerLayer(playerActivo, false);
			Pr_Player_Mini("Stop");
   }
	playerActivo=player;
	
}

function hidePlayerIfOver(obj)
{
	player = document.getElementById('audio');
	if (player && player.style.visibility == 'visible') 
	{
		obj_dims = getAbsoluteElementPosition(obj);
		pl_dims = getAbsoluteElementPosition(player);
		if (pl_dims.top >= obj_dims.top && pl_dims.top < obj_dims.top+obj.offsetHeight &&
		    pl_dims.left >= obj_dims.left && pl_dims.left < obj_dims.left+obj.offsetWidth)
		{
			showPlayerLayer(playerActivo, false);
			Pr_Player_Mini("Stop");
			playerActivo='';
		}
	}
}

function hidePlayerIfOverTabs()
{
	obj = document.getElementById("modulo_audios");
	player = document.getElementById('audio');
	if (player.style.visibility == 'visible') 
	{
		obj_dims = getAbsoluteElementPosition(obj);
		pl_dims = getAbsoluteElementPosition(player);
		if (pl_dims.top >= obj_dims.top && pl_dims.top < obj_dims.top+obj.offsetHeight &&
		    pl_dims.left >= obj_dims.left && pl_dims.left < obj_dims.left+obj.offsetWidth)
		{
			showPlayerLayer(playerActivo, false);
			Pr_Player_Mini("Stop");
			playerActivo='';
		}
	}
}

function Pr_Player_Mini(accion) {
    
	

    
	if(playerMiniElement){
		var vol_act_mini;
		if(playerMiniElement.settings){
			vol_act_mini = playerMiniElement.settings.volume;
		}
		else{
			vol_act_mini = 50;
		}
		
		if(playerMiniElement.controls){

			switch (accion) {
			    case "Play":
					 player_mini_load = 1;
				   playerMiniElement.controls.play();
				   break;
			    case "Pause":
				    playerMiniElement.controls.pause();
				    
					break;
			    case "Stop":
					player_mini_load = 0;
					playerMiniElement.controls.stop();
				    break;
			}
		}else{
			switch (accion) {
			    case "Play":
					
					playAudioOnEmbedObject(urlPlayerMini);
					break;
			    case "Pause":
			    case "Stop":
					stopAudioOnEmbedObject();
				    break;
			}
		}
    }
}



function init_Players() {
	playerMiniElement = document.getElementById("playerMini");
}

function playAudioOnEmbedObject(urlFichero){
	
	objAudio = myGetElementByID("div_audio_noactivex"); 

	auxDivContent = '<EMBED type="application/x-mplayer2" width="1" height="1"';
	auxDivContent+= 'pluginspage="http://www.microsoft.com/Windows/MediaPlayer/"';
	auxDivContent+= 'SRC="'+ urlFichero +'"';
	auxDivContent+= 'name="PlayerEmbed"';
	auxDivContent+= 'autostart="1"';
	auxDivContent+= 'showstatusbar="0"';
	auxDivContent+= 'showcontrols="0">';
	auxDivContent+= '</EMBED>';
	//objAudio.innerHTML = auxDivContent;
	$("#div_audio_noactivex").html(auxDivContent);
}

function stopAudioOnEmbedObject(){
	objAudio = myGetElementByID("div_audio_noactivex"); 
	objAudio.innerHTML="";
}



var isInternetExplorer = navigator.appName.indexOf("Microsoft") != -1;
// Handle all the FSCommand messages in a Flash movie.


function commands(command, args) {
	
	if (command == "ping") {
		pingFSCommand();
	}
	else if (command == "Pr_Player_Mini") {
		Pr_Player_Mini(args);
	}
	else if (command == "changePlayerUrlMini") {
		init_Players();
		urlPlayerMini = args;
		if(playerMiniElement){
			if (args != playerMiniElement.url){
				playerMiniElement.url = args; 
			}
			Pr_Player_Mini("Play");
		}
	}
	else if (command == "changeVolumenMini") {
		changeVolumenMini(args);
	}
	else if (command == "setResetPlayer") {
		resetPlayerFlashVar= args;
	}
	else if (command == "setOpenPlayer") {
   		var tempValue = args.split("/");
		openPlayerLayerFlashVar = tempValue[0];
		showPlayerLayer("div_"+tempValue[1], false);
	}
	else if (command == "setNavegador") {
		setNavegadorFlashVar = args;
	}
	else if (command == "hidePlayersAll") {
		hidePlayersAll(args);
	}
	
	else if (command == "checkBrowser") {
		setFlashBrowser(args);
	} 
	
	else if (command == "getCurrentTime") {
		getCurrentTime();
	} 
	
	/*
	else if (command == "setDurationMiniVar") {
		duration_mini_var = args; 
	}
	else if (command == "setCheckDuration") {
		updateDurationMini(playerMiniElement.currentMedia.durationString);
	}
	*/
	


}


function getTotalTime(){
		var player = document.getElementById("playerMini");
		if((playerActivo=="home")||(playerActivo=="ticker")||(playerActivo=="flash_programas")){
				setVariableFlash(playerActivo, "_level0.main.audioControl.totalTimeJS", player.currentMedia.durationString);
		
		} else {
			 setVariableFlash("audioLayer", "_level0.main.totalTimeJS", player.currentMedia.durationString);
		}
}


function getCurrentTime(){
		
		var player = document.getElementById("playerMini");

		if((playerActivo=="home")||(playerActivo=="ticker")||(playerActivo=="flash_programas")){
			setVariableFlash(playerActivo, "_level0.main.audioControl.currentTime", player.controls.currentPositionString);
	  } else {
			setVariableFlash("audioLayer", "_level0.main.currentTime", player.controls.currentPositionString);
		
		}
													
}
	

function pageOpened(){
	
}

function makeFSCommand(labelFlash, type){
  if (navigator.appName && navigator.appName.indexOf("Microsoft") != -1 && navigator.userAgent.indexOf("Windows") != -1 && navigator.userAgent.indexOf("Windows 3.1") == -1) {
			document.write('<script language=\"VBScript\"\>\n');
			document.write('On Error Resume Next\n');
			document.write('Sub ' + labelFlash + '_FSCommand(ByVal command, ByVal args)\n');
			document.write('	Call ' + labelFlash + '_DoFSCommand(command, args)\n');
			document.write('End Sub\n');
			document.write('</script\>\n');
	}
	

}
