//Convertimos los enlaces que tengan clase external a blank
$(document).ready(function () {
    $("a.external").attr('target', '_blank');
});

//----COMPROBAR FORMS
//Filtros
var filters = {
    required: function(el) {return ($(el).val() != '' && $(el).val() != -1);},
    number: function(el) {return ($(el).val()=='' || !isNaN($(el).val()))},
	email: function(el) {return /^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!\.)){0,61}[a-zA-Z0-9]?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9\-](?!$)){0,61}[a-zA-Z0-9]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/.test($(el).val());},
    telefono: function(el){return /^[0-9]*$/.test($(el).val());},
	isChecked: function(el) {
			result=false; 
			$("form").find("input").each(function(y,radio) {
				if (radio.name==el.name) {if (radio.checked) result=true;}
			});
			return result;
	},
	nomultiples: function (el) {return (/[;.\/,]/.test($(el).val())?false:true);},
	coincideClave: function(el) {return $(el).val()==$("#pass").val();},
	isImage: function(el) {valor=$(el).val(); return (valor != '' && (valor.indexOf('jpg')>0 || valor.indexOf('jpeg')>0 || valor.indexOf('gif')>0));}
};	
// Extensiones
$.extend({
	stop: function(e){
        if (e.preventDefault) e.preventDefault();
        if (e.stopPropagation) e.stopPropagation();
    }
});
// Código
$(document).ready(function(){
//alert("entra en ready");
	$("form").bind("submit", function(e){
//alert("pasa por form bind");
		//Limpiamos las clases de error anteriores si las hay
//alert($(this).find(".error"));
		$(this).find(".error").removeClass("error");         //--> FJRM: comentamos esta linea porque siempre elimina el error al darle a actualizar aunque no haya sido corregido. JAIME->SI NO LO ELIMINAMOS, NO DEJA NUNCA AVANZAR
		$(this).find(".errorSpan").removeClass("errorSpan"); //--> FJRM: comentamos esta linea porque siempre elimina el error al darle a actualizar aunque no haya sido corregido. JAIME->SI NO LO ELIMINAMOS, NO DEJA NUNCA AVANZAR
		
		if (typeof filters == 'undefined') return;
	    $(this).find("input, textarea, select").each(function(x,el){
	        if ($(el).attr("className") != 'undefined') {
//alert($(el).attr("className"));
	        $.each(new String($(el).attr("className")).split(" "), function(x, klass){
	            if ($.isFunction(filters[klass]))
	                if (!filters[klass](el))  {
						//Definimos las clases de error
						$(el).addClass("error");
						$(el.parentNode).addClass("errorSpan");
					}
			});
	        }
	    });
		if ($(this).find(".error").size() > 0) {
			$.stop(e || window.event);
			$(this).find(".error:first").focus();

			$('[#boton_compra').removeClass("btn_comprar right");	// FJRM: Si hay errores anulamos el botón de compra
			$('[#boton_compra').addClass("btn_comprar_off right");	// FJRM: Si hay errores anulamos el botón de compra
			$('[#lnk_compra').attr("href", "#")						// FJRM: Si hay errores anulamos el botón de compra
			$('[#boton_compra').html("&nbsp;comprar&nbsp;");		// FJRM: Si hay errores anulamos el botón de compra

			//Movemos scroll hasta el error
			var targetOffset = $(this).find(".error:first").offset().top;
			targetOffset-=30;
			$('html, body').animate({scrollTop: targetOffset}, 1000);	
			//Fin movimiento scroll hasta el error
			return false;
		}
	    return true;
	});
});
//---- FIN COMPROBAR FORMS

function copiar(origen,destino) {
	if (origen=='') origen='datosPersonales';
	$("#"+origen+" :input").each(function() {
		nombre=$(this).attr('name');
		nombre=nombre.replace('_entr','');
		$("#"+nombre+"_"+destino).val($(this).val());
		//Si es el nombre, le añadimos los campos de apellidos
		if (nombre=='nombre' && destino!='fact') $("#"+nombre+"_"+destino).val($(this).val()+' '+$("#apellido1").val()+' '+$("#apellido2").val());	
	});
	if (destino=='fact') $('#cif_fact').addClass('required');
}

var todoCorrecto=true;	//Para ie8->carrito: si das a actualizar directamente no se bloqueaba
function comprobar(id_producto) {
	stock=$("#STOCK"+id_producto).val();
	cantidad=$("#CANTIDAD"+id_producto).val();
	if (cantidad<0) {
		$("#CANTIDAD"+id_producto).addClass('error');
		todoCorrecto=false;
		return false;
	}
	if (stock) {
		stock=stock*1;
		cantidad=cantidad*1;
		if (cantidad>stock) {
			$("#CANTIDAD"+id_producto).addClass('error');
			$("#infoStock"+id_producto).css('color','#ff0000').show();
			todoCorrecto=false;
			return false;	
		}	else {
			$("#CANTIDAD"+id_producto).removeClass('error');
			$("#infoStock"+id_producto).hide();
		}
	}
	peso=$("#PESO"+id_producto).val();
	if (peso) {
		minimo=$("#PESO_MINIMO"+id_producto).val();
		maximo=$("#PESO_MAXIMO"+id_producto).val();
		peso=peso.replace(',','.');
		peso=peso*1;
		minimo=minimo*1;
		if (peso<minimo) {
			$("#PESO"+id_producto).addClass('error');
			$("#infoPesos"+id_producto).css('color','#ff0000').show();
			todoCorrecto=false;
			return false;
		}	else {
			$("#PESO"+id_producto).removeClass('error');
			$("#infoPesos"+id_producto).hide();
		}
		maximo=maximo*1;
		if (peso>maximo) {
			$("#PESO"+id_producto).addClass('error');
			$("#infoPesos"+id_producto).css('color','#ff0000').show();
			todoCorrecto=false;
			return false;
		}	else {
			$("#PESO"+id_producto).removeClass('error');
			$("#infoPesos"+id_producto).hide();
		}		
	} 
	todoCorrecto=true;
	return true;
}

$(document).ready(function () {
	$("#cerrarCapa").click(function(event) {
		event.preventDefault();
		$("#capaCesta").slideUp('slow');
	});
});

//Funcion para que solo sea obligatoria la provincia si el país es España
function ckProvincia(idform,idPais) {
	domProvincia = '#provincia_'+idform;
	domlblProvincia = '#lblProvincia_'+idform;
	if(idPais=='11') {
		$(domProvincia).addClass('required');
		$(domlblProvincia).html('Provincia *');
		$(domProvincia).removeAttr('disabled');
	} else {
		$(domProvincia).removeClass('required')
		$(domlblProvincia).html('Provincia');
		$(domProvincia).val('');
		$(domProvincia).attr('disabled', 'disabled');
	}
}

