jQuery(document).ready(function() {
	jQuery("#UVEForm").submit( function (){  
		validaForm();
		return false;
	});
	
	jQuery("#UVEForm input[name='quiererespuesta']").change( function() {
		if (jQuery("#UVEForm input[name='quiererespuesta']:checked").val() == 'No') {
			jQuery("#UVEForm [name=respuesta]").attr("disabled", "disabled");
			jQuery("#UVEForm [name=metarespuesta]").attr("disabled", "disabled");
		} else{
			jQuery("#UVEForm [name=respuesta]").attr("disabled", "");
			jQuery("#UVEForm [name=metarespuesta]").attr("disabled", "");
		}
	});

	var metarespuestaDefault = "Introdúzcalo aquí";
	jQuery("#UVEForm [name=metarespuesta]").val(metarespuestaDefault);
	jQuery("#UVEForm [name=metarespuesta]").focus(function() { if (jQuery(this).val() == metarespuestaDefault) jQuery(this).val(''); });
	jQuery("#UVEForm [name=metarespuesta]").blur(function() { if (jQuery(this).val() == '') jQuery(this).val(metarespuestaDefault); });
	jQuery("#UVEForm [name=respuesta]").change(function() { jQuery("#UVEForm [name=metarespuesta]").val(metarespuestaDefault); });

	var fechaDefault = "DD/MM/YYYY";
	jQuery("#UVEForm [name=fecha]").val(fechaDefault);
	jQuery("#UVEForm [name=fecha]").focus(function() { if (jQuery(this).val() == fechaDefault) jQuery(this).val(''); });
	jQuery("#UVEForm [name=fecha]").blur(function() { if (jQuery(this).val() == '') jQuery(this).val(fechaDefault); });

	var horaDefault = "HH:MM";
	jQuery("#UVEForm [name=hora]").val(horaDefault);
	jQuery("#UVEForm [name=hora]").focus(function() { if (jQuery(this).val() == horaDefault) jQuery(this).val(''); });
	jQuery("#UVEForm [name=hora]").blur(function() { if (jQuery(this).val() == '') jQuery(this).val(horaDefault); });
	
	jQuery("#linkConfidencialidad").colorbox({width:"750px", height:"80%", iframe:true});
	updateHideflash();
	
	var x = jQuery("#UVEForm [name=matricula]").position().left + 5;
	var y = jQuery("#UVEForm [name=matricula]").position().top - 48;
	jQuery("#tooltip").css({left:x,top:y});
	jQuery("#tooltip").hide();
	jQuery("#UVEForm [name=matricula]").focus(function() { jQuery("#tooltip").show('fast'); });
	jQuery("#UVEForm [name=matricula]").blur(function() { jQuery("#tooltip").hide('fast'); });
	
});

function updateHideflash(){
	jQuery().bind('cbox_open', function(){ 
		jQuery("#sidebar_flash").hide();
	}).bind('cbox_closed', function(){ 
		jQuery("#sidebar_flash").show();
	});
}

function validaForm(){
	var valid = true;
	jQuery('.formError').remove();
	
	var errorDefault = '<span class="formError">* Este dato es necesario</span>';
	var errorTypeDefault = '<span class="formError">* Introduzca un dato válido</span>';
	var errorTfn = '<span class="formError">* Introduzca un n&uacute;mero de tel&eacute;fono v&aacute;lido</span>';
	var errorMail = '<span class="formError">* Introduzca un e-mail v&aacute;lido</span>';
	
	var nombre = jQuery("#UVEForm [name=nombre]");
	var apellidos = jQuery("#UVEForm [name=apellidos]");
	var dni = jQuery("#UVEForm [name=dni]");
	var cp = jQuery("#UVEForm [name=cp]");
	var tfn = jQuery("#UVEForm [name=tfn]");
	var email = jQuery("#UVEForm [name=email]");
	var matricula = jQuery("#UVEForm [name=matricula]");
	var fecha = jQuery("#UVEForm [name=fecha]");
	var hora = jQuery("#UVEForm [name=hora]");
	var direccion = jQuery("#UVEForm [name=direccion]");	
	var descripcion = jQuery("#UVEForm [name=descripcion]");	
	var respuesta = jQuery("#UVEForm [name=respuesta]");
	var metarespuesta = jQuery("#UVEForm [name=metarespuesta]");
	
	if (!isString(nombre.val()) ) {
		valid = false;
		nombre.parent().append(errorDefault);
	}
	if (!isString(apellidos.val()) ) {
		valid = false;
		apellidos.parent().append(errorDefault);
	}
	if (!isNIF(jQuery.trim(dni.val())) ) {
		valid = false;
		dni.parent().append(errorTypeDefault);
	}
	if (!isString(cp.val(),5) ) {
		valid = false;
		cp.parent().append(errorTypeDefault);
	}
	if (!isTelephone(tfn.val())) {
		valid = false;
		tfn.parent().append(errorTfn);
	}
	if (!isMail(email.val())) {
		valid = false;
		email.parent().append(errorMail);
	}
	if (!isString(matricula.val()) ) {
		valid = false;
		matricula.parent().append(errorDefault);
	}
	if (!isDate(fecha.val()) ) {
		valid = false;
		fecha.parent().append(errorTypeDefault);
	}
	if (!isTime(hora.val()) ) {
		valid = false;
		hora.parent().append(errorTypeDefault);
	}
	if (!isString(direccion.val()) ) {
		valid = false;
		direccion.parent().append(errorDefault);
	}
	if (!isString(descripcion.val()) ) {
		valid = false;
		descripcion.parent().append(errorDefault);
	}

	if (jQuery("#UVEForm input[name='quiererespuesta']:checked").val() != 'No') {
		if (respuesta.val() == "E-Mail") {
			if (!isMail(metarespuesta.val())) {
				valid = false;
				metarespuesta.parent().append(errorMail);
			}
		} else {
			if (!isTelephone(metarespuesta.val())) {
				valid = false;
				metarespuesta.parent().append(errorTfn);
			}
		}
	}
	
	if (valid) jQuery("#UVEForm").submit();
}
