var G_intervalCounter = null;
var G_coords = null;
function previousSettings(direccion){
	document.onclick = onClick;
	
	A_checkNumberOfClicks();
	G_intervalCounter = setInterval("A_checkNumberOfClicks()", 30000);

	setCoords(direccion);
}

function posteriorSettings(){
	clearInterval(G_intervalCounter);
}

function onClick(e){
	// IE is retarded and doesn't pass the event object
	if(e == null){ e = window.event; }
	
	// IE uses srcElement, others use target
	var target = e.target != null ? e.target : e.srcElement;
	
	if((target.tagName == 'IMG') && (target.className == 'flag_off')){
		var lang = target.id.replace('flag_', '');
		document.location = '?lang=' + lang;
	}
	
	return true;
}

function mouseOverOut(img){
	var new_src;

	if(img.src.indexOf('off.') > -1){
		new_src = img.src.replace('off.', 'on.');
	} else {
		new_src = img.src.replace('on.', 'off.');
	}
	
	img.src = new_src;
}

function setHomePage(url){
	var nav = navigator.userAgent.toLowerCase();

	if(nav.indexOf('msie') > -1){
		document.body.setHomePage(url);
	} else if(nav.indexOf('safari') > -1){
		A_alertar('homepage-safari');
	} else if(nav.indexOf('mozilla') > -1){
		A_alertar('homepage-mozilla');
	}
}

function validateData(){
	var email = document.getElementById("input-email").value;
	var aceptacion  = document.getElementById("input-checkbox").checked;

	document.getElementById("div-alert").style.display = 'block';
	document.getElementById("div-alert").innerHTML =
		'<table style="width: 100%; height: 100%">' +
			'<tr align="center" valign="middle"><td><img src="images/ajax-loader.gif"></td></tr>' +
		'</table>';
	
	if(aceptacion){
		if((/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/).test(email)){
			A_bookContact(email, null);
		} else {
			document.getElementById("div-alert").innerHTML =
				'<table style="width: 100%; height: 100%">' +
					'<tr style="background-color: white; font-weight: bold; font-size: 14px"><td align="center">"' + email + '"<br>no parece una direcci&oacute;n de e-mail v&aacute;lida.</td></tr>' +
					'<tr><td align="center" style="height: 10%"><input class="button" type="button" style="width: 30%" value="Cerrar" onClick="closeDiv(\'div-alert\');"></td></tr>' +
					'</table>';
		}
	} else {
		document.getElementById("div-alert").innerHTML =
			'<table style="width: 100%; height: 100%">' +
				'<tr style="background-color: white; font-weight: bold; font-size: 14px"><td align="center">Debes aceptar las condiciones indicadas en la pol&iacute;tica de privacidad.</td></tr>' +
				'<tr><td align="center" style="height: 10%"><input class="button" type="button" style="width: 30%" value="Cerrar" onClick="closeDiv(\'div-alert\');"></td></tr>' +
				'</table>';
	}
	
}

function closeDiv(id){
	document.getElementById(id).style.display = 'none';
	document.getElementById(id).innerHTML = '';
}

function moreOpacity(div){
	if((G_opacity = parseInt(G_opacity) + parseInt(5)) <= G_max){
		div.style.filter = 'alpha(opacity = ' + G_opacity + ')';
		div.style.opacity = G_opacity / 100;
	} else {
		clearInterval(G_interval);
		if(div.id == 'div-dark'){
			document.getElementById("div-counter").style.display = 'none';
			document.getElementById("div-dark-counter").style.display = 'block';
			G_opacity = 0;
			G_max = 100;
			G_interval = setInterval("moreOpacity(document.getElementById('div-dark-counter'))", G_interval_time);
		} else if(div.id == 'div-dark-counter'){
			G_top = 15; // "TOP" DE LA CAPA (sin "px")
			G_max = G_top - 140; // "HEIGHT" DE LA CAPA (sin "px")
			G_interval = setInterval("moveDiv(document.getElementById('div-dark-marquee'))", G_interval_time);
		}
	}
}

function moveDiv(div){
	if((G_top = parseInt(G_top) - parseInt(1)) >= G_max){
		div.style.top = G_top + 'px';
	} else {
		clearInterval(G_interval);
		G_opacity = 0;
		document.getElementById("div-dark-amen").style.display = 'block';
	}
}

function displayDivs(idDivs, sw){
	var arrIdDivs = idDivs.split('.');
	var display_mode = 'block';

	if((sw == 0) || ((sw == 1) && (document.getElementById(arrIdDivs[0]).style.display == 'block'))){
		display_mode = 'none';
	}
	for(var i = 0; i < arrIdDivs.length; i++){
		document.getElementById(arrIdDivs[i]).style.display = display_mode;
	}
}

function openUrl(url){
	window.open(url, "_blank", "toolbar=yes,menubar=yes,directories=yes,status=yes,resizable=yes,location=yes,scrollbars=yes");
}

function closeDark(){
	document.getElementById("div-dark").style.display = 'none';
	document.getElementById("div-dark-counter").style.display = 'none';
	document.getElementById("div-dark-amen").style.display = 'none';
	
	document.getElementById("div-dark-marquee").style.top = '15px';
	
	document.getElementById("div-dark").style.opacity = 0;
	document.getElementById("div-dark").style.filter = 'alpha(opacity = 0)';
	document.getElementById("div-dark-counter").style.opacity = 0;
	document.getElementById("div-dark-counter").style.filter = 'alpha(opacity = 0)';
	
	document.getElementById("input-counter").value = document.getElementById("input-dark-counter2").value;
	document.getElementById("div-counter").style.display = 'block';
	document.getElementById("div-click").style.display = 'block';
}


function setCoords(address){
	geocoder = new GClientGeocoder();
	if(geocoder){
		geocoder.getLatLng(address,
			function(point){
				if(point){ G_coords = point; }
				else { G_coords = null; }
				document.getElementById("div-loading").style.display = 'none';
			}
		);
	}
}

function randomCoords(lat, lon){
    var tamRango = 0.1;
    
    var rlat = Math.random() * tamRango;
    rlat = Math.floor((parseFloat(lat) + rlat - (tamRango / 2)) * 10000000) / 10000000;
    var rlon = Math.random() * tamRango;
    rlon = Math.floor((parseFloat(lon) + rlon - (tamRango / 2)) * 10000000) / 10000000;

    var arrCoords = new Array(rlat, rlon);
    return arrCoords;
}



/* --------------------------- */



var xmlHttp;
var G_interval = 0;
var G_interval_time = 25;
var G_opacity = 0;
var G_max = 0;
var G_top = 0;
function GetXmlHttpObject(){
	var xmlHttp = null;
	try {
		// Firefox, Opera 8.0+, Safari
		xmlHttp = new XMLHttpRequest();
	} catch(e){
		//Internet Explorer
		try {
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		} catch(e){
			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	return xmlHttp;
}

/* A_BOOKCONTACT */
function A_bookContact(email, direccion){
	xmlHttp = GetXmlHttpObject();
	if(xmlHttp==null){
		alert("Browser does not support HTTP Request");
		return;
	}
	
	document.getElementById("div-alert").style.display = 'block';
	
	var url="ajax/A_bookContact.php";
	var params = "email=" + email;

	xmlHttp.onreadystatechange = stateChanged_bookContact;
	xmlHttp.open("POST",url,true);
	xmlHttp.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
	xmlHttp.setRequestHeader('Content-length', params.length);
	xmlHttp.setRequestHeader('Connection', 'close');
	xmlHttp.send(params);
}
function stateChanged_bookContact(){
	if(xmlHttp.readyState == 4 || xmlHttp.readyState == "complete"){
		var str = xmlHttp.responseText.split('<br>');
		var sw = str[0].substring(0, 1);
		var msg = '';

		msg = str[0].substring(1);
		document.getElementById("div-alert").innerHTML = msg;
		document.getElementById("input-email").value = 'Introduce tu e-mail';
		document.getElementById("input-checkbox").checked = false;
	} else {
		document.getElementById("div-alert").innerHTML =
			'<table style="width: 100%; height: 100%">' +
				'<tr align="center" valign="middle"><td><img src="images/ajax-loader.gif"></td></tr>' +
			'</table>';
	}
}

/* A_CLICK */
function A_click(){
	document.getElementById("div-click").style.display = 'none';
	
	xmlHttp = GetXmlHttpObject();
	if(xmlHttp==null){
		alert("Browser does not support HTTP Request");
		return;
	}

	var url="ajax/A_click.php";
	var params = "coords=" + G_coords;
		
	xmlHttp.onreadystatechange = stateChanged_click;
	xmlHttp.open("POST",url,true);
	xmlHttp.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
	xmlHttp.setRequestHeader('Content-length', params.length);
	xmlHttp.setRequestHeader('Connection', 'close');
	xmlHttp.send(params);
}
function stateChanged_click(){
	if(xmlHttp.readyState == 4 || xmlHttp.readyState == "complete"){
		var str = xmlHttp.responseText.substring(1);
		var sw = xmlHttp.responseText.substring(0, 1);
		if(document.getElementById("div-dark").style.display != 'block'){
			document.getElementById("input-dark-counter").value = document.getElementById("input-counter").value;
			document.getElementById("input-dark-counter2").value = parseInt(document.getElementById("input-counter").value) + 1;
			document.getElementById("div-dark").style.display = 'block';
			G_max = 90;
			G_interval_time = 50;
			G_interval = setInterval("moreOpacity(document.getElementById('div-dark'))", G_interval_time);
		}
	} else {
		document.getElementById("div-alert").innerHTML =
			'<table style="width: 100%; height: 100%">' +
				'<tr align="center" valign="middle"><td><img src="images/ajax-loader.gif"></td></tr>' +
			'</table>';
	}
}

/* A_CHECKNUMBEROFCLICKS */
function A_checkNumberOfClicks(){
	xmlHttp = GetXmlHttpObject();
	if(xmlHttp==null){
		alert("Browser does not support HTTP Request");
		return;
	}

	var url="ajax/A_checkNumberOfClicks.php";
	url=url+"?sid="+Math.random();
	xmlHttp.onreadystatechange = stateChanged_checkNumberOfClicks;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}
function stateChanged_checkNumberOfClicks(){
	if(xmlHttp.readyState == 4 || xmlHttp.readyState == "complete"){
		var str = xmlHttp.responseText;
		if(!isNaN(str)){
			document.getElementById("input-counter").value = str;
		}
	}
}

/* A_ALERTAR */
function A_alertar(tipo){
	xmlHttp = GetXmlHttpObject();
	if(xmlHttp==null){
		alert("Browser does not support HTTP Request");
		return;
	}

	var url="ajax/A_alertar.php";
	url=url+"?tipo="+tipo+"&sid="+Math.random();
	xmlHttp.onreadystatechange = stateChanged_alertar;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}
function stateChanged_alertar(){
	if(xmlHttp.readyState == 4 || xmlHttp.readyState == "complete"){
		var msg = xmlHttp.responseText;
		
		if(msg != ''){
			document.getElementById("div-alert").innerHTML = msg;
			document.getElementById("div-alert").style.display = 'block';
		}
	}
}
