/**
 * Carga una página dentro del contenedor de texto.
 * @param url String
 * @param title String
 */
function ajaxLoad(url, title){
    locationUrl = url;
    url += "?ajax=1&";
    $("#texto").load(url);
    $("#top").animate({
	width: "196px",
	opacity: 0
    }, 1000, false, function(){
	$("#top").html(title);
	$("#top").animate({
	    width: "675px",
	    opacity: 1
	}, 1000);
    });
    document.title = "RUBIK -> " + title;
    //window.location.hash(locationUrl);
    return false;
}

$(document).ready(function(){
    $("a")
    .filter(".linkQuienes").click(function(){
	ajaxLoad(this, "Quiénes somos?");
	return false;
    })
    .end()
    .filter(".linkInicio").click(function(){
	ajaxLoad(this, "Inicio");
	return false;
    })
    .end()
    .filter(".linkServicio").click(function(){
	ajaxLoad(this, "Servicio técnico");
	return false;
    })
    .end()
    .filter(".linkLinux").click(function(){
	ajaxLoad(this, "Linux");
	return false;
    })
    .end()
    .filter(".linkProgramacion").click(function(){
	ajaxLoad(this, "Programación");
	return false;
    })
    .end()
    .filter(".linkDesarrollo").click(function(){
	ajaxLoad(this, "Desarrollo web");
	return false;
    })
    .end()
    .filter(".linkLinks").click(function(){
	ajaxLoad(this, "Links");
	return false;
    })
    .end()
    .filter(".linkContacto").click(function(){
	ajaxLoad(this, "Contacto");
	return false;
    })
    .end();

    setInterval(cambiarCabezal, 10000);
})
/**
 * Returns a random integer between min and max
 * Using Math.round() will give you a non-uniform distribution!
 * @param min Integer
 * @param max Integer
 * @return Integer
 */
function getRandomInt(min, max){
    return Math.floor(Math.random() * (max - min + 1)) + min;
}
jQuery.preloadImages = function(){
    for(var i = 0; i<arguments.length; i++) {
	jQuery("<img>").attr("src", arguments[i]);
    }
}

/**
 * Hace foco en el objeto cuyo id sea el recibido como parametro
 * @author BR1
 * @param idObj String
 */
function foco(idObj){
    $('#'+idObj).focus();
}

/**
 * Valida el formato de una dirección de e-mail
 * @author BR1
 * @param mail String
 **/
function validarMail(mail){
    var regExp  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
    if (!regExp.test(mail)){
	return false;
    }else{
	return true;
    }
}

/**
 * VERIFICA SI UN STRING ES TEXTO
 * @author BR1
 * @param texto String
 */
function validarTexto(texto){
    if(texto == null || texto.length == 0 ){
	return false;
    }else{
	if(!isNaN(texto)){
	    return false;
	}else{
	    return true;
	}
    }
}

var anchoAct = "200px"
function cambiarCabezal(){
    if(anchoAct=="200px"){
	anchoAct = "420px";
    }else{
	anchoAct = "200px";
    }
    $("#banner_txt").animate({
	width: anchoAct
    }, 2000, false);
    while(cabezalAnterior == cabezActual){
	cabezActual = getRandomInt(1, 3);
    }
    cabezalAnterior = cabezActual;
    $("#bannerImg").attr("src","img/top/cabezal"+cabezActual+".jpg");
}
function validarForm(){
    $('#mensajes').html("Enviando...");
    nombre = $("#nombre").val();
    if(!validarTexto(nombre)){
	$("#mensajes").html("Por favor ingres&aacute; tu nombre");
	foco("nombre");
	return false;
    }
    mail = $("#mail").val();
    if(!validarTexto(mail)){
	$("#mensajes").html("Por favor ingres&aacute; tu e-mail");
	foco("mail");
	return false;
    }else{
	if(!validarMail(mail)){
	    $("#mensajes").html("Formato de e-mail incorrecto");
	    foco("mail");
	    return false;
	}
    }
    consulta = $("#consulta").val();
    if(!validarTexto(consulta)){
	$("#mensajes").html("Por favor ingres&aacute; la consulta");
	foco("consulta");
	return false;
    }
    /*
    var dataString = 'nombre='+ nombre +
	'&mail=' + mail +
	'&Enviar=1' +
	'&consulta=' + consulta;
    $.ajax({
	type: "POST",
	url: "sendForm.php?ajax=1",
	data: dataString,
	success: function(mensaje) {
	    $("#Enviar").attr("disabled", "disabled");
	    $('#nombre').val("");
	    $('#mail').val("");
	    $('#consulta').val("");
	    $('#mensajes').html(mensaje)
	    return false;
	}
    });
     */
    return true;
}
