/**
* Realiza las acciones necesarias para dar funcionalidad a los botones
*/
function cargaBotonesSubmit() {
}
/**
* Valida el formulario de contacto y muestra los errores según el idioma
* @param array errores: array asociativo con el nombre del error y el valor a mostrar
*
*/
function validaContacto(errores) {
$('#contact_submit').click(function() {
$('form#contact-form .contact-error').remove();
$('#sent-form').hide();
var hasError = false;
$('form#contact-form .requiredField').each(function() {
if(jQuery.trim($(this).val()) == '') {
var labelText = $(this).prev('label').text();
$(this).parent().append(''+errores.required+'');
$(this).addClass('inputError');
hasError = true;
} else if($(this).hasClass('email')) {
var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
if(!emailReg.test(jQuery.trim($(this).val()))) {
var labelText = $(this).prev('label').text();
$(this).parent().append(''+errores.invalid+'');
$(this).addClass('inputError');
hasError = true;
}
}
});
if (!hasError) {
values = $('#contact-form').serialize();
$.ajax({
url: "send.php",
type: "post",
data: values,
beforeSend: function() {
$('#form_busqueda').hide();
},
success: function(data){
if (data=='OK') {
limpiaFormularioContacto();
$('#sent-form').show();
}
$('#form_busqueda').show();
},
error: function (xhr, ajaxOptions, thrownError) {
}
});
}
});
}
/*
* Elimina los campos no relevantes en la ordenación, dependiendo de los filtros seleccionados, y activa la correspondiente
*/
function opcionesOrdenacion() {
if ($('#localidad').val()=='NULL') {
$('#ord_zona').remove();
} else {
$('#ord_poblacion').remove();
}
if ($('#tipo_propiedad').val()!="NULL") {
$('#ord_tipo_propiedad').remove();
}
$('#select_ordenacion').val($('#ordenacion').val());
}
/*
* Activa la propiedad "Onchange" del filtro de ordenación, llamando a la función de búsqueda de nuevo.
*/
function activaFiltro() {
$('#select_ordenacion').change(function() {
$('#ordenacion').val($(this).val());
if ($('#referencia').val('ref')=='') { $('#referencia').val('');}
$('#form_busqueda').submit();
});
}
/*
* Rellena el formulario de búsqueda con los valores que se le pasan por parámetro,
* como extra, rellena el input con id 'referencia' con el valor 'ref'
* @param valores: array asociativo para cada valor que puede adoptar el formulario
*/
function fillFormValues(valores) {
$.each(valores, function(key,value){
if (value=='on') { $('#'+key).prop('checked',true); }
else { $('#'+key).val(value); }
});
if ($('#referencia').val()=='') { $('#referencia').val('');}
}
/*
* Verifica si una propiedad está o no en favoritos. Retorna true en caso afirmativo, false en caso contrario
* @param id: identificador de la propiedad favorita
*/
function estaEnFavoritos(id) {
//Miramos si existe un elemeto
con id listshop_(id), si es así, retornamos true, en caso contrario, false
if ($("#listshop_"+id).length > 0) { return true; }
else { return false; }
}
/**
* Pone la clase adecuada al boton de favoritos dependiendo de si está ya en favoritos o no.
* @param id
*/
function setButtonFavoritos(id) {
if (estaEnFavoritos(id)) { $('#fav_button').removeClass('red').addClass('greyOff'); }
else { $('#fav_button').removeClass('greyOff').addClass('red'); }
}
/*
* Elimina el favorito de la sesión, previa confirmación
* @param confirmTXT: string de confirmación de borrado
* @param id: identificador de la propiedad favorita
*/
function delFavoritos(confirmTXT,id) {
if (confirm(confirmTXT)) {
values = {action: 'delFavorito',id: id};
$.ajax({
url: "webservice.php",
type: "post",
data: values,
success: function(data){
$("#listshop_"+id).remove();
if ($("#fav_button").length>0) {
$("#fav_button").removeClass('greyOff').addClass('red');
}
},
error: function (xhr, ajaxOptions, thrownError) {
}
});
}
}
/*
* Añade un favorito de la sesión, previa confirmación
* @param params: array asociativo con el identificador de la propiedad, los textos de confirmación de añadir y borrar propiedad, y texto de borrar
*/
function addFavoritos(params) {
if (!estaEnFavoritos(params['id'])) {
if (confirm(params["texto_confirmacion_anyadir"])) {
values = {action: 'addFavorito',id: params["id"]};
$.ajax({
url: "webservice.php",
type: "post",
data: values,
success: function(data){
var li =
"\n" +
""+params['nombre']+"" +
"\t\n"+
"\t\t"+params['texto_borrar']+"\n"+
"\t\n"+
"\t"+params['referencia']+""+
"";
$("#listshop").append(li);
$("#fav_button").removeClass('red').addClass('greyOff');
$("#mispropiedades").show();
},
error: function (xhr, ajaxOptions, thrownError) {
}
});
}
}
}
function cargaPagina(pagina) {
/*$('#pagina').val(pagina);
$('#form_busqueda').submit();
values = {action: 'getPaginaResultado',pagina: pagina};
$.ajax({
url: "webservice.php",
type: "post",
data: values,
beforeSend: function () {
//$('#thums').hide();
$('#thumbs li').remove();
},
success: function(data){
$('#thumbs').append(data);
/* Slider en resutlados */
/*
$('.flexslider.multiple').flexslider({
animation: "fade",
slideshowSpeed: 5000,
animationDuration: 1000,
slideshow: false,
directionNav: true,
controlNav: false,
animationLoop: false,
smoothHeight: false,
pauseOnHover: false,
keyboard: false,
touch: true
});
$('span.npagina').html(pagina+1);
$('html, body').animate({ scrollTop: 0 }, 'slow');
$(function() {
$("img.lazy").lazyload({
event : "sporty"
});
});
var timeout = setTimeout(function() {$("img.lazy").trigger("sporty")}, 2000);
},
error: function (xhr, ajaxOptions, thrownError) {
}
});*/
}
function limpiaFormularioContacto() {
$('#contact-form').find(':input').each(function() {
switch(this.type) {
case 'password':
case 'select-multiple':
case 'select-one':
case 'text':
case 'textarea':
$(this).val('');
break;
case 'checkbox':
case 'radio':
this.checked = false;
}
});
}
function sendform(nom) {
var d = document.getElementById(nom);
if (d == undefined) _d('el formulario "' + nom + '" NO EXISTE');
else {
if (d.submit != undefined) d.submit();
//else _d('error: ' + nom + 'no es un formulario');
else alert('error: ' + nom + 'no es un formulario');
}
}