/** *@file productos.js *@date 11/03/2020 *@author Cristina Caba García (cristinacaba1983@gmail.com) **/ function Productos() { //Definición de las variables de clases js útiles. this.iu = new Iu(); this.ajax = new Ajax(BASE_URL); //Combos fijos this.cantidadProductos = null; //Cantidad de chapas seleccionadas. this.numeroDisenho = null; //Número de diseños seleccionados. //Combo características imagen this.idCaracteristica = null; this.idValorCaracteristica = null; this.nombreValorCaracteristica = null; //Contedores this.contadorCarga = 0; //Contador de carga. this.contadorCargaSelectColores = 0; //Contador de carga del select de los colores de textil. //Identificadores. this.idCategoria = null; //Identificador de la caategoría. this.idProducto = null; //Identificador del producto. this.idPresupuesto = null; //identificador del presupuesto; this.idRangoMaximo = null; //Identificador del rango máximo de la categoría. this.idSubcategoria = null; //Identificador de la subcategoría. //Medidas this.medidaDefAlto = null; this.medidaDefAncho = null; this.medidaMinAlto = null; this.medidaMinAncho = null; this.medidaMaxAlto = null; this.medidaMaxAncho = null; //Objeto. this.caracteristicas = null; //Objeto contenedor de las características de las categorías. this.categorias = null; //Objeto contenedor de las categorías. this.imagenProducto = null; //Imagen del producto cargado. this.imagenesSubcategorias = null; //Objeto contenedor de las imágenes de las subcategorías this.imagenesProductos = null; //Objeto contenedor de las imágenes de los productos.. this.imagenPlantilla = null; //Imagen de la Plantilla del producto. this.preciosNDiseno = null; //Objeto contenedor de los precios por número de diseño. this.preciosRangosMetro = null; //Objeto contenedor de los precios por rangos por metro del producto. this.productos = null; //Objeto contenedor de los productos. this.subcategorias = null; //Objeto contenedor de las subcategorías. this.valores = null; //Objeto contenedor de los valores de las subcategorías de las características de las categorías. this.valorCategoria = null; //Valor de la categoría a la que pertenece el producto. //Precios. this.precio = 0; //Precio del producto sin IVA con las condiciones selaccionadas, es el precio sin iva final. this.precioSinIVA = 0; //Precio del producto sin IVA. this.precioSinIVAUnidad = 0; //Precio unitario del producto sin IVA. this.precioSinIVADiseno = 0; //Precio del producto sin IVA por disenos. this.precioSinIVADisenoUnidad = 0; //Precio unitario del producto sin IVA por disenos. this.precioSinIVADescuento = 0; //Precio del producto sin IVA con descuento del patrocinio. this.precioSinIVADescuentoUnidad = 0; //Precio unitario del producto sin IVA con descuento del patrocinio. this.precioSinIVAPersonalizado = 0; //Precio del producto sin IVA con personalización this.precioSinIVAPersonalizadoUnidad = 0; //Precio unitario del producto sin IVA con personalización this.precioSinIVADescuentoDiseno = 0; //Precio del producto sin IVA con descuento del patrocinio por diseños. this.precioSinIVADescuentoDisenoUnidad = 0; //Precio unitario del producto sin IVA con descuento del patrocinio por diseños. this.precioSinIVADescuentoPersonalizado = 0; //Precio del producto sin IVA con descuento de patocinio y personalización this.precioSinIVADescuentoPersonalizadoUnidad = 0; //Precio unitario del producto sin IVA con descuento de patocinio y personalización this.precioSinIVADisenoPersonalizado = 0; //Precio del producto sin IVA con diseño y personalización this.precioSinIVADisenoPersonalizadoUnidad = 0; //Precio unitario del producto sin IVA con diseño y personalización this.precioSinIVADescuentoDisenoPersonalizado = 0; //Precio del producto sin IVA con descuento de patrocinio, diseño y personalización. this.precioSinIVADescuentoDisenoPersonalizadoUnidad = 0;//Precio unitario del producto sin IVA con descuento de patrocinio, diseño y personalización. this.precioConIVA = 0; //Precio del producto con IVA. this.precioConIVA = 0; //Precio unitario del producto con IVA. this.precioConIVADiseno = 0; //Precio del producto con IVA por diseños. this.precioConIVADisenoUnidad = 0; //Precio unitario del producto con IVA por diseños. this.precioConIVADescuento = 0; //Precio del producto con IVA y con descuento del patrocinio. this.precioConIVADescuentoUnidad = 0; //Precio unitario del producto con IVA y con descuento del patrocinio. this.precioConIVAPersonalizado = 0; //Precio del producto con IVA y personalizado. this.precioConIVAPersonalizadoUnidad = 0; //Precio unitario del producto con IVA y personalizado. this.precioConIVADescuentoDiseno = 0; //Precio del producto con IVA y con descuento del patrocinio por diseños. this.precioConIVADescuentoDisenoUnidad = 0; //Precio unitario del producto con IVA y con descuento del patrocinio por diseños. this.precioConIVADescuentoPersonalizado = 0; //Precio del producto con IVA y con descuento de patrocinio y personalizado. this.precioConIVADescuentoPersonalizadoUnidad = 0; //Precio unitario del producto con IVA y con descuento de patrocinio y personalizado. this.precioConIVADisenoPersonalizado = 0; //Precio del producto con IVA y con diseño y personalizado. this.precioConIVADisenoPersonalizadoUnidad = 0; //Precio unitario del producto con IVA y con diseño y personalizado. this.precioConIVADescuentoDisenoPersonalizado = 0; //Precio del producto con IVA y con descuento de patrocinio, diseño y personalizado. this.precioConIVADescuentoDisenoPersonalizadoUnidad = 0;//Precio unitario del producto con IVA y con descuento de patrocinio, diseño y personalizado. this.precioUnitario = 0; //Precio de la del producto en su rango con las condiciones seleccionadas. //Totales this.totalCaracteristicas = 0; this.totalPreciosRangosMetro = 0; //Varios. this.caracteristicaDatoVariable = null; this.caracteristicaMontaje = null; this.caracteristicaPliego = null; this.caracteristicaTallaje = null; this.carrito = null; //Objeto contenedor del carrito de la sesión. this.fondoSeleccionado = "#000000"; //Fondo de la chapa en el diseñador. Valor hexadecimal #ffffff. this.hayStock = 0; //Control de botones en función de si hay o no stock del producto cargado. this.maximoRangoMetro = 0; //El máximo de los rangos, para validarlo. this.mensajePresupuesto = ""; //Mensaje del correo del presupuesto. this.mensajePresupuestoEspanol = ""; //Mensaje del correo del presupuesto en español. this.nPliegos = 0; this.pesoProducto = null; //Peso del producto. this.pliego = null; this.precioBaseReal = 0; //Precio base del producto unitario en su máximo rango, es decir, el más bajo. this.rangoMaximo = 0; //Rango máximo del producto. this.rangoMinimo = 0; //Rango mínimo del producto. this.referrer = null; //Página de la que se procede, si es menu es porque se ha accedido desde el menú y no seleccionanado un producto de algún carrusel. this.textoMensaje = ""; //Texto de aviso para el diseñador en función del valor de la característica. this.textoNombreSeo = null; //Texo del nmobre seo del producto seleccionado. this.tipoMedida = null; this.valorCaracteristicaTallaje = ""; this.valorCaracteristicaTallajeEspanol = ""; this.codigoIdioma = null; miCarrusel = null; this.arrayIdsSubcategoriasSinDisenos = []; this.arrayIdsProductosSinDisenos = []; //Funciones de clase this.iniciar = function() { this.arrayIdsSubcategoriasSinDisenos = []; this.arrayIdsProductosSinDisenos = []; //Limpiamos. $(".avisopequecaracteristicas").hide(); $("#btn_carrito").hide(); $("#btn_carrito").prop("disabled",true); $("#btn_dtf").hide(); $("#btn-menos-cantidadProducto").prop("disabled",true); $("#btn-menos-disenhoProducto").prop("disabled",true); $("#btn_presupuesto").prop("disabled",true); $("#precio").hide(); $("#rangoMaximo").hide(); $("#medidasMaximo").hide(); $("#ancho-error").hide(); $("#ancho-error-requerido").hide(); $("#alto-error-requerido").hide(); $("#medidas-error-nulo").hide(); //Busccamos al usuario this.buscarUsuario(); //Implementamos el dataLayer del carrusel de productos relacionedos this.dataLayerCarruselProductosRelacionados(); //Cargamos el carrito lo primero. this.cargarCarrito(); //Identificadores this.idCategoria = $("#idCategoriaProducto").val(); this.idProducto = $("#idProducto").val(); this.idProductoStock = $("#idProductoStock").val(); this.idSubcategoria = $("#idSubcategoriaProducto").val(); if(this.arrayIdsSubcategoriasSinDisenos.includes(parseInt(this.idSubcategoria)) || this.arrayIdsProductosSinDisenos.includes(parseInt(this.idProducto))) $(".dependientesDisenoPoducto").hide(); //Cargamos valores this.caracteristicaDatoVariable = $("#caracteristicaDatoVariable").val(); this.caracteristicaMontaje = $("#caracteristicaMontaje").val(); this.caracteristicaPliego = $("#caracteristicaPliego").val(); this.caracteristicaTallaje = $("#caracteristicaTallaje").val(); if(this.caracteristicaTallaje != null && this.caracteristicaTallaje != "") { this.cantidadProductos = 0; $("#cantidad").val("0"); $(".spanCantidadTallaje").html("0"); } else this.cantidadProductos = $("#cantidad").val(); this.codigoIdioma = $("#codigoIdioma").val(); this.medidaDefAlto = $("#medidaDefAlto").val(); this.medidaDefAncho = $("#medidaDefAncho").val(); this.medidaMinAlto = $("#medidaMinAlto").val(); this.medidaMinAncho = $("#medidaMinAncho").val(); this.medidaMaxAlto = $("#medidaMaxAlto").val(); this.medidaMaxAncho = $("#medidaMaxAncho").val(); this.numeroDisenho = $("#ndesigns").val(); this.pesoProducto = $("#pesoProducto").val(); this.precioBaseReal = $("#precioBaseRealProducto").val(); this.referrer = $("#referrerProducto").val(); this.textoNombreSeo = $("#textoNombreSeo").val(); this.valorCategoria = $("#valorCategoriaProducto").val(); //Cogemos el rango máximo y el rango mínimo del producto this.idRangoMaximo = $("#idRangoMaximo").val(); this.rangoMaximo = $("#rangoMaximoProducto").val(); this.rangoMinimo = $("#rangoMinimoProducto").val(); this.maximoRangoMetro = 0; //Cogemos el booleano del stock del producto this.hayStock = $("#hayStockProducto").val(); this.imagenProducto = $("#imagenSubcategoriaProducto").val(); this.imagenPlantilla = $("#imagenPlantillaProducto").val(); this.totalPreciosRangosMetro = $("#totalPreciosRangosMetro").val(); //Contador de carga this.contadorCarga = 0; this.contadorCargaSelectColores = 0; //Buscamos los objetos necesarios. this.cargarCategorias(); this.cargarCaracteristicas(); this.cargarImagenesSubcategorias(); this.cargarPrecioNDiseno(); this.cargarPreciosRangosMetro(); this.cargarProductos(); this.cargarSubcategorias(); this.cargarValoresCaracteristicas(); //Iniciamos la animación miCarrusel = new Carousel(); miCarrusel.constructor(); miCarrusel.iniciar(); } this.recargarImprescindibles = function(){ //Limpiamos. $(".avisopequecaracteristicas").hide(); //$("#btn_carrito").hide(); $("#btn_carrito").attr("disabled",true); //$("#btn_calculando").show(); $("#btn_presupuesto").hide(); $("#btn_presupuesto").attr("disabled",true); //$("#precio").hide(); $("#ancho-error").hide(); $("#ancho-error-requerido").hide(); $("#alto-error-requerido").hide(); $("#medidas-error-nulo").hide(); this.limpiarCamposMailPresupuestoProducto(); this.cargarCarrito(); //Identificadores this.idCategoria = $("#idCategoriaProducto").val(); this.idProducto = $("#idProducto").val(); this.idSubcategoria = $("#idSubcategoriaProducto").val(); if(this.arrayIdsSubcategoriasSinDisenos.includes(parseInt(this.idSubcategoria)) || this.arrayIdsProductosSinDisenos.includes(parseInt(this.idProducto))) $(".dependientesDisenoPoducto").hide(); this.buscarProducto(); this.buscarProductoEspanol(); this.buscarImagenPrincipal(); //Cogemos el rango máximo y el rango mínimo del producto this.rangoMaximo = $("#rangoMaximoProducto").val(); this.rangoMinimo = $("#rangoMinimoProducto").val(); //Cargamos valores this.caracteristicaDatoVariable = $("#caracteristicaDatoVariable").val(); this.caracteristicaMontaje = $("#caracteristicaMontaje").val(); this.caracteristicaPliego = $("#caracteristicaPliego").val(); this.caracteristicaTallaje = $("#caracteristicaTallaje").val(); if(this.caracteristicaTallaje != null && this.caracteristicaTallaje != "") { this.cantidadProductos = 0; $("#cantidad").val("0"); $(".spanCantidadTallaje").html("0"); } else this.cantidadProductos = $("#cantidad").val(); this.numeroDisenho = $("#ndesigns").val(); this.textoNombreSeo = $("#textoNombreSeo").val(); this.medidaDefAlto = $("#medidaDefAlto").val(); this.medidaDefAncho = $("#medidaDefAncho").val(); this.medidaMinAlto = $("#medidaMinAlto").val(); this.medidaMinAncho = $("#medidaMinAncho").val(); this.medidaMaxAlto = $("#medidaMaxAlto").val(); this.medidaMaxAncho = $("#medidaMaxAncho").val(); this.buscarImagenPlantilla(); this.contadorCarga = 6; this.contadorCargaSelectColores = 2; //Controlamos los botones this.cargarPreciosRangosMetro(); //Aqui controlamos la visualización de determinados botones y calculamos el precio. //Cargamos las imágenes this.cargarImagenesProductos(); } this.recargarImprescindiblesActualizarPrecio = function(){ //Limpiamos. $(".avisopequecaracteristicas").hide(); //$("#btn_carrito").hide(); $("#btn_carrito").attr("disabled",true); //$("#btn_calculando").show(); //$("#btn_presupuesto").hide(); $("#btn_presupuesto").attr("disabled",true); //$("#precio").hide(); $("#ancho-error").hide(); $("#ancho-error-requerido").hide(); $("#alto-error-requerido").hide(); $("#medidas-error-nulo").hide(); this.limpiarCamposMailPresupuestoProducto(); this.cargarCarrito(); //Identificadores this.idCategoria = $("#idCategoriaProducto").val(); this.idProducto = $("#idProducto").val(); this.idSubcategoria = $("#idSubcategoriaProducto").val(); //Cargamos valores this.caracteristicaDatoVariable = $("#caracteristicaDatoVariable").val(); this.caracteristicaMontaje = $("#caracteristicaMontaje").val(); this.caracteristicaPliego = $("#caracteristicaPliego").val(); this.caracteristicaTallaje = $("#caracteristicaTallaje").val(); if(this.caracteristicaTallaje != null && this.caracteristicaTallaje != "") { this.cantidadProductos = 0; $("#cantidad").val("0"); $(".spanCantidadTallaje").html("0"); } else this.cantidadProductos = $("#cantidad").val(); this.numeroDisenho = $("#ndesigns").val(); this.medidaDefAlto = $("#medidaDefAlto").val(); this.medidaDefAncho = $("#medidaDefAncho").val(); this.medidaMinAlto = $("#medidaMinAlto").val(); this.medidaMinAncho = $("#medidaMinAncho").val(); this.medidaMaxAlto = $("#medidaMaxAlto").val(); this.medidaMaxAncho = $("#medidaMaxAncho").val(); this.contadorCarga = 6; //Controlamos los botones this.cargarPreciosRangosMetro(); //Aqui controlamos la visualización de determinados botones y calculamos el precio. } //Funciones de trabajo. this.limpiarCamposMailPresupuestoProducto = function() { /**- Función que limpia los errores de los campos de error del formulario del presupuesto **/ $(".idsGrupoLimpiarCamposUsuarioProducto").each(function(){ switch(this){ default: $(this).val(""); $(this).html(""); break; } }); } this.modalPresupuesto = function() { /**- Función que visuliza la ventana para pedir presupuesto, con la información relevante para ello Necesitamos: la categoría, el producto, el número de diseños y la cantidad. **/ this.mensajePresupuesto = $("#nombreCategoriaProducto").val()+" "+$("#nombreSubcategoriaProducto").val()+" "+$("#nombreProducto").val()+" / "; this.mensajePresupuestoEspanol = $("#nombreCategoriaProducto_es").val()+" "+$("#nombreSubcategoriaProducto_es").val()+" "+$("#nombreProducto_es").val()+" / "; $.each(this.caracteristicas,function(index,value){ if(eco_productos.idCategoria == value.iddependiente) { if(eco_productos.valores != null) { $.each(eco_productos.valores,function(indexVal,valueVal){ if(valueVal.idcaracteristica == value.id) { if(eco_productos.idSubcategoria == valueVal.iddependiente) { if($("#caracteristica_"+value.id).val() == valueVal.id) { if(eco_productos.caracteristicaTallaje != value.id) { eco_productos.mensajePresupuesto += value.nombreCaracteristica+": "+valueVal.nombreValorCaracteristica+" / "; eco_productos.mensajePresupuestoEspanol += value.nombreCaracteristicaEspanol+": "+valueVal.nombreValorCaracteristicaEspanol+" / "; } else { var partes = eco_productos.valorCaracteristicaTallaje.split("_"); eco_productos.mensajePresupuesto += value.nombreCaracteristica+": "+partes[0]+" / "; eco_productos.mensajePresupuestoEspanol += value.nombreCaracteristicaEspanol+": "+partes[1]+" / "; } } } } }); } } }); this.numeroDisenho = $("#ndesigns").val(); this.cantidadProductos = $("#cantidad").val(); this.mensajePresupuestoEspanol += "Número de diseños: "+this.numeroDisenho+" / Cantidad: "+this.cantidadProductos+" / Patrocinado: "; if($("#patrocinio").prop("checked")) this.mensajePresupuestoEspanol += "sí"; else this.mensajePresupuestoEspanol += "no"; if($("#diseno").prop("checked")) this.mensajePresupuestoEspanol += " / Diseñado por Createlow"; if($("#personalizacion").prop("checked")) this.mensajePresupuestoEspanol += " / Producto personalizado"; if($("#ancho").val() != "" && $("#ancho").val() != undefined) this.mensajePresupuestoEspanol += " / Ancho x Alto = "+$("#ancho").val()+" x "+$("#alto").val() +" ("+this.tipoMedida+") "; switch(this.codigoIdioma) { case "es": this.mensajePresupuesto = this.mensajePresupuestoEspanol; break; case "fr": this.mensajePresupuesto += "Nombre de designs: "+this.numeroDisenho+" / Quantité: "+this.cantidadProductos+" / Sponsorisé: "; if($("#patrocinio").prop("checked")) this.mensajePresupuesto += "oui"; else this.mensajePresupuesto += "non"; if($("#diseno").prop("checked")) this.mensajePresupuesto += " / Conçu par Createlow"; if($("#personalizacion").prop("checked")) this.mensajePresupuesto += " / Produit personnalisé"; if($("#ancho").val() != "" && $("#ancho").val() != undefined) this.mensajePresupuesto += " / Large x Haut = "+$("#ancho").val()+" x "+$("#alto").val()+" ("+this.tipoMedida+") "; break; case "it": this.mensajePresupuesto += "Numero di design: "+this.numeroDisenho+" / Quantità: "+this.cantidadProductos+" / Sponsorizzato: "; if($("#patrocinio").prop("checked")) this.mensajePresupuesto += "sì"; else this.mensajePresupuesto += "no"; if($("#diseno").prop("checked")) this.mensajePresupuesto += " / Progettato da Createlow"; if($("#personalizacion").prop("checked")) this.mensajePresupuesto += " / Prodotto personalizzato"; if($("#ancho").val() != "" && $("#ancho").val() != undefined) this.mensajePresupuesto += " / Ampio x Alto = "+$("#ancho").val()+" x "+$("#alto").val()+" ("+this.tipoMedida+") "; break; case "pt": this.mensajePresupuesto += "Número de designs: "+this.numeroDisenho+" / Quantidade: "+this.cantidadProductos+" / Patrocinado: "; if($("#patrocinio").prop("checked")) this.mensajePresupuesto += "sim"; else this.mensajePresupuesto += "não"; if($("#diseno").prop("checked")) this.mensajePresupuesto += " / Projetado por Createlow"; if($("#personalizacion").prop("checked")) this.mensajePresupuesto += " / Produto personalizado"; if($("#ancho").val() != "" && $("#ancho").val() != undefined) this.mensajePresupuesto += " / Largo x Alto = "+$("#ancho").val()+" x "+$("#alto").val()+" ("+this.tipoMedida+") "; break; default: break; } $("#infoPresupuesto").show(); $("#errorPresupuesto").hide(); $("#avisosPresupuesto").html(this.mensajePresupuesto); $("#presupuestoModal").modal('show'); $("#presupuestoModal").show(); } this.actualizarCondicionesProducto = function(){ /**- Función que recoge el valor del check de diseno, patrocinio y producto personalizado e imprime el precio en función de si el check está a true o no. **/ if($("#diseno").prop("checked")) { if($("#patrocinio").prop("checked")) { if($("#personalizacion").prop("checked")) { this.precio = this.precioSinIVADescuentoDisenoPersonalizado; this.precioUnitario = this.precioSinIVADescuentoDisenoPersonalizadoUnidad; $("#visual-price").html(formatoPrecioHTML(this.precioSinIVADescuentoDisenoPersonalizado)); $(".iva").html(formatoPrecioHTML(this.precioConIVADescuentoDisenoPersonalizado)+" IVA inclusa"); } else { this.precio = this.precioSinIVADescuentoDiseno; this.precioUnitario = this.precioSinIVADescuentoDisenoUnidad; $("#visual-price").html(formatoPrecioHTML(this.precioSinIVADescuentoDiseno)); $(".iva").html(formatoPrecioHTML(this.precioConIVADescuentoDiseno)+" IVA inclusa"); } } else { if($("#personalizacion").prop("checked")) { this.precio = this.precioSinIVADisenoPersonalizado; this.precioUnitario = this.precioSinIVADisenoPersonalizadoUnidad; $("#visual-price").html(formatoPrecioHTML(this.precioSinIVADisenoPersonalizado)); $(".iva").html(formatoPrecioHTML(this.precioConIVADisenoPersonalizado))+" IVA inclusa"; } else { this.precio = this.precioSinIVADiseno; this.precioUnitario = this.precioSinIVADisenoUnidad; $("#visual-price").html(formatoPrecioHTML(this.precioSinIVADiseno)); $(".iva").html(formatoPrecioHTML(this.precioConIVADiseno)+" IVA inclusa"); } } } else { if($("#patrocinio").prop("checked")) { if($("#personalizacion").prop("checked")) { this.precio = this.precioSinIVADescuentoPersonalizado; this.precioUnitario = this.precioSinIVADescuentoPersonalizadoUnidad; $("#visual-price").html(formatoPrecioHTML(this.precioSinIVADescuentoPersonalizado)); $(".iva").html(formatoPrecioHTML(this.precioConIVADescuentoPersonalizado)+" IVA inclusa"); } else { this.precio = this.precioSinIVADescuento; this.precioUnitario = this.precioSinIVADescuentoUnidad; $("#visual-price").html(formatoPrecioHTML(this.precioSinIVADescuento)); $(".iva").html(formatoPrecioHTML(this.precioConIVADescuento)+" IVA inclusa"); } } else { if($("#personalizacion").prop("checked")) { this.precio = this.precioSinIVAPersonalizado; this.precioUnitario = this.precioSinIVAPersonalizadoUnidad; $("#visual-price").html(formatoPrecioHTML(this.precioSinIVAPersonalizado)); $(".iva").html(formatoPrecioHTML(this.precioConIVAPersonalizado)+" IVA inclusa"); } else { this.precio = this.precioSinIVA; this.precioUnitario = this.precioSinIVAUnidad; $("#visual-price").html(formatoPrecioHTML(this.precioSinIVA)); $(".iva").html(formatoPrecioHTML(this.precioConIVA)+" IVA inclusa"); } } } $("#precioUnitario").val(this.precioUnitario); this.dataLayerDetallesProducto(); } this.actualizarPrecio = function(id,operacion) { /**- Función que actualiza el precio. Esta función también llamara a recalcular el precio del producto en función de su cantidad. @param idFila, identificador del input. @param operacion, String mas o menos. **/ $("#btn_carrito").prop("disabled",true); //$("#btn_carrito").hide(); //$("#btn_calculando").show(); if(id == "cantidad") { // Cantidad de productos o de diseños var cantidad = parseInt($("#"+id).val().trim()); if(operacion == "menos" && cantidad > 1) cantidad -= parseInt(this.rangoMinimo); if(operacion == "mas" ) cantidad += parseInt(this.rangoMinimo); if(operacion == "menos" && cantidad == 1) { cantidad = 1; $("#btn-menos-cantidadProducto").prop("disabled",true); } this.cantidadProductos = cantidad; $("#"+id).val(this.cantidadProductos); } else { // Cantidad de productos o de diseños var cantidad = parseInt($("#"+id).val().trim()); if(operacion == "menos" && cantidad > 1) cantidad -= 1; if(operacion == "mas" ) cantidad += 1; if(operacion == "menos" && cantidad == 1) { cantidad = 1; $("#btn-menos-disenhoProducto").prop("disabled",true); } this.numeroDisenho = cantidad; $("#"+id).val(this.numeroDisenho); } this.recargarImprescindiblesActualizarPrecio(); } this.anadirProductoSesion = function(){ /**- Función que coge los datos de la última selección y los mete en sesion. **/ $("#medidas-error-minimas").html(""); $("#medidas-error-minimas").hide(); if(!this.validarMedidas()) return; if(parseInt(this.cantidadProductos) < parseInt(this.rangoMinimo)) { $("#btn_carrito").prop("disabled",true); $("#btn_carrito").show(); $("#btn_calculando").hide(); return; } //Array de parámetros var parametros = new Array(); if(parseInt(this.totalPreciosRangosMetro) > 0) { parametros.push(new ParametroFormulario("numeroObligatorio","anchoProducto","anchoProducto",$("#ancho").val().trim(),"ancho-error-requerido")); parametros.push(new ParametroFormulario("numeroObligatorio","altoProducto","altoProducto",$("#alto").val().trim(),"alto-error-requerido")); } if(!camposObligatorios(parametros)) return; parametros.push(new ParametroFormulario("numeroNoNulo","anchoProducto","anchoProducto",$("#ancho").val().trim(),"medidas-error-nulo")); parametros.push(new ParametroFormulario("numeroNoNulo","altoProducto","altoProducto",$("#alto").val().trim(),"medidas-error-nulo")); if(!formateoCampos(parametros)) return; var medida = 0; if(this.maximoRangoMetro != 0) { switch(this.tipoMedida.toLowerCase()) { case 'mm': medida = $("#ancho").val()/1000 * $("#alto").val()/1000; break; case 'cm': medida = $("#ancho").val()/100 * $("#alto").val()/100; break; case 'dm': medida = $("#ancho").val()/10 * $("#alto").val()/10; break; case 'm': medida = $("#ancho").val() * $("#alto").val(); break; default: break; } } if(medida > this.maximoRangoMetro) { $("#ancho-error").show(); return; } parametros.push(new Parametro("idCategoria",this.idCategoria)); parametros.push(new Parametro("referrerProducto",this.referrer)); parametros.push(new Parametro("valorCategoria",this.valorCategoria)); parametros.push(new Parametro("nombreCategoria",$("#nombreCategoriaProducto").val())); parametros.push(new Parametro("nombreCategoriaEspanol",$("#nombreCategoriaProducto_es").val())); parametros.push(new Parametro("idSubcategoria",this.idSubcategoria)); parametros.push(new Parametro("nombreSubcategoria",$("#nombreSubcategoriaProducto").val())); parametros.push(new Parametro("nombreSubcategoriaEspanol",$("#nombreSubcategoriaProducto_es").val())); parametros.push(new Parametro("idProducto",this.idProducto)); parametros.push(new Parametro("idProductoStock",this.idProductoStock)); parametros.push(new Parametro("imagenSubcategoria",this.imagenProducto)); parametros.push(new Parametro("nombreProducto",$("#nombreProducto").val())); parametros.push(new Parametro("nombreProductoEspanol",$("#nombreProducto_es").val())); parametros.push(new Parametro("cantidadTotal",this.cantidadProductos)); parametros.push(new Parametro("cantidadDisenhos",this.numeroDisenho)); parametros.push(new Parametro("rangoMaximoProducto",this.rangoMaximo)); parametros.push(new Parametro("rangoMinimoProducto",this.rangoMinimo)); if($("#patrocinio").prop("checked")) parametros.push(new Parametro("patrocinio",1)); else parametros.push(new Parametro("patrocinio",0)); if($("#diseno").prop("checked")) parametros.push(new Parametro("disenhadoEmpresa",1)); else parametros.push(new Parametro("disenhadoEmpresa",0)); if($("#personalizacion").prop("checked")) parametros.push(new Parametro("productosPersonalizados",1)); else parametros.push(new Parametro("productosPersonalizados",0)); parametros.push(new Parametro("precioSinIvaPersonalizacion",this.precioSinIvaPersonalizacion)); parametros.push(new Parametro("cantidadesCambiadas",0)); parametros.push(new Parametro("pesoProducto",this.pesoProducto)); parametros.push(new Parametro("tipoMedida",this.tipoMedida)); parametros.push(new Parametro("idCaracteristicaPliego",this.caracteristicaPliego)); parametros.push(new Parametro("idCaracteristicaMontaje",this.caracteristicaMontaje)); //Características if(eco_productos.caracteristicas != null) { $.each(eco_productos.caracteristicas,function(index,value){ if(eco_productos.idCategoria == value.iddependiente) { if($("#caracteristica_"+value.id).val() != null && $("#caracteristica_"+value.id).val() != undefined && $("#caracteristica_"+value.id).val() != "") { if(eco_productos.caracteristicaTallaje != value.id) parametros.push(new Parametro("idValorCaracteristicaProducto_"+value.id,$("#caracteristica_"+value.id).val())); } if(eco_productos.caracteristicaTallaje == value.id) parametros.push(new Parametro("idValorCaracteristicaProducto_"+value.id,$("#caracteristica_"+value.id).val()+"_"+eco_productos.valorCaracteristicaTallaje)); } }); } //Petición por ajax. this.ajax.pedir("productosControl.anadirDatosSesion",parametros,XJSON,ASYNC,"eco_productos.postAnadirDatosSesion"); } this.buscarImagenPlantilla = function() { /**- Función que busca la imagen de la plantilla del producto **/ var parametros = new Array(); parametros.push(new Parametro("idProducto",this.idProducto)); parametros.push(new Parametro("tipoImagen",TIPO_IMAGEN_PRODUCTOS)); parametros.push(new Parametro("principalImagen",IMAGEN_PLANTILLA)); //Petición ajax. this.ajax.pedir("productosControl.buscarImagenes",parametros,XJSON,ASYNC,"eco_productos.postBuscarImagenPlantilla"); } this.buscarImagenPrincipal = function() { /**- Función que busca la imagen principal del producto seleccionado. **/ var parametros = new Array(); parametros.push(new Parametro("idProducto",this.idProducto)); parametros.push(new Parametro("tipoImagen",TIPO_IMAGEN_PRODUCTOS)); parametros.push(new Parametro("principalImagen",IMAGEN_PRINCAPAL)); //Petición ajax. this.ajax.pedir("productosControl.buscarImagenes",parametros,XJSON,ASYNC,"eco_productos.postBuscarImagenPrincipal"); } this.buscarProducto = function() { /**- Función que busca el producto redirigido a través del combo de productos. Esto es para no recargar la página. **/ var parametros = new Array(); parametros.push(new Parametro("idProducto",this.idProducto)); //Petición por ajax. this.ajax.pedir("productosControl.buscar",parametros,XJSON,ASYNC,"eco_productos.postBuscarProducto"); } this.buscarProductoEspanol = function() { /**- Función que busca el producto redirigido a través del combo de productos. Esto es para no recargar la página. **/ var parametros = new Array(); parametros.push(new Parametro("idProducto",this.idProducto)); parametros.push(new Parametro("codigoIdioma",'es')); //Petición por ajax. this.ajax.pedir("productosControl.buscar",parametros,XJSON,ASYNC,"eco_productos.postBuscarProductoEspanol"); } this.buscarUsuario = function() { /**- Función que busca si el usuario está logueado **/ this.ajax.pedir("usuarioControl.buscarUsuarioSesion",null,XJSON,ASYNC,"eco_productos.postBuscarUsuario"); } this.cargarCarrito = function() { /**- Función que coge el carrito de la sesión. **/ this.ajax.pedir("productosControl.cargarCarrito",null,XJSON,ASYNC,"eco_productos.postCargarCarrito"); } this.cargarCategorias = function() { /**- Función que busca las categorías. **/ //Petición ajax. this.ajax.pedir("categoriasControl.buscar",null,XJSON,ASYNC,"eco_productos.postCargarCategorias"); } this.cargarCaracteristicas= function() { /**- Función que busca las características de las categorías. **/ //Petición ajax. this.ajax.pedir("categoriasControl.buscarCaracteristicas",null,XJSON,ASYNC,"eco_productos.postCargarCaracteristicas"); } this.cargarImagenesSubcategorias = function() { /**- Función que busca las imágenes de las subcategorías. **/ //Array de parámetros. var parametros = new Array(); parametros.push(new Parametro("tipoImagen",TIPO_IMAGEN_SUBCATEGORIAS)); //Petición ajax. this.ajax.pedir("subcategoriasControl.buscarImagenes",parametros,XJSON,ASYNC,"eco_productos.postCargarImagenesSubcategorias"); } this.cargarImagenesProductos = function() { /**- Función que busca las imágenes de los productos. **/ //Array de parámetros. var parametros = new Array(); parametros.push(new Parametro("tipoImagen",TIPO_IMAGEN_PRODUCTOS)); //Petición ajax. this.ajax.pedir("productosControl.buscarImagenes",parametros,XJSON,ASYNC,"eco_productos.postCargarImagenesProductos"); } this.cargarPrecioNDiseno = function() { /**- Función que carga todos los precios a incrementar por cantiades de diseños de la categoría seleccionada. **/ var parametros = new Array(); parametros.push(new Parametro("idCategoria",this.idCategoria)); //Petición this.ajax.pedir("categoriasControl.buscarPrecioNDisenos",parametros,XJSON,ASYNC,"eco_productos.postCargarPrecioNDiseno"); } this.cargarPreciosRangosMetro = function() { /**- Fucnión que carga de la sesión los precios por rango por metros **/ var parametros = new Array(); parametros.push(new Parametro("idProducto",this.idProducto)); this.ajax.pedir("productosControl.buscarPreciosRangosMetro",parametros,XJSON,ASYNC,"eco_productos.postCargarPreciosRangosMetro"); } this.cargarProductos = function() { /**- Función que busca los productos. **/ //Petición ajax. this.ajax.pedir("productosControl.buscar",null,XJSON,ASYNC,"eco_productos.postCargarProductos"); } this.cargarSubcategorias = function() { /**- Función que busca las subcategorías. **/ //Petición ajax. this.ajax.pedir("subcategoriasControl.buscar",null,XJSON,ASYNC,"eco_productos.postCargarSubcategorias"); } this.cargarValoresCaracteristicas = function() { /**- Función que busca los valores de las características de las subcategorías. **/ //Petición ajax. this.ajax.pedir("subcategoriasControl.buscarValoresCaracteristicas",null,XJSON,ASYNC,"eco_productos.postCargarValoresCaracteristicas"); } this.calcularDTFModal = function() { /**- Función que calcula la longitud del pliego a imprimir en función de las variables correspondientes **/ $("#errorCalculadoraDTFModal").html(""); var altoDefecto = null; var anchoDefecto = null; if(this.pliego != "") { var partesPalabra = this.pliego.split(" "); var partesMedida = partesPalabra[0].split("x"); altoDefecto = partesMedida[1]; anchoDefecto = partesMedida[0]; } var alto = $("#altoCalculadoraDTFModal").val(); var ancho = $("#anchoCalculadoraDTFModal").val(); var cantidad = $("#cantidadCalculadoraDTFModal").val(); if(ancho == "" || ancho == null) { $("#errorCalculadoraDTFModal").html("Devi inserire le misure"); return; } if(alto == "" || alto == null) { $("#errorCalculadoraDTFModal").html("Devi inserire le misure"); return; } if(parseFloat(ancho) > parseInt(anchoDefecto)) { $("#errorCalculadoraDTFModal").html("Useremo "+anchoDefecto+"cm. "+"Inserisci una larghezza inferiore."); return; } if(parseFloat(alto) > parseInt(altoDefecto)) { $("#errorCalculadoraDTFModal").html("Useremo "+altoDefecto+"cm. "+"Inserisci un’altezza inferiore."); return; } if(cantidad == "" || cantidad == null) { $("#errorCalculadoraDTFModal").html("Devi inserire la quantità"); return; } ancho++; alto++; var unidadesAnchoPorPliego = Math.floor(anchoDefecto/ancho); var unidadesAltoPorPliego = Math.floor(altoDefecto/alto); var unidadesPorPliego = unidadesAnchoPorPliego*unidadesAltoPorPliego; this.nPliegos = 1; if(parseInt(cantidad) > unidadesPorPliego) this.nPliegos = Math.ceil(parseInt(cantidad)/unidadesPorPliego); //$("#alto").val((alto-1)*10); //$("#ancho").val((ancho-1)*10); this.cantidadProductos = parseInt(this.nPliegos); $("#cantidad").val(parseInt(this.nPliegos)); if(this.nPliegos == 1) var texto = "Ti servono "+this.nPliegos+" pz."; else var texto = "Ti servono "+this.nPliegos+" pz."; $("#avisoscalculadoraDTF").html(texto); } this.calcularPrecio = function(){ /**- Función que recoge los valores de las variables necesarias para consultar el precio en bbdd. **/ //Array de parámetros. if(this.cantidadProductos != 0) { var parametros = new Array(); parametros.push(new Parametro("cantidadTotal",this.cantidadProductos)); parametros.push(new Parametro("cantidadDisenhos",this.numeroDisenho)); parametros.push(new Parametro("idCategoria",this.idCategoria)); parametros.push(new Parametro("idProducto",this.idProducto)); parametros.push(new Parametro("idSubcategoria",this.idSubcategoria)); parametros.push(new Parametro("anchoProducto",$("#ancho").val())); parametros.push(new Parametro("altoProducto",$("#alto").val())); parametros.push(new Parametro("tipoMedida",this.tipoMedida)); //Recorremos las características para obtener los nombres de los combos de las caracteristicas. var numCaras = 0; if(this.totalCaracteristicas > 0) { $.each(eco_productos.caracteristicas,function(index,value){ if(eco_productos.idCategoria == value.iddependiente){ if(eco_productos.valores != null) { $.each(eco_productos.valores,function(indexVal,valueVal){ if(eco_productos.idSubcategoria == valueVal.iddependiente) { if(valueVal.idcaracteristica == value.id) { if($("#caracteristica_"+value.id).val() == valueVal.id) { parametros.push(new Parametro("valorCaracteristica_"+value['id'],$("#caracteristica_"+value['id']).val().trim())); var caras = valueVal.caras; if(caras != null) numCaras += parseInt(caras); } } } }); } } }); } if(numCaras == 0) numCaras = 1; parametros.push(new Parametro("numCarasProducto",numCaras)); //Petición por ajax. this.ajax.pedir("productosControl.buscarPrecio",parametros,XJSON,ASYNC,"eco_productos.postBuscarPrecio"); } else { $("#btn_calculando").hide(); $("#precio").hide(); } } this.cogerValoresCaracteristicasTallaje = function() { /**- Función que carga los valores de la característica cuyo tipo es Tallaje y los pasa como un único valor en un campo de texto **/ this.valorCaracteristicaTallaje = ""; var i = 0; var cantidad = 0; var valorCaracteristicaTallajeEspanol = ""; $.each(eco_productos.caracteristicas,function(index,value){ if(eco_productos.idCategoria == value.iddependiente && value.id == eco_productos.caracteristicaTallaje) { $.each(eco_productos.valores,function(indexVal,valueVal){ if(valueVal.idcaracteristica == value.id) { i++; if(i == 1) $("#cantidadCaracteristica_"+value.id+"_"+valueVal.id).val($("#idCantidadCaracteristica_"+value.id+"_"+valueVal.id).val()); if($("#idCantidadCaracteristica_"+value.id+"_"+valueVal.id).val() != null && $("#idCantidadCaracteristica_"+value.id+"_"+valueVal.id).val() != undefined && $("#idCantidadCaracteristica_"+value.id+"_"+valueVal.id).val() != "") { cantidad += parseInt($("#idCantidadCaracteristica_"+value.id+"_"+valueVal.id).val()); eco_productos.valorCaracteristicaTallaje += valueVal.nombreValorCaracteristica+": "+$("#idCantidadCaracteristica_"+value.id+"_"+valueVal.id).val()+" / "; valorCaracteristicaTallajeEspanol += valueVal.nombreValorCaracteristicaEspanol+": "+$("#idCantidadCaracteristica_"+value.id+"_"+valueVal.id).val()+" / "; } } }); } }); this.valorCaracteristicaTallaje = this.valorCaracteristicaTallaje.substr(0,this.valorCaracteristicaTallaje.length-3); valorCaracteristicaTallajeEspanol = valorCaracteristicaTallajeEspanol.substr(0,valorCaracteristicaTallajeEspanol.length-3); this.valorCaracteristicaTallaje += "_"+valorCaracteristicaTallajeEspanol; if(this.caracteristicaTallaje != null && this.caracteristicaTallaje != "") { this.cantidadProductos = cantidad; $("#cantidad").val(cantidad); $(".spanCantidadTallaje").html(cantidad); } this.calcularPrecio(); } this.controlDependientesDatoVariable = function() { /**- Función que controla la visualización de elementos y ejecución de acciones que dependen de si hay o no características relacionadas con el dato variable **/ if(this.caracteristicaDatoVariable == null || this.caracteristicaDatoVariable == "") { $(".dependientesDatoVariable").show(); } else $(".dependientesDatoVariable").hide(); } this.controlDependientesMontaje = function() { /**- Función que controla la visualización de elementos y ejecución de acciones que dependen de si hay o no caracteristicas relativas al montaje y cual de los valores está seleccionado. **/ if((this.caracteristicaMontaje == null || this.caracteristicaMontaje == "") && (this.caracteristicaPliego == null || this.caracteristicaPliego == "") && (this.caracteristicaTallaje == null && this.caracteristicaTallaje == "")) { $(".dependientesMontaje").show(); } if(this.caracteristicaMontaje != null && this.caracteristicaMontaje != "") { var partes = this.caracteristicaMontaje.split("_"); var idValorCaracteristicaMontajeSeleccionado = partes[0]; var ordenCaracteristicaMontajeSeleccionado = partes[1]; if(parseInt(ordenCaracteristicaMontajeSeleccionado) != 1) $(".dependientesMontaje").show(); else $(".dependientesMontaje").hide(); } } this.controlDependientesPliego = function() { /**- Función que controla la visualización de elementos y ejecución de acciones que dependen de si hay o no características relacionadas con el pliego **/ if(this.caracteristicaPliego != null && this.caracteristicaPliego != "") { $("#btn_dtf").show(); $(".btn_dtf_abajo").show(); } else { $("#btn_dtf").hide(); $(".btn_dtf_abajo").hide(); } } this.controlDependientesTallaje = function() { /**- Función que controla la visualización de elementos y ejecución de acciones en función de la característica Tallaje **/ $("#btn_carrito").hide(); $("#btn_carrito").prop("disabled",true); $("#btn_tallas").hide(); $("#btn_tallas").prop("disabled",true); $("#spanBtnTallas").hide(); $("#btn_calculando").hide(); $("#btn_presupuesto").hide(); $("#btn_presupuesto").prop("disabled",true); $("#precio").hide(); $("#textoRangoMaximo").html(""); $("#rangoMaximo").hide(); $("#medidasMaximo").hide(); $(".solicita-presupuesto").hide(); if(this.caracteristicaTallaje != null && this.caracteristicaTallaje != "") { if(this.cantidadProductos == 0 || this.cantidadProductos == null) { $(".dependientesTallaje").hide(); this.numeroDisenho = 1; $("#btn-mas-cantidadProducto").prop("disabled",true); $("#comboCantidad").hide(); $("#btn_carrito").hide(); $("#btn_carrito").prop("disabled",true); if(parseInt(eco_productos.hayStock)) { $("#spanBtnTallas").show(); $("#btn_tallas").show(); $("#btn_tallas").prop("disabled",false); } else { $("#btn_tallas").hide(); $("#btn_tallas").prop("disabled",true); $("#spanBtnTallas").hide(); } $("#btn_calculando").hide(); $("#btn_presupuesto").hide(); $("#btn_presupuesto").prop("disabled",true); $("#precio").hide(); $("#textoRangoMaximo").html(""); $("#rangoMaximo").hide(); $("#medidasMaximo").hide(); $(".solicita-presupuesto").hide(); } else { $(".dependientesTallaje").hide(); $("#btn-mas-cantidadProducto").prop("disabled",true); $("#btn-menos-cantidadProducto").prop("disabled",true); $("#btn-mas-disenhoProducto").prop("disabled",true); $("#btn-menos-disenhoProducto").prop("disabled",true); $("#cantidad").prop("disabled",true); $("#comboCantidad").show(); $("#ndesigns").prop("disabled",true); if(parseInt(eco_productos.hayStock)) { $("#btn_carrito").show(); $("#btn_carrito").prop("disabled",false); $("#btn_stock").hide(); } else { $("#btn_carrito").hide(); $("#btn_carrito").prop("disabled",true); $("#btn_stock").show(); } $("#precio").show(); $("#textoRangoMaximo").html(""); $("#rangoMaximo").hide(); $("#medidasMaximo").hide(); $("#cantidad-error").hide(); } } else { if(this.arrayIdsSubcategoriasSinDisenos.includes(parseInt(this.idSubcategoria)) || this.arrayIdsProductosSinDisenos.includes(parseInt(this.idProducto))) $(".dependientesTallaje").hide(); else $(".dependientesTallaje").show(); $("#cantidad").prop("disabled",false); $("#comboCantidad").show(); if(parseInt(eco_productos.hayStock)) { $("#btn_carrito").show(); $("#btn_carrito").prop("disabled",false); $("#btn_stock").hide(); } else { $("#btn_carrito").hide(); $("#btn_carrito").prop("disabled",true); $("#btn_stock").show(); } $("#precio").show(); } if(parseInt(eco_productos.cantidadProductos) > parseInt(eco_productos.rangoMaximo)) { $("#btn_carrito").hide(); $("#btn_carrito").prop("disabled",true); $("#btn_calculando").hide(); $("#btn_presupuesto").show(); $("#btn_presupuesto").prop("disabled",false); $("#precio").hide(); $("#textoRangoMaximo").html(eco_productos.rangoMaximo); $("#rangoMaximo").show(); $(".solicita-presupuesto").show(); } if(this.preciosRangosMetro != null && !this.validarMedidas()) { $("#btn_carrito").hide(); $("#btn_carrito").prop("disabled",true); $("#btn_calculando").hide(); $("#btn_presupuesto").show(); $("#btn_presupuesto").prop("disabled",false); $("#precio").hide(); $("#rangoMaximo").hide(); $("#medidasMaximo").show(); $(".solicita-presupuesto").show(); } } this.controlDependientesRangoMaxStock = function() { /**- Función que controla los elementos que dependen del rango máximo de un producto **/ $("#ancho-error").hide(); if(parseInt(eco_productos.hayStock)) { $("#btn_stock").hide(); //Con respecto al rango máximo. if(parseInt(eco_productos.cantidadProductos) <= parseInt(eco_productos.rangoMaximo)) { //Mirar el rango máximo de este producto $("#btn-mas-cantidadProducto").prop("disabled",false); $("#btn_carrito").show(); $("#btn_carrito").prop("disabled",false); $("#btn_calculando").hide(); $("#btn_presupuesto").hide(); $("#btn_presupuesto").prop("disabled",true); $("#precio").show(); $("#rangoMaximo").hide(); } else { $("#btn-mas-cantidadProducto").prop("disabled",false); $("#btn_carrito").hide(); $("#btn_carrito").prop("disabled",true); $("#btn_calculando").hide(); $("#btn_presupuesto").show(); $("#btn_presupuesto").prop("disabled",false); $("#precio").hide(); $("#textoRangoMaximo").html(eco_productos.rangoMaximo); $("#rangoMaximo").show(); $(".solicita-presupuesto").show(); } //Con respecto al rango mínimo if(parseInt(eco_productos.cantidadProductos) <= parseInt(eco_productos.rangoMinimo)) { $("#btn-menos-cantidadProducto").prop("disabled",true); if(parseInt(eco_productos.cantidadProductos) < parseInt(eco_productos.rangoMinimo)) { $("#cantidad-error").html("Mínimo: "+eco_productos.rangoMinimo); } } else { $("#btn-menos-cantidadProducto").attr("disabled",false); $("#cantidad-error").html(""); } } else {//No hay stock $("#btn_stock").show(); $("#btn_carrito").hide(); $("#btn_carrito").prop("disabled",true); $("#btn_calculando").hide(); $("#btn_presupuesto").hide(); $("#btn_presupuesto").prop("disabled",true); $("#precio").show(); $("#rangoMaximo").hide(); $("#medidasMaximo").hide(); //Con respecto al rango máximo. if(parseInt(eco_productos.cantidadProductos) <= parseInt(eco_productos.rangoMaximo)) { //Mirar el rango máximo de este producto $("#btn-mas-cantidadProducto").prop("disabled",false); $("#btn_calculando").hide(); $("#btn_presupuesto").hide(); $("#btn_presupuesto").prop("disabled",true); $("#precio").show(); $("#rangoMaximo").hide(); $("#medidasMaximo").hide(); } else { $("#btn-mas-cantidadProducto").prop("disabled",false); $("#btn_carrito").hide(); $("#btn_carrito").prop("disabled",true); $("#btn_calculando").hide(); $("#btn_presupuesto").show(); $("#btn_presupuesto").prop("disabled",false); $("#precio").hide(); $("#textoRangoMaximo").html(eco_productos.rangoMaximo); $("#rangoMaximo").show(); $(".solicita-presupuesto").show(); } //Con respecto al rango mínimo if(parseInt(eco_productos.cantidadProductos) <= parseInt(eco_productos.rangoMinimo)) { $("#btn-menos-cantidadProducto").prop("disabled",true); if(parseInt(eco_productos.cantidadProductos) < parseInt(eco_productos.rangoMinimo)) { $("#cantidad-error").html("Mínimo: "+eco_productos.rangoMinimo); } } else { $("#btn-menos-cantidadProducto").attr("disabled",false); $("#cantidad-error").html(""); } } } this.controlHabilitarDeshabilitar = function(){ /**- Función que controla la edición de los inputs de cantidad y disenho **/ if(!this.arrayIdsSubcategoriasSinDisenos.includes(parseInt(this.idSubcategoria)) && !this.arrayIdsProductosSinDisenos.includes(parseInt(this.idProducto))) { if(this.numeroDisenho <= 1) { $("#btn-menos-disenhoProducto").attr("disabled",true); if(this.numeroDisenho < 1) { $("#ndesigns").val(1); $("#disenho-error").html("Minimo: 1"); this.numeroDisenho = 1; } } else { $("#btn-menos-disenhoProducto").prop("disabled",false); $("#disenho-error").html(""); } } if(parseInt(this.totalPreciosRangosMetro) > 0 && this.preciosRangosMetro != null) { $(".medidasProducto").show(); this.tipoMedida = this.preciosRangosMetro[0].medida; $("#tipoMedida").html("Misure"+' ('+this.tipoMedida+')'); } else { $(".medidasProducto").hide(); } if(this.maximoRangoMetro != 0) { switch(this.tipoMedida.toLowerCase()) { case 'mm': medida = $("#ancho").val()/1000 * $("#alto").val()/1000; break; case 'cm': medida = $("#ancho").val()/100 * $("#alto").val()/100; break; case 'dm': medida = $("#ancho").val()/10 * $("#alto").val()/10; break; case 'm': medida = $("#ancho").val() * $("#alto").val(); break; default: break; } if(medida > this.maximoRangoMetro) $("#ancho-error").show(); } if(parseInt($("#ndesigns").val()) >= parseInt($("#cantidad").val())) { if(this.caracteristicaTallaje == null || this.caracteristicaTallaje == "") { $("#cantidad").val($("#ndesigns").val()); $(".spanCantidadTallaje").html($("#ndesigns").val()); } this.cantidadProductos = $("#cantidad").val(); } if(this.imagenPlantilla != null && this.imagenPlantilla != "" && this.imagenPlantilla != undefined) $(".btn_plantilla").show(); else $(".btn_plantilla").hide(); } this.dataLayerAnadirProductoCarrito = function() { /**- Función que implementa el dataLayer de añadir producto al carrito **/ if($("#patrocinio").prop("checked")) var patrocinio = true; else var patrocinio = false; if($("#diseno").prop("checked")) var disenado = true; else var disenado = false; if($("#personalizacion").prop("checked")) var personalizado = true; else var personalizado = false; var ref = eco_productos.referrer; if(ref == "Menu" || ref == undefined) ref = "Null"; //Recorremos las características para insertarlas en el dataLayer var item_custom_parameters_f = { tipo: $("#nombreSubcategoriaProducto_es").val(), modelo: $("#nombreProducto_es").val(), disenos: $("#ndesigns").val(), descuento_patrocinio: patrocinio, disenado_por_createlow: disenado, dato_variable: personalizado, } $.each(this.caracteristicas,function(index,value) { if(eco_productos.idCategoria == value.iddependiente) { if(eco_productos.valores != null) { $.each(eco_productos.valores,function(indexVal,valueVal){ if(valueVal.idcaracteristica == value.id) { if(eco_productos.idSubcategoria == valueVal.iddependiente) { if($("#caracteristica_"+value.id).val() == valueVal.id) { var texto = value.nombreCaracteristicaEspanol.replace(/ /g,"_"); texto = reemplazarCaracteresEspeciales(texto); var clave = texto.toLowerCase(); var valor = valueVal.nombreValorCaracteristicaEspanol; item_custom_parameters_f[clave] = valor; } } } }); } } }); dataLayer.push({ ecommerce: null}); var cantidad = $("#cantidad").val(); var cantidad = $(".spanCantidadTallaje").html(); dataLayer.push({ event: "add_to_cart", ecommerce: { item_list_id: ref.toLowerCase(), item_list_name: ref, currency: "EUR", value: eco_productos.precio, items: [ { item_id: eco_productos.idProducto, item_name: $("#nombreCategoriaProducto_es").val()+" "+$("#nombreSubcategoriaProducto_es").val()+" "+$("#nombreProducto_es").val(), index: 0, item_category: $("#nombreCategoriaProducto_es").val(), price: eco_productos.precioUnitario, quantity: cantidad, item_custom_parameters: item_custom_parameters_f } ] } }); } this.dataLayerCarruselProductosRelacionados = function() { /**- Función que implementa el dataLayer del carrusel de los productos relacionados **/ //Limpiamos el dataLayer de eventoas anteriores dataLayer.push({ ecommerce: null }); //Creamos un array vacío var items = []; //Llenamos el array de items $.each($(".productosCarrusel"),function(i,value){ var precio = parseFloat(value.dataset.price); precio = Math.round(precio*100)/100; items.push({ item_id: value.dataset.id, item_name: value.dataset.name, index: i, item_category: value.dataset.category, price: precio }); }); //Construimos el dataLayer de elementos encontrados en el carrusel. dataLayer.push({ event: "view_item_list", ecommerce : { item_list_id: "productos_relacionados", item_list_name: "Productos relacionados", items: items } }); } this.dataLayerDetallesProducto = function() { /**- Función que implementa el dataLayer de la calculadora. **/ dataLayer.push({ ecommerce: null}); var ref = eco_productos.referrer; if(ref == "Menu" || ref == undefined) ref = "Null"; dataLayer.push({ event: "view_item", ecommerce: { item_list_id: ref.toLowerCase(), item_list_name: ref, items: [ { item_id: eco_productos.idProducto, item_name: $("#nombreCategoriaProducto_es").val()+" "+$("#nombreSubcategoriaProducto_es").val()+" "+$("#nombreProducto_es").val(), index: 0, item_category: $("#nombreCategoriaProducto_es").val(), price: parseFloat($("#precioUnitario").val()) } ] } }); } this.dataLayerSelectItem = function() { /**- Función que implementa el dataLayer de la calculadora. **/ dataLayer.push({ ecommerce: null}); var ref = eco_productos.referrer; if(ref == "Menu" || ref == undefined) ref = "Null"; dataLayer.push({ event: "select_item", ecommerce: { item_list_id: ref.toLowerCase(), item_list_name: ref, items: [ { item_id: eco_productos.idProducto, item_name: $("#nombreCategoriaProducto_es").val()+" "+$("#nombreSubcategoriaProducto_es").val()+" "+$("#nombreProducto_es").val(), index: 0, item_category: $("#nombreCategoriaProducto_es").val(), price: parseFloat($("#precioUnitario").val()) } ] } }); } this.dibujarComboCaracteristicaImagen = function(tipoCaracteristica) { /**- Función que dibuja el combo de las características de las imágenes cuando estas han cambiado **/ //Vaciamos el combo de los destinos. var combo = $("#comboCaracteristica_"+this.idCaracteristica); combo.empty(); var divFlechaDonw = crearElementoClasesTexto("div","flechita-abajo",null,null); combo.append(divFlechaDonw); var iDonw = crearElementoClasesTexto("i","fas fa-chevron-down",null,null); divFlechaDonw.appendChild(iDonw); var divListadoPaises = crearElementoClasesTexto("div","listado-paises listado-paises_"+this.idCaracteristica,null,null); combo.append(divListadoPaises); $.each(this.valores,function(index,valor) { if(parseInt(valor.activa) == 1) { if(valor.idcaracteristica == eco_productos.idCaracteristica && valor.iddependiente == eco_productos.idSubcategoria) { if(valor.id == eco_productos.idValorCaracteristica) { //Si es un color, colorear la imagen principal del color seleccionado if(tipoCaracteristica != null && tipoCaracteristica != "" && tipoCaracteristica.indexOf("SelectorColores") != -1) { eco_productos.fondoSeleccionado = valor.fondo; $("#imagenPrincipalProducto").css("background", valor.fondo); $("#slide_0").css("background", valor.fondo); miCarrusel.irADiapositiva("slide_0"); } var div0 = crearElementoClasesTexto("div","activo pais pais_"+valor.idcaracteristica,null,null); combo.append(div0); var div1 = crearElementoClasesTexto("div","bandera",null,null); div0.appendChild(div1); if(valor.imagen != null) { var img = crearElementoClasesTexto("img","imagen imagenCaracteristica_"+valor.idcaracteristica,null,null); img.setAttribute("src",valor.imagen); img.setAttribute("id","imagenPrincipalProducto"); div1.appendChild(img); } var divNombre = crearElementoClasesTexto("div","nombre nombreCaracteristica_"+valor.idcaracteristica,valor.nombreValorCaracteristica,null); div0.appendChild(divNombre); div0.addEventListener("click",function(e) { e.stopPropagation(); var partesId = e.currentTarget.classList[2].split("_"); var idCaracteristica = partesId[1]; var $actual = $(".listado-paises_" + idCaracteristica); $(".listado-paises").not($actual).hide(); $actual.toggle(); },false); } if(valor.id == eco_productos.idValorCaracteristica) var div0 = crearElementoClasesTexto("div","inactivo pais con-tooltip caracteristicaSeleccionada pais_"+valor.idcaracteristica,null,null); else var div0 = crearElementoClasesTexto("div","inactivo pais con-tooltip pais_"+valor.idcaracteristica,null,null); divListadoPaises.appendChild(div0); if(valor.textoToolTip != undefined && valor.textoToolTip != null && valor.textoToolTip != "") { var divToolTip = crearElementoClasesTexto("div","tooltip",valor.textoToolTip,null); div0.appendChild(divToolTip); } var div1 = crearElementoClasesTexto("div","bandera",null,null); div0.appendChild(div1); if(valor.imagen != null) { var img = crearElementoClasesTexto("img","imagen imagenCaracteristica_"+valor.idcaracteristica,null,null); img.setAttribute("src",valor.imagen); div1.appendChild(img); } var divNombre = crearElementoClasesTexto("div","nombre nombreCaracteristica_"+valor.idcaracteristica,valor.nombreValorCaracteristica,null); div0.appendChild(divNombre); div0.addEventListener("click",function(e){eco_productos.seleccionarCaracteristica(valor.idcaracteristica,valor.id,valor.tipoCaracteristica);},false); } } }); } this.dibujarImagenesProductos = function() { /**- Función que dibuja las imágenes del producto **/ var principales = $(".carousel__track"); var miniaturas = $(".carousel-thumbnails"); //Vaciamos los contenedores principales.empty(); miniaturas.empty(); //Dibujamos $.each(this.imagenesProductos,function(index,value) { if(value.iddependiente == eco_productos.idProducto && value.principal == IMAGEN_PRINCAPAL) { var div = crearElementoClasesTexto("div","carousel__slide active",null,null); div.setAttribute("id","slide_0"); div.setAttribute("loading","lazy"); div.setAttribute("alt",eco_productos.textoNombreSeo); div.setAttribute("title",eco_productos.textoNombreSeo); //div.setAttribute("style","background: url("+value.imagen+"); background-size: cover;"); div.setAttribute("data",value.imagen); principales.append(div); var img = crearElementoClasesTexto("img",null,null,null); img.setAttribute("alt",eco_productos.textoNombreSeo); img.setAttribute("title",eco_productos.textoNombreSeo); img.setAttribute("src",value.imagen); div.appendChild(img); var div = crearElementoClasesTexto("div","carousel-thumbnails__item active",null,null); div.setAttribute("id","tn_0"); miniaturas.append(div); var imagen = crearElementoClasesTexto("img",null,null,null); imagen.setAttribute("id","imagenPrincipalProducto"); imagen.setAttribute("src",value.imagen); imagen.setAttribute("loading","lazy"); div.appendChild(imagen); if(eco_productos.fondoSeleccionado != null) { $("#imagenPrincipalProducto").css("background",eco_productos.fondoSeleccionado); $("#slide_0").css("background", eco_productos.fondoSeleccionado); miCarrusel.irADiapositiva("slide_0"); } } }); var i = 1; $.each(this.imagenesProductos,function(index,value) { if(value.iddependiente == eco_productos.idProducto && value.principal == IMAGEN_SECUNDARIA) { var div = crearElementoClasesTexto("div","carousel__slide",null,null); div.setAttribute("id","slide_"+i); div.setAttribute("alt",eco_productos.textoNombreSeo); div.setAttribute("title",eco_productos.textoNombreSeo); div.setAttribute("style","background: url("+value.imagen+"); background-size: cover;"); div.setAttribute("data",value.imagen); principales.append(div); var div = crearElementoClasesTexto("div","carousel-thumbnails__item",null,null); div.setAttribute("id","tn_"+i); miniaturas.append(div); var imagen = crearElementoClasesTexto("img",null,null,null); imagen.setAttribute("src",value.imagen); imagen.setAttribute("loading","lazy"); div.appendChild(imagen); i++; } }); miCarrusel.destroyCarousel(); miCarrusel = new Carousel(); miCarrusel.constructor(); miCarrusel.iniciar(); } this.enviarMailPresupuesto = function() { /**- Función que envía un mail a picazo sobre un presupuesto pedido **/ var parametros = new Array(); parametros.push(new Parametro("correoUsuarioProducto",$("#correoUsuarioProducto").val().trim())); parametros.push(new Parametro("mensajeUsuario",this.mensajePresupuesto)); parametros.push(new Parametro("mensajeAdmin",this.mensajePresupuestoEspanol)); parametros.push(new Parametro("idPresupuesto",this.idPresupuesto)); this.ajax.pedir("productosControl.enviarMailPresupuesto",parametros,XJSON,ASYNC,"eco_productos.postEnviarMailPresupuesto"); } this.mensajeAvisoCierre = function(tipoCaracteristica,idCaracteristica) { /**- Función que muestra un mensaje de aviso condicionado por los parametros, @param tipoCaracteristica, el campo tipo de una característica. @param idCaracteristica, el identificador de la característica de la que depende el valor sobre el que se ejecuta la acción. **/ var valorValorCaracteristica = $("#"+idCaracteristica+" option:selected").val(); if(tipoCaracteristica == "Cierre" && parseInt(valorValorCaracteristica) == 85) { $(".avisopequecaracteristicas").show(); } else $(".avisopequecaracteristicas").hide(); } this.redirigirProducto = function(valor) { /**- Función que redirige la página en función del parámetros seleccionados. Seleccionaremos la primera opción de los productos. **/ $("#idProducto").val(valor); var nombreCategoriaEs = null; var nombreSubcategoriaEs = null; var nombreProductoEs = null; $.each(this.productos,function(index,value){ if(value.id == valor) { nombreCategoriaEs = value.nombreCategoria_es; nombreSubcategoriaEs = value.nombreSubcategoria_es; nombreProductoEs = value.nombreProducto_es; $("#cantidadDefectoProducto").val(value.cantidad); $("#cantidad").val(value.cantidad); $(".spanCantidadTallaje").html(value.cantidad); $("#medidaDefAlto").val(value.medidadefalto); $("#medidaDefAncho").val(value.medidadefancho); $("#medidaMinAlto").val(value.medidaminalto); $("#medidaMinAncho").val(value.medidaminancho); $("#medidaMaxAlto").val(value.medidamaxalto); $("#medidaMaxAncho").val(value.medidamaxancho); $("#alto").val(value.medidadefalto); $("#ancho").val(value.medidadefancho); } }); var precioBaseReal = null; var parametros = new Array(); parametros.push(new Parametro("idProducto",valor)); parametros.push(new Parametro("idRango",eco_productos.idRangoMaximo)); var resultado = iu.ajax.pedir("productosControl.buscarPrecioBase",parametros,XJSON,SYNC,null); if(resultado.tipo == "Respuesta" && resultado.total > 0) { precioBaseReal = parseFloat(resultado.lista[0].precio).toFixed(2); precioBaseReal = precioBaseReal*100; precioBaseReal = precioBaseReal/100; } var parametros = new Array(); parametros.push(new Parametro("referrer","Product")); this.ajax.pedir("controlador.guardarSeleccionProducto",parametros,XJSON,ASYNC,"eco_productos.postGuardarSeleccionProducto"); dataLayer.push({ ecommerce: null}); dataLayer.push({ event: "select_item", ecommerce: { item_list_id: "product", item_list_name: "Product", items: [ { item_id: valor, item_name: nombreCategoriaEs+" "+nombreSubcategoriaEs+" "+nombreProductoEs, index: 0, item_category: nombreCategoriaEs, price: precioBaseReal } ] } }); this.recargarImprescindibles(); } this.redirigirSubcategoria = function() { /**- Función que redirige la página en función del parámetros seleccionados. Vamos a pedir el primer tamaño o producto de la categoría seleccionada, y recargaremos la página. **/ //Cogemos la url amigable var url = $("#modelo option:selected").attr("data-link"); var idSubcategoria = $("#modelo").val(); var idProductoDL = null; var nombreCategoriaEs = null; var nombreSubcategoriaEs = null; var nombreProductoEs = null; $.each(this.productos,function(index,value){ if(value.idsubcategoria == idSubcategoria) { if(value.defecto) { idProductoDL = value.id; nombreCategoriaEs = value.nombreCategoria_es; nombreSubcategoriaEs = value.nombreSubcategoria_es; nombreProductoEs = value.nombreProducto_es; } } }); var precioBaseReal = null; var parametros = new Array(); parametros.push(new Parametro("idProducto",idProductoDL)); parametros.push(new Parametro("idRango",eco_productos.idRangoMaximo)); var resultado = iu.ajax.pedir("productosControl.buscarPrecioBase",parametros,XJSON,SYNC,null); if(resultado.tipo == "Respuesta" && resultado.total > 0) { precioBaseReal = parseFloat(resultado.lista[0].precio).toFixed(2); precioBaseReal = precioBaseReal*100; precioBaseReal = precioBaseReal/100; } var parametros = new Array(); parametros.push(new Parametro("referrer","Product")); this.ajax.pedir("controlador.guardarSeleccionProducto",parametros,XJSON,ASYNC,"eco_productos.postGuardarSeleccionProducto"); dataLayer.push({ ecommerce: null}); dataLayer.push({ event: "select_item", ecommerce: { item_list_id: "product", item_list_name: "Product", items: [ { item_id: idProductoDL, item_name: nombreCategoriaEs+" "+nombreSubcategoriaEs+" "+nombreProductoEs, index: 0, item_category: nombreCategoriaEs, price: precioBaseReal } ] } }); //Redirigimos la web window.location.href = url; } this.seleccionarCaracteristica = function(idCaracteristica,idValorCaracteristica,tipoCaracteristica) { /**- Función que recoje el identificador de la característica seleccionada cuando el combo padre es el de las características con imagen. @param idCaracteristica, identificador de la característica cuyo valor estamos modificando. @param idValorCaracteristica, identificador del valor de la caracteristica. @param tipoCaracteristica, tipo de caracteristica. **/ this.idCaracteristica = idCaracteristica; if(this.caracteristicaTallaje != idCaracteristica) { this.idValorCaracteristica = idValorCaracteristica; //Seleccionamos el valor de la característica correspondiente $("#caracteristica_"+idCaracteristica).val(idValorCaracteristica); $("#caracteristica_"+idCaracteristica).prop('selected', false).eq(idValorCaracteristica).prop('selected', true); if(tipoCaracteristica == "Montaje") { $.each(eco_productos.caracteristicas,function(index,value){ if(value.iddependiente == eco_productos.idCategoria && value.tipoCaracteristica == tipoCaracteristica) { $.each(eco_productos.valores,function(indexVal,valueVal) { if(valueVal.id == idValorCaracteristica) { $("#caracteristicaMontaje").val(idCaracteristica+"_"+valueVal.orden); eco_productos.caracteristicaMontaje = idCaracteristica+"_"+valueVal.orden; } }); } }); } this.dibujarComboCaracteristicaImagen(tipoCaracteristica); this.recargarImprescindiblesActualizarPrecio(); } else { this.cogerValoresCaracteristicasTallaje(); } } this.validarMedidas = function() { /**- Función que valida el mínimo de las medidas cuando tenemos un producto a medida @return true o false en función de si las medidas pasan o no los controles de validación definidos. **/ if((this.medidaMinAlto != null && parseInt($("#alto").val()) < parseInt(this.medidaMinAlto))) { $("#medidas-error-minimas").html("Minimo: "+this.medidaMinAlto+this.tipoMedida); $("#medidas-error-minimas").show(); return false; } if((this.medidaMinAncho != null && parseInt($("#ancho").val()) < parseInt(this.medidaMinAncho))) { $("#medidas-error-minimas").html("Minimo: "+this.medidaMinAncho+this.tipoMedida); $("#medidas-error-minimas").show(); return false; } if((this.medidaMaxAlto != null && parseInt($("#alto").val()) > parseInt(this.medidaMaxAlto))) { $("#medidas-error-minimas").html("Massimo: "+this.medidaMaxAlto+this.tipoMedida); $("#medidas-error-minimas").show(); return false; } if((this.medidaMaxAncho != null && parseInt($("#ancho").val()) > parseInt(this.medidaMaxAncho))) { $("#medidas-error-minimas").html("Massimo: "+this.medidaMaxAncho+this.tipoMedida); $("#medidas-error-minimas").show(); return false; } return true; } this.validarNumeroEntero = function(nombre) { /**- Función que valida el número entero en un input #param nombre, identificador del input. **/ return "1234567890".indexOf($("#"+nombre).val().fromCharCode($("#"+nombre).which)) >= 0; } /**MÉTODOS PORST**/ this.postAnadirDatosSesion = function(respuesta) { /**- Función que procesa el resultado de una petición. @param respuesta, ok **/ //funcion que repinte el minicarrito //ahora está puesto a PELO var precio = 0; if(respuesta.lista.producto['descuento'] != undefined && respuesta.lista.producto['descuento'] == 1) { if(respuesta.lista.producto['disenhadoEmpresa'] != undefined && respuesta.lista.producto['disenhadoEmpresa'] == 1) { if(respuesta.lista.producto['productosPersonalizados'] != undefined && respuesta.lista.producto['productosPersonalizados'] == 1) { precio = respuesta.lista.producto['precioSinIVADescuentoDisenoPersonalizado']; } else { precio = respuesta.lista.producto['precioSinIVADescuentoDiseno']; } } else { precio = respuesta.lista.producto['precioSinIVADescuento']; } } else { if(respuesta.lista.producto['disenhadoEmpresa'] != undefined && respuesta.lista.producto['disenhadoEmpresa'] == 1) { if(respuesta.lista.producto['productosPersonalizados'] != undefined && respuesta.lista.producto['productosPersonalizados'] == 1) { precio = respuesta.lista.producto['precioSinIVADisenoPersonalizado']; } else { precio = respuesta.lista.producto['precioSinIVADiseno']; } } else { if(respuesta.lista.producto['productosPersonalizados'] != undefined && respuesta.lista.producto['productosPersonalizados'] == 1) { precio = respuesta.lista.producto['precioSinIVAPersonalizado']; } else { precio = respuesta.lista.producto['precioSinIVA']; } } } this.dataLayerAnadirProductoCarrito(); var caracteristicas_nuevo = ''; var fondo = null; var textoToolTip = null; if(respuesta.lista.producto.caracteristicas != undefined) { $.each(respuesta.lista.producto.caracteristicas, function(index,value){ if(value.valorCaracteristica != "") caracteristicas_nuevo += value.valorCaracteristica; if(value.tipoCaracteristica != null && value.tipoCaracteristica.indexOf("SelectorColores") != -1 && value.textoToolTip != "") { textoToolTip = value.textoToolTip; caracteristicas_nuevo += ' - ' + textoToolTip; } if(value.tipoCaracteristica != null && value.tipoCaracteristica.indexOf("SelectorColores") != -1 && value.fondo != "") fondo = value.fondo; caracteristicas_nuevo += ' / '; }); //caracteristicas_nuevo = caracteristicas_nuevo.substr(0, caracteristicas_nuevo.length-3); } if(respuesta.lista.producto['ancho'] != undefined && respuesta.lista.producto['ancho'] != null && respuesta.lista.producto['ancho'] != "") caracteristicas_nuevo += respuesta.lista.producto['ancho']+" x "+respuesta.lista.producto['alto']+" ("+respuesta.lista.producto['tipoMedida']+") / "; caracteristicas_nuevo += "Design: "+respuesta.lista.producto['cantidadDisenhos']; if(fondo != null) $(".tabla-listado-productos-minicarrito table").append(''+respuesta.lista.producto.nombre_categoria+' '+respuesta.lista.producto.nombre_subcategoria+' '+respuesta.lista.producto.nombre_producto+'
'+caracteristicas_nuevo+''+respuesta.lista.producto.cantidadTotal+' u.'+formatoPrecioHTML(precio)+''); else $(".tabla-listado-productos-minicarrito table").append(''+respuesta.lista.producto.nombre_categoria+' '+respuesta.lista.producto.nombre_subcategoria+' '+respuesta.lista.producto.nombre_producto+'
'+caracteristicas_nuevo+''+respuesta.lista.producto.cantidadTotal+' u.'+formatoPrecioHTML(precio)+''); $(".dropdown-carrito").addClass("movido"); if(respuesta.lista.total < 120) { $(".mensaje-carrito-tefalta span").html(formatoPrecioHTML((120)-respuesta.lista.total)); $(".mensaje-carrito-tefalta").show(); $(".mensaje-carrito-enviogratis").hide(); } else { $(".mensaje-carrito-tefalta").hide(); $(".mensaje-carrito-enviogratis").show(); } $("#carritoPrecioTotal").html(formatoPrecioHTML(respuesta.lista.total)); $("#cantidadProductosCarritoMenu").html(parseInt(respuesta.lista.cuantos)); $(".dropdown-carrito").addClass("movido"); $(".page-cover").show(); } this.postBuscarImagenPlantilla = function(respuesta) { /**- Función que procesa el resultado de una petición. @param respuesta, Objeto Respuesta. **/ //Procesamos la respuesta if(respuesta.tipo == "Respuesta" && respuesta.total == 1) { this.imagenPlantilla = respuesta.lista[0]['imagen']; $(".btn_plantilla").attr("src",this.imagenPlantilla); $(".btn_plantilla").attr("href",this.imagenPlantilla); } else this.imagenPlantilla = null; } this.postBuscarImagenPrincipal = function(respuesta) { /**- Función que procesa el resultado de una petición. @param respuesta, Objeto Respuesta. **/ //Procesamos la respuesta if(respuesta.tipo == "Respuesta" && respuesta.total == 1) { this.imagenProducto = respuesta.lista[0]['imagen']; $("#imagenSubcategoriaProducto").attr("src",this.imagenProducto); } } this.postBuscarPrecio = function(respuesta) { /**- Función que procesa el resultado de una petición. @param respuesta, Objeto Respuesta. **/ //Procesamos la respuesta if(respuesta.tipo == "Respuesta" && respuesta.total > 0) { this.precioConIVA = respuesta.lista['precioConIVA']; this.precioConIVAUnidad = respuesta.lista['precioConIVAUnidad']; this.precioConIVADescuento = respuesta.lista['precioConIVADescuento']; this.precioConIVADescuentoUnidad = respuesta.lista['precioConIVADescuentoUnidad']; this.precioConIVADiseno = respuesta.lista['precioConIVADiseno']; this.precioConIVADisenoUnidad = respuesta.lista['precioConIVADisenoUnidad']; this.precioConIVAPersonalizado = respuesta.lista['precioConIVAPersonalizado']; this.precioConIVAPersonalizadoUnidad = respuesta.lista['precioConIVAPersonalizadoUnidad']; this.precioConIVADescuentoDiseno = respuesta.lista['precioConIVADescuentoDiseno']; this.precioConIVADescuentoDisenoUnidad = respuesta.lista['precioConIVADescuentoDisenoUnidad']; this.precioConIVADescuentoPersonalizado = respuesta.lista['precioConIVADescuentoPersonalizado']; this.precioConIVADescuentoPersonalizadoUnidad = respuesta.lista['precioConIVADescuentoPersonalizadoUnidad']; this.precioConIVADisenoPersonalizado = respuesta.lista['precioConIVADisenoPersonalizado']; this.precioConIVADisenoPersonalizadoUnidad = respuesta.lista['precioConIVADisenoPersonalizadoUnidad']; this.precioConIVADescuentoDisenoPersonalizado = respuesta.lista['precioConIVADescuentoDisenoPersonalizado']; this.precioConIVADescuentoDisenoPersonalizadoUnidad = respuesta.lista['precioConIVADescuentoDisenoPersonalizadoUnidad']; this.precioSinIVA = respuesta.lista['precioSinIVA']; this.precioSinIVAUnidad = respuesta.lista['precioSinIVAUnidad']; this.precioSinIVADescuento = respuesta.lista['precioSinIVADescuento']; this.precioSinIVADescuentoUnidad = respuesta.lista['precioSinIVADescuentoUnidad']; this.precioSinIVADiseno = respuesta.lista['precioSinIVADiseno']; this.precioSinIVADisenoUnidad = respuesta.lista['precioSinIVADisenoUnidad']; this.precioSinIVAPersonalizado = respuesta.lista['precioSinIVAPersonalizado']; this.precioSinIVAPersonalizadoUnidad = respuesta.lista['precioSinIVAPersonalizadoUnidad']; this.precioSinIVADescuentoDiseno = respuesta.lista['precioSinIVADescuentoDiseno']; this.precioSinIVADescuentoDisenoUnidad = respuesta.lista['precioSinIVADescuentoDisenoUnidad']; this.precioSinIVADescuentoPersonalizado = respuesta.lista['precioSinIVADescuentoPersonalizado']; this.precioSinIVADescuentoPersonalizadoUnidad = respuesta.lista['precioSinIVADescuentoPersonalizadoUnidad']; this.precioSinIVADisenoPersonalizado = respuesta.lista['precioSinIVADisenoPersonalizado']; this.precioSinIVADisenoPersonalizadoUnidad = respuesta.lista['precioSinIVADisenoPersonalizadoUnidad']; this.precioSinIVADescuentoDisenoPersonalizado = respuesta.lista['precioSinIVADescuentoDisenoPersonalizado']; this.precioSinIVADescuentoDisenoPersonalizadoUnidad = respuesta.lista['precioSinIVADescuentoDisenoPersonalizadoUnidad']; this.actualizarCondicionesProducto(); this.controlDependientesRangoMaxStock(); this.controlHabilitarDeshabilitar(); this.controlDependientesTallaje(); this.controlDependientesPliego(); this.controlDependientesDatoVariable(); this.controlDependientesMontaje(); } else { iu.comunicarMio(respuesta.valor,respuesta.mensaje,"productos"); } } this.postBuscarProducto = function(respuesta) { /**- Función que procesa la respuesta de una petición ajax asíncrona. @respuesta, Objeto Respuesta con los resultados de la petición. **/ if(respuesta.tipo == "Respuesta" && respuesta.total > 0) { this.pesoProducto = respuesta.lista[0].peso; $("#pesoProducto").val(this.pesoProducto); this.defectoProducto = respuesta.lista[0].defecto; $("#defectoProducto").val(this.defectoProducto); this.hayStock = respuesta.lista[0].stock; $("#hayStockProducto").val(this.hayStock); this.nombreProducto = respuesta.lista[0].nombreProducto; $("#nombreProducto").val(respuesta.lista[0].nombreProducto); this.idProductoStock = respuesta.lista[0].idproductostock; $("#idProductoStock").val(respuesta.lista[0].idproductostock); this.textoNombreSeo = respuesta.lista[0].textoNombreSeo; } } this.postBuscarProductoEspanol = function(respuesta) { /**- Función que procesa la respuesta de una petición ajax asíncrona. @respuesta, Objeto Respuesta con los resultados de la petición. **/ if(respuesta.tipo == "Respuesta" && respuesta.total > 0) { $("#nombreProducto_es").val(respuesta.lista[0].nombreProducto); } } this.postBuscarUsuario = function(respuesta) { /**- Función que procesa la respuesta de una petición ajax asíncrona. @respuesta, Objeto Respuesta con los resultados de la petición. **/ if(respuesta.tipo == "Respuesta") { dataLayer.push({ user_id: respuesta.lista }); } } this.postCargarCarrito = function(respuesta) { /**- Función que procesa la respuesta de una petición ajax asíncrona. @respuesta, Objeto Respuesta con los resultados de la petición. **/ if(respuesta.tipo == "Respuesta" && respuesta.total > 0) { this.carrito = respuesta.lista; } else { this.carrito = null; } } this.postCargarCategorias = function(respuesta) { /**- Función que procesa la respuesta de una petición ajax asíncrona. @respuesta, Objeto Respuesta con los resultados de la petición. **/ if(respuesta.tipo == "Respuesta" && respuesta.total > 0) { //Cargamos las variables de clase de lós paneles this.categorias = respuesta.lista; this.contadorCarga++; //Calculamos los precios con la cantidad de productos mínima. if(this.contadorCarga == 7) { if(this.caracteristicaTallaje == null || this.caracteristicaTallaje == "") this.calcularPrecio(); else { this.controlHabilitarDeshabilitar(); this.controlDependientesRangoMaxStock(); this.controlDependientesTallaje(); this.controlDependientesPliego(); this.controlDependientesDatoVariable(); this.controlDependientesMontaje(); } } } else this.categorias = null; } this.postCargarCaracteristicas = function(respuesta) { /**- Función que procesa la respuesta de una petición ajax asíncrona. @respuesta, Objeto Respuesta con los resultados de la petición. **/ if(respuesta.tipo == "Respuesta" && respuesta.total > 0) { //Cargamos las variables de clase de lós paneles this.caracteristicas = respuesta.lista; this.totalCaracteristicas = respuesta.total; this.contadorCarga++; //Calculamos los precios con la cantidad de productos mínima. if(this.contadorCarga == 7) { if(this.caracteristicaTallaje == null || this.caracteristicaTallaje == "") this.calcularPrecio(); else { this.controlHabilitarDeshabilitar(); this.controlDependientesRangoMaxStock(); this.controlDependientesTallaje(); this.controlDependientesPliego(); this.controlDependientesDatoVariable(); this.controlDependientesMontaje(); } } this.contadorCargaSelectColores++; if(this.contadorCargaSelectColores == 2) { $("#imagenPrincipalProducto").css("background",this.fondoSeleccionado); $("#slide_0").css("background", this.fondoSeleccionado); miCarrusel.irADiapositiva("slide_0"); } } else { this.caracteristicas = null; this.totalCaracteristicas = 0; } } this.postCargarImagenesSubcategorias = function(respuesta) { /**- Función que procesa la respuesta de una petición ajax asíncrona. @respuesta, Objeto Respuesta con los resultados de la petición. **/ if(respuesta.tipo == "Respuesta" && respuesta.total > 0) { //Cargamos las variables de clase de lós paneles this.imagenesSubcategorias = respuesta.lista; } else this.imagenesSubcategorias = null; } this.postCargarImagenesProductos = function(respuesta) { /**- Función que procesa la respuesta de una petición ajax asíncrona. @respuesta, Objeto Respuesta con los resultados de la petición. **/ if(respuesta.tipo == "Respuesta" && respuesta.total > 0) { //Cargamos las variables de clase de lós paneles this.imagenesProductos = respuesta.lista; this.dibujarImagenesProductos(); } else this.imagenesProductos = null; } this.postCargarPrecioNDiseno = function(respuesta) { /**- Función que procesa la respuesta de un apetición ajax asíncrona. @respuesta, Objeto Respuesta con los resultados de la petición. **/ if(respuesta.tipo == "Respuesta" && respuesta.total > 0) { //Cargamos las variables de clase. this.preciosNDiseno = respuesta.lista; this.contadorCarga++; //Calculamos los precios con la cantidad de productos mínima. if(this.contadorCarga == 7) { if(this.caracteristicaTallaje == null || this.caracteristicaTallaje == "") this.calcularPrecio(); else { this.controlHabilitarDeshabilitar(); this.controlDependientesRangoMaxStock(); this.controlDependientesTallaje(); this.controlDependientesPliego(); this.controlDependientesDatoVariable(); this.controlDependientesMontaje(); } } } else this.preciosNDiseno = null; } this.postCargarPreciosRangosMetro = function(respuesta) { /**- Función que procesa la respuesta de una petición ajax asíncrona. @respuesta, objeto Respuesta. **/ if(respuesta.tipo == "Respuesta" && respuesta.total > 0) { this.preciosRangosMetro = respuesta.lista; this.totalPreciosRangosMetro = respuesta.total; this.maximoRangoMetro = respuesta.lista[((respuesta.total)-1)].maximo; this.minimoRangoMetro = respuesta.lista[0].minimo; this.controlHabilitarDeshabilitar(); this.contadorCarga++; //Calculamos los precios con la cantidad de productos mínima. if(this.contadorCarga == 7) { if(this.caracteristicaTallaje == null || this.caracteristicaTallaje == "") this.calcularPrecio(); else { this.controlHabilitarDeshabilitar(); this.controlDependientesRangoMaxStock(); this.controlDependientesTallaje(); this.controlDependientesPliego(); this.controlDependientesDatoVariable(); this.controlDependientesMontaje(); } } } else { this.preciosRangosMetro = null; this.totalPreciosRangosMetro = 0; this.controlHabilitarDeshabilitar(); this.contadorCarga++; //Calculamos los precios con la cantidad de productos mínima. if(this.contadorCarga == 7) { if(this.caracteristicaTallaje == null || this.caracteristicaTallaje == "") this.calcularPrecio(); else { this.controlHabilitarDeshabilitar(); this.controlDependientesRangoMaxStock(); this.controlDependientesTallaje(); this.controlDependientesPliego(); this.controlDependientesDatoVariable(); this.controlDependientesMontaje(); } } } } this.postCargarProductos = function(respuesta) { /**- Función que procesa la respuesta de una petición ajax asíncrona. @respuesta, Objeto Respuesta con los resultados de la petición. **/ if(respuesta.tipo == "Respuesta" && respuesta.total > 0) { //Cargamos las variables de clase de lós paneles this.productos = respuesta.lista; this.contadorCarga++; //Calculamos los precios con la cantidad de productos mínima. if(this.contadorCarga == 7) { if(this.caracteristicaTallaje == null || this.caracteristicaTallaje == "") this.calcularPrecio(); else { this.controlHabilitarDeshabilitar(); this.controlDependientesRangoMaxStock(); this.controlDependientesTallaje(); this.controlDependientesPliego(); this.controlDependientesDatoVariable(); this.controlDependientesMontaje(); } } } else this.productos = null; } this.postCargarSubcategorias = function(respuesta) { /**- Función que procesa la respuesta de una petición ajax asíncrona. @respuesta, Objeto Respuesta con los resultados de la petición. **/ if(respuesta.tipo == "Respuesta" && respuesta.total > 0) { //Cargamos las variables de clase de lós paneles this.subcategorias = respuesta.lista; this.contadorCarga++; //Calculamos los precios con la cantidad de productos mínima. if(this.contadorCarga == 7) { if(this.caracteristicaTallaje == null || this.caracteristicaTallaje == "") this.calcularPrecio(); else { this.controlHabilitarDeshabilitar(); this.controlDependientesRangoMaxStock(); this.controlDependientesTallaje(); this.controlDependientesPliego(); this.controlDependientesDatoVariable(); this.controlDependientesMontaje(); } } } else this.subcategorias = null; } this.postCargarValoresCaracteristicas = function(respuesta) { /**- Función que procesa la respuesta de una petición ajax asíncrona. @respuesta, Objeto Respuesta con los resultados de la petición. **/ if(respuesta.tipo == "Respuesta" && respuesta.total > 0) { //Cargamos las variables de clase de lós paneles this.valores = respuesta.lista; this.contadorCarga++; //Calculamos los precios con la cantidad de productos mínima. if(this.contadorCarga == 7) { if(this.caracteristicaTallaje == null || this.caracteristicaTallaje == "") this.calcularPrecio(); else { this.controlHabilitarDeshabilitar(); this.controlDependientesRangoMaxStock(); this.controlDependientesTallaje(); this.controlDependientesPliego(); this.controlDependientesDatoVariable(); this.controlDependientesMontaje(); } } this.contadorCargaSelectColores++; if(this.contadorCargaSelectColores == 2) { $("#imagenPrincipalProducto").css("background",this.fondoSeleccionado); $("#slide_0").css("background", this.fondoSeleccionado); miCarrusel.irADiapositiva("slide_0"); } } else this.valores = null; } this.postEnviarMailPresupuesto = function(respuesta) { /**- Función que procesa la respuesta de una petición ajax asíncrona. @respuesta, Objeto Resultado con los resultados de la petición. **/ $("#presupuestoModal").hide(); iu.comunicarMio(respuesta.valor, respuesta.mensaje, "presupuestoEnviado"); } this.postGuardarPresupuesto = function(respuesta) { /**- Función que procesa el resultado de una petición asíncrona. @param respuesta, Objeto Resultado. **/ if(respuesta.tipo == "Resultado" && respuesta.valor == "Ok") { eco_productos.idPresupuesto = respuesta.idregistro; eco_productos.enviarMailPresupuesto(); $("#presupuestoModal").hide(); } else { //Ocultamos el modal y mostramos error $("#presupuestoModal").hide(); iu.comunicarMio(respuesta.valor, respuesta.mensaje,"productos"); } } this.postGuardarSeleccionProducto = function(respuesta) { /**- Función que procesa el resultado de una petición asíncrona. @param respuesta, Objeto Resultado. **/ if(!(respuesta.tipo == "Resultado" && respuesta.valor == "Ok")) iu.comunicarMio(respuesta.valor, respuesta.mensaje,"productos"); } } var eco_productos = new Productos(); $(document).ready(function(){ eco_productos.iniciar(); $(document).on('click', function(e){ e.stopPropagation(); if(e.target.id != "btn_tallas") { if(e.target.id != undefined && e.target.id != "") { var partesId = e.target.id.split("_"); var idCaracteristica = partesId[1]; var $actual = $(".listado-paises_" + idCaracteristica); $(".listado-paises").not($actual).hide(); if(idCaracteristica != eco_productos.caracteristicaTallaje) { $('.listado-paises:visible').hide(); // cierra todos los dropdowns abiertos } } else $('.listado-paises:visible').hide(); // cierra todos los dropdowns abiertos } eco_productos.cogerValoresCaracteristicasTallaje(); }); $("#aceptarBotonQueEsEstoProducto").click(function(){ $("#patrocinio").prop("checked",true); $("#que-es-esto").modal("hide"); eco_productos.actualizarCondicionesProducto(); }); $("#aceptarBtnPersonalizacionIndividual").click(function(){ $("#personalizacion").prop("checked",true); $("#personalizacion-individual").modal("hide"); eco_productos.actualizarCondicionesProducto(); }); $(".activo.pais").click(function(e) { e.stopPropagation(); var partesId = e.currentTarget.classList[2].split("_"); var idCaracteristica = partesId[1]; var $actual = $(".listado-paises_" + idCaracteristica); $(".listado-paises").not($actual).hide(); $actual.toggle(); eco_productos.cogerValoresCaracteristicasTallaje(); }); $("#alto").change(function() { $("#medidas-error-minimas").html(""); $("#medidas-error-minimas").hide(); eco_productos.validarMedidas(); }); $("#ancho").change(function() { $("#medidas-error-minimas").html(""); $("#medidas-error-minimas").hide(); eco_productos.validarMedidas(); }); $("#btn_calculadoraDTFModal").click(function(){ eco_productos.calcularDTFModal(); }); $("#btn_carrito").click(function(){ $("#btn_calculando").hide(); $("#btn_carrito").prop("disabled",true); eco_productos.anadirProductoSesion(); setTimeout(function(){ $("#btn_carrito").prop("disabled",false); },1000); }); $("#btn_dtf").click(function() { $("#errorCalculadoraDTFModal").html(""); $("#anchoCalculadoraDTFModal").val(""); $("#altoCalculadoraDTFModal").val(""); $("#cantidadCalculadoraDTFModal").val(""); $("#avisoscalculadoraDTF").html(""); if(eco_productos.caracteristicas != null) { $.each(eco_productos.caracteristicas,function(index,value){ if(value.tipoCaracteristica == "Pliego") { if(eco_productos.valores != null) { $.each(eco_productos.valores,function(indexVal,valueVal){ if(valueVal.idcaracteristica == value.id) { if($("#caracteristica_"+value.id).val() == valueVal.id) eco_productos.pliego = valueVal.nombreValorCaracteristica; } }); } } }); } $("#tituloDTFModal").html("Dimensione del foglio selezionato: "+eco_productos.pliego); $("#calculadoraDTFModal").modal("show"); }); $(".btn_dtf_abajo").click(function() { $("#errorCalculadoraDTFModal").html(""); $("#anchoCalculadoraDTFModal").val(""); $("#altoCalculadoraDTFModal").val(""); $("#cantidadCalculadoraDTFModal").val(""); $("#avisoscalculadoraDTF").html(""); if(eco_productos.caracteristicas != null) { $.each(eco_productos.caracteristicas,function(index,value){ if(value.tipoCaracteristica == "Pliego") { if(eco_productos.valores != null) { $.each(eco_productos.valores,function(indexVal,valueVal){ if(valueVal.idcaracteristica == value.id) { if($("#caracteristica_"+value.id).val() == valueVal.id) eco_productos.pliego = valueVal.nombreValorCaracteristica; } }); } } }); } $("#tituloDTFModal").html("Dimensione del foglio selezionato: "+eco_productos.pliego); $("#calculadoraDTFModal").modal("show"); }); $("#btn_enviarMailPresupuesto").click(function(){ eco_productos.enviarMailPresupuesto(); }); $("#btn-mas-cantidadProducto").click(function(){ $("#btn_carrito").prop("disabled",true); //$("#btn_carrito").hide(); //$("#btn_calculando").show(); eco_productos.actualizarPrecio("cantidad","mas"); }); $("#btn-mas-disenhoProducto").click(function(){ $("#btn_carrito").prop("disabled",true); //$("#btn_carrito").hide(); //$("#btn_calculando").show(); eco_productos.actualizarPrecio("ndesigns","mas"); }); $("#btn-menos-cantidadProducto").click(function(){ $("#btn_carrito").prop("disabled",true); //$("#btn_carrito").hide(); //$("#btn_calculando").show(); eco_productos.actualizarPrecio("cantidad","menos"); }); $("#btn-menos-disenhoProducto").click(function(){ $("#btn_carrito").prop("disabled",true); //$("#btn_carrito").hide(); //$("#btn_calculando").show(); eco_productos.actualizarPrecio("ndesigns","menos"); }); $("#btn_presupuesto").click(function(){ eco_productos.modalPresupuesto(); }); $("#btn_tallas").click(function(){ $(".listado-paises").hide(); $(".listado-paises_"+eco_productos.caracteristicaTallaje+":hidden").toggle(); }); $(".calculadoraDTF").on("input",function(){ this.value = this.value .replace(/[^0-9]/g, '') .replace(/^0+/, ''); }); $(".cantidades").on("input", function () { this.value = this.value .replace(/[^0-9]/g, '') .replace(/^0+/, ''); if (this.value.length > 5) { this.value = '99999'; } }); $(".cantidades").change(function () { eco_productos.cogerValoresCaracteristicasTallaje(); }); $("#diseno").change(function(){ eco_productos.actualizarCondicionesProducto(); }); $("#enlaceModalImagenesCierresPulseras").click(function(){ iu.comunicarMio("","
Nessuna ChiusuraRegolabile a Sfera
Regolabile a Sfera
Regolabile in Metallo
Regolabile in Metallo
Regolabile a Molla
Regolabile a Molla
Sicurezza in Plastica
Sicurezza in Plastica
Sicurezza in Metallo
Sicurezza in Metallo
Economico / Satinato 10mm
Economico / Satinato 15mm
Economico / Satinato 20mm
Spesso 10mm
Spesso 15mm
Spesso 20mm
","productos"); }); $("#enlaceModalDisenoMontaje").click(function(){ iu.comunicarMio("","

Numero totale di design

Indica qui il numero totale di design diversi di cui hai bisogno.

Nei passaggi successivi del processo di acquisto potrai caricare i file e indicare la dimensione di stampa di ogni design, nonché la quantità di stampe necessarie per ciascuno di essi.

Tieni presente che la quantità finale di stampe sarà adattata alle unità che entrano nel foglio, quindi dipenderà dalla dimensione di stampa di ogni design e dalla dimensione del foglio scelto. Pertanto, tale quantità potrà essere inferiore o superiore a quella richiesta.

","productos"); }); $("#enlaceModalMontaje").click(function(){ iu.comunicarMio("","

Montaggio del file

Se il tuo file di stampa è impaginato con la dimensione del foglio scelto ed è pronto per la stampa, seleziona l’opzione Pronto per la stampa. Stamperemo il file ricevuto, senza ritocchi né modifiche.

Se hai il tuo design o i tuoi design separati e desideri che li impaginiamo nella dimensione del foglio di stampa, seleziona Ho bisogno del montaggio. Dovrai indicarci la dimensione di ogni design e li disporremo in modo ottimizzato su un foglio della dimensione scelta, dal quale verranno stampate tante copie quante ne hai selezionate. Utilizza il nostro calcolatore di fogli per calcolare quante copie ti servono per ottenere un numero specifico di unità.

Contattaci se hai bisogno di opzioni di design aggiuntive o assistenza per la stampa.

","productos"); }); $("#enlaceModalModalPliego").click(function(){ iu.comunicarMio("","Come calcolare il numero di fogli necessari per la mia stampa DTF?

Utilizza il nostro calcolatore di fogli (sotto il pulsante di acquisto)
e ottieni in modo semplice e veloce le unità ideali per il tuo ordine.","productos"); }); $("#enlaceModalModalSemitonos").click(function(){ iu.comunicarMio("","","productos"); }); $("#patrocinio").change(function(){ if($("#patrocinio").prop("checked")) { if(window.innerWidth < 992) { $('html, body').animate({ scrollTop: $("#patrocinio").offset().top - 500 }); } $("#que-es-esto").modal("show"); } $("#patrocinio").prop("checked",false); eco_productos.actualizarCondicionesProducto(); }); $("#personalizacion").change(function(){ if($("#personalizacion").prop("checked")) { if(window.innerWidth < 992) { $('html, body').animate({ scrollTop: $("#patrocinio").offset().top - 500 }); } $("#personalizacion-individual").modal("show"); } $("#personalizacion").prop("checked",false); eco_productos.actualizarCondicionesProducto(); }); });