// Copyright 2009 Esteban Tejedor.  All rights reserved.
var me = undefined; //representa el id del SWF
var idiomas = new Array("es", "en");
var idioma_actual = "";
//Variable para el objeto XMLHttpRequest
var req;
var reqPortfolio;

//Obtiene la referencia correcta
function start(idioma) {
	var fromFlash = (idioma != undefined);
	
	if(me == undefined) {
		//Halla el identificador
		if (navigator.appName.indexOf("Microsoft") > -1)
			me = window['webmaster&designer-Esteban_Tejedor'];
		else
			me = document['webmaster&designer-Esteban_Tejedor'];

		//Fija el idioma de la web
		if(!fromFlash)
			idioma = getIdioma();
		
		//onClickFlag("en", true); //para pruebas (de todas formas, puede que salga el idioma elegido por flash en la funcion start)
		onClickFlag(checkIdioma(idioma), true);
	}
	
	if(fromFlash)
		me.cambiarIdioma(idioma_actual);
		
	portfolioPosition();
}

//Encuentra el idioma que está configurado en el navegador y asigna un lenguaje disponible para la web
function getIdioma() {
	var idioma = undefined;
	if(navigator.appName.indexOf("Microsoft") > -1) {
		idioma = navigator.userLanguage.substr(0,2);
		if(idioma == undefined)
			idioma = navigator.browserLanguage.substr(0,2);
	}
	else 
		idioma = navigator.language.substr(0,2);
	return idioma;
}
	
//Si el idioma configurado no es ninguno de los previstos, se asigna el español o el inglés
function checkIdioma(idioma) {
	var encontrado = false;
	for(i=0; i<idiomas.length; i++) {
		if(idioma == idiomas[i]) {
			encontrado = true;
			break;
		}
	}
	if(!encontrado) {
		if(idioma == "gl" || idioma == "ca" || idioma == "eu") //gallego, catalán o euskera
			idioma = "es";
		else
			idioma = "en";
	}
	return idioma;
}


//Cambia el idioma de la web
function onClickFlag(idioma, inicio) {
	if(idioma != idioma_actual) {
		for(i=0; i<idiomas.length; i++) {
			if(idioma == idiomas[i]) {
				eval("document.flag_"+idioma+".src='img/flags/"+idioma+"2.gif'");
				
				if(!inicio)
					me.cambiarIdioma(idioma);
				
				// No IE
				if (window.XMLHttpRequest) {
					req = new XMLHttpRequest();
					req.onreadystatechange = processReqChange;
					req.open("GET", "pie.php?lang="+idioma, true);
					req.send(null);
					
					reqPortfolio = new XMLHttpRequest();
					reqPortfolio.onreadystatechange = processReqChangePortfolio;
					reqPortfolio.open("GET", "portfolio.php?lang="+idioma, true);
					reqPortfolio.send(null);
					
				// Internet Explorer
				} else if (window.ActiveXObject) {
					req = new ActiveXObject("Microsoft.XMLHTTP");
					if (req) {
						req.onreadystatechange = processReqChange;
						req.open("GET", "pie.php?lang="+idioma, true);
						req.send();
					}
								
					reqPortfolio = new ActiveXObject("Microsoft.XMLHTTP");
					if(reqPortfolio) {
						reqPortfolio.onreadystatechange = processReqChangePortfolio;
						reqPortfolio.open("GET", "portfolio.php?lang="+idioma, true);
						reqPortfolio.send();
					}
				}
	
				idioma_actual = idioma;
			}
			else {
				eval("document.flag_"+idiomas[i]+".src='img/flags/"+idiomas[i]+".gif'");
			}
		}
	}
}


/*
//Cambia el idioma de la web
function onClickFlag(idioma, inicio) {
	if(idioma != idioma_actual) {
		for(i=0; i<idiomas.length; i++) {
			if(idioma == idiomas[i]) {
				eval("document.flag_"+idioma+".src='img/flags/"+idioma+"2.gif'");
				
				if(!inicio)
					me.cambiarIdioma(idioma);
				
				// No IE
				if (window.XMLHttpRequest) {
					req = new XMLHttpRequest();
					req.onreadystatechange = processReqChange;
					req.open("GET", "pie.php?lang="+idioma, true);
					req.send(null);
				// Internet Explorer
				} else if (window.ActiveXObject) {
					req = new ActiveXObject("Microsoft.XMLHTTP");
					if (req) {
						req.onreadystatechange = processReqChange;
						req.open("GET", "pie.php?lang="+idioma, true);
						req.send();
					}
				}
	
				idioma_actual = idioma;
			}
			else {
				eval("document.flag_"+idiomas[i]+".src='img/flags/"+idiomas[i]+".gif'");
			}
		}
	}
}*/

//Funcion que se llama cada vez que se dispara el evento onreadystatechange del objeto XMLHttpRequest
function processReqChange() {
	//alert("haaa");
	var pie = document.getElementById("pie");
	if(req.readyState == 4){
		pie.innerHTML = req.responseText;
	} else {
		pie.innerHTML = "";
	}
}

//Funcion que se llama cada vez que se dispara el evento onreadystatechange del objeto XMLHttpRequest
function processReqChangePortfolio() {
	var portfolio = document.getElementById("accordion");
	if(reqPortfolio.readyState == 4){
		
		//alert(portfolio.style.display);
		//portfolio.style.display = 'none';
		
		portfolio.innerHTML = reqPortfolio.responseText;
		
		//var expandido_aux = expandido;
		$('#accordion').easyAccordion({ });
		//if(expandido_aux)
			//acordeonOnOff(1);
			
		//portfolio.style.display = 'block';
	
	} else {
		portfolio.innerHTML = "";
	}
}

//Abre una nueva ventana, con el perfil de Twitter
/*function openTwitter(){
	window.open('http://twitter.com/estebantejedor/');

}*/


function portfolioPosition() {
	//alert(acordeon.style.width);
	var acordeon = document.getElementById("accordion");
	acordeon.style.position = "absolute";
	if(navigator.appName.indexOf("Microsoft") != -1) //=>IE
	{
		//acordeon.style.width = 600;
		acordeon.style.left = (document.body.offsetWidth - 23 - 700);
	}
	else
		acordeon.style.left = (window.innerWidth - 700);
	
	//acordeon.style.top = "200px";
	//acordeon.style.display = 'inline';
	
	var solapa = document.getElementById("solapa");
	//solapa.style.position = "absolute";
	if(navigator.appName.indexOf("Microsoft") != -1) //=>IE
		solapa.style.left = (document.body.offsetWidth - 23 - 64);
	else
		solapa.style.left = (window.innerWidth - 64);
	//solapa.style.top = "200px";
	//solapa.style.display = 'inline';
}


//Inicializa el acordeón
$(document).ready(function() {
	$('#accordion').easyAccordion({ });
	$("#accordion").css({'z-index':'-3'});
});

function acordeonOnOff(on) {
	//alert(expandido);
	if(on)
	{
		//alert("OK");
		$("#accordion").css({'z-index':'3'});
	}
	else if(!expandido)
	{
		//alert("OK");
		$("#accordion").css({'z-index':'-3'});
	}
	
}

