//
// Funciones relacionadas con la traducción 
//

// Variables globales
var language = "es";
var traducciones = "de,ar,ca,es,fi,fr,nl,en,it,no,pl,pt,en,ro,ru,uk";


// Traducción inicial (Web entera excepto tabs)
$(document).ready(function(){
	
	var cookieLanguage = readCookie("language");
	
	if(cookieLanguage == null) { // El usuario no tiene idioma asignado
		
		// Detectamos el idioma del navegador
		var tmp = "";
		if(navigator.language) 	tmp = navigator.language;
		else					tmp = navigator.browserLanguage;
		
		var index = traducciones.indexOf(tmp);
		
		if(index >= 0) { // Si es una idioma soportado 
			
			language = tmp;
			
			// Establecemos la cookie para 30 dias
			createCookie("language", language, 30);
			
			// Traducimos todo menos los tabs, si no es castellano
			if(language != "es") {
				$('html').translate(language, {
					complete: function(translation) {
						var selObj = document.getElementById('selectLanguage');
						selObj.value = language;
					},				
					not: "div#provincias_container, textarea#comentario"
				});			
			}
		}
		// else se muestra en castellano
	}
	else { // El usuario tiene un idioma asignado
		
		var index = traducciones.indexOf(cookieLanguage);
		
		if(cookieLanguage != "es" && index >= 0) { // Si no es castellano y es una idioma soportado 
			
			language = cookieLanguage;

			// Traducimos todo menos los tabs
			$('html').translate(language, {
				complete: function(translation) {
					var selObj = document.getElementById('selectLanguage');
					selObj.value = language;
				},
				not: "div#provincias_container, textarea#comentario"
			});		
		}	
	}
})

function translate() { // Se invoca en onChange de selectLanguage
	//alert("Change!");
	if($('#selectLanguage').val() == "" || $('#selectLanguage').val() == language) { // Solo puede pasar si no estamos traduciendo (español), o si se escoje "Escoger idioma"
		var selObj = document.getElementById('selectLanguage');
		if(language == "es") selObj.value = ""; // Volvemos a "Escoger idioma"
		else selObj.value = language;
	}
	else {
		language = $('#selectLanguage').val();
		createCookie("language", language, 30);
		//alert("Reload!");
		location.reload();
	}
}


//
// Gestión de cookies en JavaScript
//

function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	
	document.cookie = name+"="+value+expires+"; path=/; domain=infocampus.es";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}