var menu_elegido;
$(document).ready(function(){
	switch($("body").attr("id")){
		case "Proyecto":
			init_proyecto();
			init_mas_info();
			//altura de descripcion
			var alt = $("#view_long_desc").height();
			if(Number(alt) < 280){
				$("#view_long_desc").css("height","370px");
			}
			ajustar_altura();
			break;
		case "Home":
			init_home();			
			break;
	}
	
	//en todos	
	$("#menu_idiomas").mouseover(function(){
		$(".idioma_oculto").show();
	});
	$("#menu_idiomas").mouseout(function(){
		$(".idioma_oculto").hide();
	});
	
	//descargo google maps
	$(window).unload( function () { GUnload(); } );
	
	//inicio lightbox
	//restart_gallery();
});
//funciones
var muestra_proyecto = function(cual,yo){
	oculta_proyectos();
	$("#"+cual).show();
	$(yo).removeClass('noelegido');
	ajustar_altura();
}

function init_proyecto(){
	$("#btn_desc").click(function(){muestra_proyecto('view_long_desc',this)});
	$("#btn_cali").click(function(){muestra_proyecto('view_cal',this)});
	$("#btn_plan").click(function(){muestra_proyecto('view_plan',this)});
	$("#btn_ubicacion").click(function(){muestra_proyecto('view_ubicacion',this);mostrar_mapa();});
		
	//$("#view_long_desc").show();
	
	//inicio la galeria superior
	//$('#ourManualGallery a').lightbox();
}

function oculta_proyectos(){
	$("#btn_desc").addClass('noelegido');
	$("#btn_cali").addClass('noelegido');
	$("#btn_plan").addClass('noelegido');
	$("#btn_ubicacion").addClass('noelegido');
	
	$("#view_long_desc").hide();
	$("#view_cal").hide();
	$("#view_plan").hide();
	$("#view_ubicacion").hide();
}

function init_home(){
	//galerķa del principio
	$('#slideshow').cycle({'speed':2000,'timeout':5000});
}
	
var state_mas_info = false;
var	intercambia_mas_info = function(){
	if(state_mas_info == false){
		state_mas_info = true;
		$('#mas_info').show();
		$('#btn_solicita').html(txt_cerrar);
	}else{
		state_mas_info = false;
		$('#mas_info').hide();
		$('#btn_solicita').html(txt_solicita);
	}
	ajustar_altura();
}
	
var valida_form = function(){
	var req = 0;
	var tot = 0;
	
	req++;
	if(document.formu_mas_info.fr_nom.value == ''){
		$('#info_fr_nom').html(txt_falta);
	}else{
		$('#info_fr_nom').html('');
		tot++;
	}
	
	req++;
	if(document.formu_mas_info.fr_app.value == ''){
		$('#info_fr_app').html('Falta');
	}else{
		$('#info_fr_app').html('');
		tot++;
	}
	
	req++;
	if(document.formu_mas_info.fr_mail.value == ''){
		$('#info_fr_mail').html(txt_falta);
	}else{
		if(isValidEmail(document.formu_mas_info.fr_mail.value)){
			$('#info_fr_mail').html('');
			tot++;
		}else{
			$('#info_fr_mail').html(txt_mail_incorrecto);
		}
	}
	
	req++;
	if(document.formu_mas_info.fr_tlf.value == ''){
		$('#info_fr_tlf').html(txt_falta);
	}else{
		$('#info_fr_tlf').html('');
		tot++;
	}
	
	req++;
	if(document.formu_mas_info.fr_ass.value == ''){
		$('#info_fr_ass').html(txt_falta);
	}else{
		$('#info_fr_ass').html('');
		tot++;
	}
	
	req++;	
	if(document.formu_mas_info.fr_com.value == ''){
		$('#info_fr_com').html(txt_falta);
	}else{
		$('#info_fr_com').html('');
		tot++;
	}
	
	$("#info_error").html('');
	if(tot == req){
		$("#info_error").html(txt_enviando);
		$.get('../system/functions/enviar_correo.php',{
			'nombre':document.formu_mas_info.fr_nom.value,
			'apellido':document.formu_mas_info.fr_app.value,
			'correo':document.formu_mas_info.fr_mail.value,
			'telefono':document.formu_mas_info.fr_tlf.value,
			'asunto':document.formu_mas_info.fr_ass.value,
			'email_dest':document.formu_mas_info.objetivo.value,
			'comentario':document.formu_mas_info.fr_com.value
			},function(data){
			if(data == 'ok'){
				$("#info_error").html(txt_mensaje_enviado);
			}else{
				$("#info_error").html('Error '+data);
			}
		});
	}
}	
	
function init_mas_info(){
	$('#btn_solicita').click(intercambia_mas_info);
	$('#btn_envia_info').click(valida_form);
}

function ajustar_altura(){
	var col_der = $('.col_venta').height();
	var col_izq = $('.col_mapa').height();
	var cajas_centrales = $('.cajas_centrales').height();
	
	if(col_izq >= col_der){
		//alert('1');
		$('.col_venta').css('height',col_izq);
	}else{
		//alert('2');
		$('.col_venta').css('height','auto');
	}
	
	if(cajas_centrales > col_izq){
		//alert('3');
		$('.col_venta').css('height','auto');
	}
	
	//alert(col_izq+" "+col_der+" "+cajas_centrales);
}

//galeria de thumbs
var thumb_max = 6;
var thumb_act = 0;
var thum_lista;
var thumb_pag = 0;
function init_galeria_thumb(lista){
	thum_lista = lista;
	//pinto los 6 primeros
	thumb_print(thumb_act,thumb_max);
	//pinto las paginas
	thumb_pag = Math.ceil(lista.length/thumb_max);
	if(thumb_pag>0){
		thumb_pags(0);
	}
	//preparamos la galeria gorda
	$("#resto_galeria").html('');
	var ruta;
	for(var i = 0;i<thum_lista.length;i++){
		ruta = thum_lista[i];
		ruta = ruta.replace(/micro/, "maxi")
		$("#resto_galeria").append('<a rel="prettyPhoto[gallery]" href="'+ruta+'">a</a>')
	}
	restart_gallery();
	//lupa
	$("#thumb_pretty").mouseover(function(){$(".lupa").show()});
	$("#thumb_pretty").mouseout(function(){$(".lupa").hide()});
}
function click_thumb_pag(yo) {
	var num = Number($(yo).html())-1;
	thumb_print(num*thumb_max,(num*thumb_max)+thumb_max);
	thumb_pags(num);
}
function thumb_pags(actual){
	$("#thumb_paginacion").html('');
	for(var i = 0;i<thumb_pag;i++){
		if(i==actual){
			$("#thumb_paginacion").append('<li>'+(i+1)+'</li>');
		}else{
			$("#thumb_paginacion").append('<li><a>'+(i+1)+'</a></li>');
		}
	}
	$("#thumb_paginacion li a").click(function(){click_thumb_pag(this)});
}

function thumb_print(ini,end){
	$("#zona_thumbs").html('');
	for(var i = ini;i<end;i++){
		if(thum_lista[i] != undefined){
			$("#zona_thumbs").append('<img src="'+thum_lista[i]+'" />')
		}
	}
	$("#zona_thumbs img").click(function(){cambia_thumb_gros(this)});
}
function cambia_thumb_gros(yo){
	var ruta = $(yo).attr('src');
	ruta = ruta.replace(/micro/, "mini")
	$(".fotopromo_gran").attr('src',ruta);
	//actualizo lightbox
	ruta = ruta.replace(/mini/, "maxi");
	$("#thumb_pretty").attr('href',ruta);
}

function restart_gallery(){
	$("#thumb_pretty").click(function(){$(".mapa_flash").css('display','none');});
	$("a[rel^='prettyPhoto']").prettyPhoto({
		animationSpeed: 'normal', /* fast/slow/normal */
		padding: 40, /* padding for each side of the picture */
		opacity: 0.35, /* Value betwee 0 and 1 */
		showTitle: true, /* true/false */
		allowresize: true, /* true/false */
		counter_separator_label: '/', /* The separator for the gallery counter 1 "of" 2 */
		theme: 'blau_bmk', /* light_rounded / dark_rounded / light_square / dark_square */
		callback: function(){$(".mapa_flash").css('display','block');}
	});
}

//google maps
var mapa_lat;
var mapa_lon;
var mapa_punto;
var geocoder = null;
function gmaps_initialize(lat,lon) {
	mapa_lat = lat;
	mapa_lon = lon;
	mapa_punto = new GLatLng(mapa_lat, mapa_lon);
}

function gmaps_initialize_adress(address){
	geocoder = new GClientGeocoder();
	if (geocoder) {
		geocoder.getLatLng(address,function(point){
			if (!point) {
				alert(address + " not found");
			} else {
				mapa_punto = point;				
				mapa_lat = point.lat();
				mapa_lon = point.lng();
			}
		})
	}
}


function mostrar_mapa(){
	if (GBrowserIsCompatible()) {
		var map = new GMap2(document.getElementById("map_canvas"));
		map.setCenter(new GLatLng(mapa_lat, mapa_lon), 13);//donde empieza el mapa
		map.setUIToDefault();
		        
		
		map.addOverlay(new GMarker(mapa_punto));// mostar un punto en esta coordenada
		
		ajustar_altura();
	}
}

//misc
function isValidEmail(email, required) {
    if (required==undefined) {   // if not specified, assume it's required
        required=true;
    }
    if (email==null) {
        if (required) {
            return false;
        }
        return true;
    }
    if (email.length==0) {  
        if (required) {
            return false;
        }
        return true;
    }
    if (! allValidChars(email)) {  // check to make sure all characters are valid
        return false;
    }
    if (email.indexOf("@") < 1) { //  must contain @, and it must not be the first character
        return false;
    } else if (email.lastIndexOf(".") <= email.indexOf("@")) {  // last dot must be after the @
        return false;
    } else if (email.indexOf("@") == email.length) {  // @ must not be the last character
        return false;
    } else if (email.indexOf("..") >=0) { // two periods in a row is not valid
	return false;
    } else if (email.indexOf(".") == email.length) {  // . must not be the last character
	return false;
    }
    return true;
}

function allValidChars(email) {
  var parsed = true;
  var validchars = "abcdefghijklmnopqrstuvwxyz0123456789@.-_";
  for (var i=0; i < email.length; i++) {
    var letter = email.charAt(i).toLowerCase();
    if (validchars.indexOf(letter) != -1)
      continue;
    parsed = false;
    break;
  }
  return parsed;
}