var idMenuSelected = 1;
var classNormalMenu = 'normalMenu';
var classOverMenu = 'overMenu';
var classSelectedMenu = 'selectedMenu';
var classVisibleContent = 'visibleContent';
var classHideContent = 'hideContent';

function onClickMenu(idMenu) {
	if (idMenu == 7) {
		window.open('http://www.earthday.net/footprint/index.asp');
	} else if (idMenu == 8) {
		window.open('http://www.accionecologica.cl/foro/index.php');
	} else if ((idMenu == 11) || (idMenu == 13) || (idMenu == 14) || (idMenu == 15)) {
		hideLayer('spot');
		if (idMenuSelected < 11) {
			var menuSelectedDiv = document.getElementById('menu' + idMenuSelected);
			menuSelectedDiv.className = classNormalMenu;
		}
		var contentToVisible = document.getElementById('content' + idMenu);
		var contentToHide = document.getElementById('content' + idMenuSelected);
		contentToHide.className = classHideContent;
		contentToVisible.className = classVisibleContent;
		idMenuSelected = idMenu;
		return;
	} else if (idMenu != idMenuSelected) {
		var menuDiv = document.getElementById('menu' + idMenu);
		if ((idMenuSelected != 0) && (idMenuSelected != 11) && (idMenuSelected != 13)) {
			var menuSelectedDiv = document.getElementById('menu' + idMenuSelected);
			menuSelectedDiv.className = classNormalMenu;
		}
		menuDiv.className = classSelectedMenu;
		var contentToVisible = document.getElementById('content' + idMenu);
		var contentToHide = document.getElementById('content' + idMenuSelected);
		contentToHide.className = classHideContent;
		contentToVisible.className = classVisibleContent;
		idMenuSelected = idMenu;
	}
	
	if (idMenu != 3) {
	   var doc = document.getElementById('idVoluntarioForm');
   	   Form.reset(doc);
       doc.recibir_info[0].checked = true;
	   doc = document.getElementById('idContactoForm');
   	   Form.reset(doc);
	   var mensaje = document.getElementById('divMensaje');
	   mensaje.style.visibility = 'hidden';
	   mensaje = document.getElementById('divMensajeContacto');
	   mensaje.style.visibility = 'hidden';
	}
	
}

function overMenu(idMenu) {
	var menuDiv = document.getElementById('menu' + idMenu);
	if (idMenuSelected != idMenu) {
		menuDiv.className = classOverMenu;
	}
}

function outMenu(idMenu) {
	var menuDiv = document.getElementById('menu' + idMenu);
	if (idMenuSelected != idMenu) {
		menuDiv.className = classNormalMenu;
	}
}

var idTabSelected = 1;

function changeTab(idTab) {
	if (idTab != idTabSelected) {
		var tabTarget = document.getElementById('tab_' + idTab);
		var tabSource = document.getElementById('tab_' + idTabSelected);
		tabTarget.className = 'tabActive';
		tabTarget.style.zIndex = 3;
		tabSource.className = 'tabInactive';
		tabSource.style.zIndex = 1;
		hideLayer('content_' + idTabSelected);
		showLayer('content_' + idTab);
		idTabSelected = idTab;
	}
}

function showLayer(idLayer) {
	var layer = document.getElementById(idLayer);
	layer.style.visibility = 'visible';
}

function hideLayer(idLayer) {
	var layer = document.getElementById(idLayer);
	layer.style.visibility = 'hidden';
}

function showInfoC(idInfoC) {
	showLayer('idInfoC' + idInfoC);
	var texto = document.getElementById('idTitleC' + idInfoC);
	texto.className = 'cssInfoCActive';
}

function hideInfoC(idInfoC) {
	hideLayer('idInfoC' + idInfoC);
	var texto = document.getElementById('idTitleC' + idInfoC);
	texto.className = 'cssInfoCNormal';
}

function trim(text) {
	var largo = text.length;
	var newText = '';
	var triming = true;
	for (var i = 0; i < largo; i+=1) {
		var l = text.charAt(i);
		if (l !== ' ') {
			newText += l;
			triming = false;
		} else {
			if (!triming) {
				newText += l;
			}
		}
	}
	var tempText = '';
	largo = newText.length;
	triming = true;
	for (i = (largo - 1); i >= 0; i-=1) {
		l = newText.charAt(i);
		if (l !== ' ') {
			tempText += l;
			triming = false;
		} else {
			if (!triming) {
				tempText += l;
			}
		}
	}
	largo = tempText.length;
	var finalText = '';
	for (i = (largo - 1); i >= 0; i-=1) {
		l = tempText.charAt(i);
		finalText += l;
	}
	return finalText;
}

function isNumeric(text) {
	var value = trim(text);
	if (value.length == 0) {
		return false;
	} else {
		return (!isNaN(value));
	}
}

function isCheckedAnyCheckBox(checkboxObject) {
	var result = false;
	if (checkboxObject.length > 0) {
		for (i = 0; i < checkboxObject.length; i++) {
			if (checkboxObject[i].checked) {
				result = true;
				break;
			}
		}
	} else {
		if (checkboxObject.checked)
			result = true;
	}
	
	return result;
}

function bloqueaCaracteres(e)
{
 var key;
 var keychar;
 var reg;
 
 if(window.event) {
  // for IE, e.keyCode or window.event.keyCode can be used
  key = e.keyCode;
 }
 else if(e.which) {
  // netscape
  key = e.which;
 }
 else {
  // no event, so pass through
  return true;
 }
 
 keychar = String.fromCharCode(key);
 reg = /[\0]/;
 return reg.test(keychar);
}

function isCheckedAnyCheckBox(checkboxObject) {
	var result = false;
	if (checkboxObject.length != null) {
		for (i = 0; i < checkboxObject.length; i++) {
			if (checkboxObject[i].checked) {
				result = true;
				break;
			}
		}
	} else {
		if (checkboxObject.checked)
			result = true;
	}
	
	return result;
}

function getIndexSelectedCheckBox(checkboxObject) {
	var result = -1;
	if (checkboxObject.length != null) {
		for (i = 0; i < checkboxObject.length; i++) {
			if (checkboxObject[i].checked) {
				result = i;
				break;
			}
		}
	} else {
		if (checkboxObject.checked)
			result = 0;
		else
			result = -1;
	}
	
	return result;
}

function getIndexSelectedRadio(radioObject) {
	return getIndexSelectedCheckBox(radioObject);
}


function checkAllCheckBoxs(checkboxObject) {

	if (checkboxObject.length != null) {
		for (i = 0; i < checkboxObject.length; i++) {
			checkboxObject[i].checked = true;
		}
	} else {
		checkboxObject.checked = true;
	}
}

function unCheckAllCheckBoxs(checkboxObject) {

	if (checkboxObject.length != null) {
		for (i = 0; i < checkboxObject.length; i++) {
			checkboxObject[i].checked = false;
		}
	} else {
		checkboxObject.checked = false;
	}
}

function isCheckedAnyRadio(radioObject) {
	return isCheckedAnyCheckBox(radioObject);
}

function unCheckAllRadios(radioObject) {
	unCheckAllCheckBoxs(radioObject)
}

function isValidEmail(fieldText) {
    var arrobas = 0;
    var indexArroba = 0;
    var puntos = 0;
    var indexPunto = 0;
    var countChrAfterPuntos = 0;
    var empiezaConNumero = false;
    
	if ((fieldText.value.charAt(0) >= '0') && (fieldText.value.charAt(0) <= '9')) {
		empiezaConNumero = true;
	} 

	for (i = 0; i < fieldText.value.length; i++) {
		var c = fieldText.value.charAt(i);
		if (c == '@') {
			arrobas++;
			indexArroba = i;
		} else if (c == '.') {
				puntos++;
				indexPunto = i;
		}
	}
	
	if (puntos > 0) {
		countChrAfterPuntos = fieldText.value.substring(indexPunto + 1).length;
	}
	if ((arrobas != 1) || (puntos == 0) || (indexPunto < indexArroba) || (empiezaConNumero) || (fieldText.value.charAt(indexArroba + 1) == '.') || (countChrAfterPuntos == 0)){
		alert('Email ingresado no es válido');
		fieldText.focus();
		fieldText.select();
		return false;
	}
	
	return true;
}

function checkRut(rut, digv) {var rutField = document.getElementById(rut);var digvField = document.getElementById(digv);
var texto = rutField.value + digvField.value;var tmpstr = '';var newtexto = '';for ( i=0; i < texto.length ; i++ )if ( texto.charAt(i) != ' ' && texto.charAt(i) != '.' && texto.charAt(i) != '-' )
tmpstr = tmpstr + texto.charAt(i);newtexto = tmpstr;largo = newtexto.length;if (largo == 0)	{alert("No puede dejar Rut vacío");rutField.select();rutField.focus();return false;}else if (largo < 6) {
alert("Rut incorrecto, por favor intente de nuevo");rutField.value='';digvField.value='';rutField.select();rutField.focus();return false;} else {var ElRut = newtexto.substring(0,(newtexto.length - 1));
var ElDv = newtexto.substring((newtexto.length - 1), newtexto.length);var largo_rut = ElRut.length;var largo_dv = ElDv.length;var RutC = ElRut+ElDv;for(i=0;i<largo_rut;i++) {c=ElRut.charAt(i);
if (c<"0" || c>"9") {alert("Rut incorrecto, por favor intente de nuevo");rutField.value='';digvField.value='';rutField.select();rutField.focus();return false;}}c=ElDv.charAt(0);
if ( (c<"0" || c>"9") && c!="K" && c!="k" ) {alert("El Digito Verificador\n que ingresó no es válido,\n por favor intente nuevamente");digvField.value='';digvField.select();digvField.focus();
return false;}else {var suma=0;var mult=2;if ((ElDv=="K") || (ElDv=="k")) ElDv="10";for (i=largo_rut-1;i>=0;i--) {c=ElRut.charAt(i);suma+=parseInt(c,10)*mult;mult++;if (mult>7) mult=2;}var calculado=11-suma%11;
if (calculado==11) calculado=0;if(parseInt(ElDv)!=calculado) {alert("El RUT que ingresó no\nes válido, por favor\nintente nuevamente");rutField.value='';digvField.value='';rutField.select();rutField.focus();
return false;}else {rutField.value=newtexto.toUpperCase().substring(0, newtexto.length-1);digvField.value=newtexto.toUpperCase().substring((newtexto.length - 1), newtexto.length);;}}}return true;}

function formularioContactoValido() {
	var doc = document.getElementById('idContactoForm');
	var nombres = trim(doc.nombres.value); 
	if (nombres.length == 0) {
		window.alert('Ingresa tu nombre o nombres si tienes más de uno');
		doc.nombres.select();
		return false;
	}
	var apellidos = trim(doc.apellidos.value); 
	if (apellidos.length == 0) {
		window.alert('Ingresa por lo menos tu primer apellido');
		doc.apellidos.select();
		return false;
	}
	var email = trim(doc.email.value);
	var telefono = trim(doc.telefono.value);
	
	if ((email.length == 0) && (telefono.length == 0)) {
		window.alert('Debes ingresar un email válido o teléfono para darte una respuesta');
		doc.email.select();
		return false;
	}
	
	if ((email.length != 0) && !isValidEmail(doc.email)) {
		return false;
	}
	
	var codigo = trim(doc.codigo.value);
	if ((telefono.length != 0) && (codigo == 0)) {
		window.alert('Ingrese código de área telefónico, 09 si es celular');
		doc.codigo.select();
		return false;
	}
	
	if ((telefono.length != 0) && (!isNumeric(telefono))) {
		window.alert('Teléfono ingresado no es numérico');
		doc.telefono.select();
		return false;
	}
	
	if ((telefono.length != 0) && (codigo.length != 0) && (!isNumeric(codigo))) {
		window.alert('Código Telefónico ingresado no es numérico');
		doc.codigo.select();
		return false;
	}
	
	var comentario = trim(doc.comentario.value);
	if (comentario.length == 0) {
		window.alert('Por favor, ingresa algún mensaje');
		doc.comentario.select();
		return false;
	}
	
	return true;
}

function formularioCicletadaValido() {
	var doc = document.getElementById('idCicletadaForm');
	var nombres = trim(doc.nombres.value); 
	if (nombres.length == 0) {
		window.alert('Ingresa tu nombre o nombres si tienes más de uno');
		doc.nombres.select();
		return false;
	}
	var apellidos = trim(doc.apellidos.value); 
	if (apellidos.length == 0) {
		window.alert('Ingresa por lo menos tu primer apellido');
		doc.apellidos.select();
		return false;
	}
	var email = trim(doc.email.value);
	var telefono = trim(doc.telefono.value);
	
	if ((email.length == 0) && (telefono.length == 0)) {
		window.alert('Debes ingresar un email válido o teléfono para darte una respuesta');
		doc.email.select();
		return false;
	}
	
	if ((email.length != 0) && !isValidEmail(doc.email)) {
		return false;
	}
	
	var codigo = trim(doc.codigo.value);
	if ((telefono.length != 0) && (codigo == 0)) {
		window.alert('Ingrese código de área telefónico, 09 si es celular');
		doc.codigo.select();
		return false;
	}
	
	if ((telefono.length != 0) && (!isNumeric(telefono))) {
		window.alert('Teléfono ingresado no es numérico');
		doc.telefono.select();
		return false;
	}
	
	if ((telefono.length != 0) && (codigo.length != 0) && (!isNumeric(codigo))) {
		window.alert('Código Telefónico ingresado no es numérico');
		doc.codigo.select();
		return false;
	}
	
	var comentario = trim(doc.comentario.value);
	if (comentario.length == 0) {
		window.alert('Por favor, ingresa algún mensaje');
		doc.comentario.select();
		return false;
	}
	
	return true;
}

function enviarContacto() {
	if (formularioContactoValido()) {
		showLoadingContacto();
		params = Form.serialize('idContactoForm');
		var options = {method:'post',onComplete:showMessageContacto,parameters:params};
		ajaxEngine.sendRequest('contactar',options);
	}
}

function enviarCicletada() {
	if (formularioCicletadaValido()) {
		showLoadingCicletada();
		params = Form.serialize('idCicletadaForm');
		var options = {method:'post',onComplete:showMessageCicletada,parameters:params};
		ajaxEngine.sendRequest('cicletada',options);
	}
}

function showMessageContacto() {
	var load = document.getElementById('divLoadingContacto');
	load.style.visibility = 'hidden';
	var mensaje = document.getElementById('divMensajeContacto');
	mensaje.style.visibility = 'visible';
}

function showMessageCicletada() {
	var load = document.getElementById('divLoadingCicletada');
	load.style.visibility = 'hidden';
	var mensaje = document.getElementById('divMensajeCicletada');
	mensaje.style.visibility = 'visible';
}

function showLoadingCicletada() {
	var load = document.getElementById('divLoadingCicletada');
	load.style.visibility = 'visible';
}
function showLoadingContacto() {
	var load = document.getElementById('divLoadingContacto');
	load.style.visibility = 'visible';
}

function detectBrowser() {
	var browser=navigator.appName;
	var b_version=navigator.appVersion;
	var version=parseFloat(b_version);
	if (browser=="Netscape")
	  return 1;
	else if (browser=="Microsoft Internet Explorer")
	  return 2;
	else 
	  return 3;
}

function openSpot() {
	showLayer('spot');
}

