function ejecutaJavascript(texto) { var p1=texto.split("",2); var p3=p2[1].split(" 255) { alert( "Caracter Unicode '"+ch+"' no puede ser codificado utilizando la codificación URL estandar.\n" + "(sólo soporta caracteres de 8-bit.)\n" + "Será sustituido por un símbolo de suma (+)." ); codificado += "+"; } else { codificado += "%"; codificado += HEX.charAt((charCode >> 4) & 0xF); codificado += HEX.charAt(charCode & 0xF); } } } cadena = codificado; return cadena; }; function urlDecode( cadena ){ var HEXCHARS = "0123456789ABCDEFabcdef"; var codificado = cadena ; var textoAcodificar = ""; var i = 0; while (i < codificado.length) { var ch = codificado.charAt(i); if (ch == "+") { textoAcodificar += " "; i++; } else if (ch == "%") { if (i < (codificado.length-2) && HEXCHARS.indexOf(codificado.charAt(i+1)) != -1 && HEXCHARS.indexOf(codificado.charAt(i+2)) != -1 ) { textoAcodificar += unescape( codificado.substr(i,3) ); i += 3; } else { alert( 'Bad escape combination near ...' + codificado.substr(i) ); textoAcodificar += "%[ERROR]"; i++; } } else { textoAcodificar += ch; i++; } } cadena = textoAcodificar; return cadena; }; function seleccionaModelo() { enlace='php/muestra_modelo.php?'; enlace+='id_articulo='+document.formModelo.id_articulo.value; if (typeof document.formModelo.talla != "undefined") enlace+='&talla='+document.formModelo.talla.value; else enlace+='&talla=0'; if (typeof document.formModelo.color != "undefined") enlace+='&color='+document.formModelo.color.value; else enlace+='&color=0'; enlace+='&cantidad='+document.formModelo.cantidad.value; enlace+='&precio='+document.formModelo.precio.value; if ((typeof document.formModelo.concaja != "undefined") && document.formModelo.concaja.checked) enlace+='&concaja'; // En firefox no se añade el producto al llamar a la función ajax en modo asíncrono cuando se usa el cheque o la tarjeta regalo. Pero tampoco funciona si se llama en modo síncrono en los otros casos, así que llamamos a request en modo asíncrono o no según convenga. if (document.formModelo.tienda.value=='cupon' || document.formModelo.tienda.value=='tarjeta') { request('modelo',enlace,false); top.location.reload(); } else { if (document.formModelo.tienda.value=='regalo') { request('modelo',enlace,false); } else { request('modelo',enlace); } } // alert('Producto añadido a su carrito de la compra'); } function seleccionaModeloTarjeta() { if (document.getElementById("texto_tarjeta").value == "" || document.getElementById("nombre_destinatario").value == "") { alert("Por favor, indicanos el texto de la tarjeta y el destinatario."); } else { enlace='php/muestra_modelo_tarjeta.php?'; enlace+='id_articulo='+document.formModelo.id_articulo.value; if (typeof document.formModelo.talla != "undefined") enlace+='&talla='+document.formModelo.talla.value; else enlace+='&talla=0'; if (typeof document.formModelo.color != "undefined") enlace+='&color='+document.formModelo.color.value; else enlace+='&color=0'; enlace+='&cantidad=1'; enlace+='&precio='+document.formModelo.precio.value; enlace+='&texto_tarjeta='+urlEncode(document.getElementById("texto_tarjeta").value); enlace+='&nombre_destinatario='+urlEncode(document.getElementById("nombre_destinatario").value); if ((typeof document.formModelo.concaja != "undefined") && document.formModelo.concaja.checked) enlace+='&concaja'; request('modelo',enlace,false); } } function buscaArticulo(referencia) { enlace='php/muestra_modelo.php?'; enlace+='referencia='+referencia; request('modelo',enlace); } function buscaColor(params) { enlace='php/muestra_catalogo.php?'; enlace+=params; request('catalogo',enlace); } function cambiaTalla() { //alert('muestra colores de la talla '+document.formModelo.talla.value); enlace='php/muestra_modelo.php?'; enlace+='id_articulo='+document.formModelo.id_articulo.value; enlace+='&talla='+document.formModelo.talla.value; request('modelo',enlace); } function cambiaColor() { //alert('muestra color '+document.formModelo.color.value); window.scrollTo(0,0); enlace='php/muestra_modelo.php?'; enlace+='id_articulo='+document.formModelo.id_articulo.value; enlace+='&talla='+document.formModelo.talla.value; enlace+='&color='+document.formModelo.color.value; request('modelo',enlace); } function elimina_producto(id_articulo, id_talla, id_color, tienda) { enlace='php/muestra_carrito.php?'; enlace+='id_articulo='+id_articulo; enlace+='&talla='+id_talla; enlace+='&color='+id_color; enlace+='&accion=eliminar'; // En firefox no se elimina el producto al llamar a la función ajax en modo asíncrono cuando se usa el cheque o la tarjeta regalo. Pero tampoco funciona si se llama en modo síncrono en los otros casos, así que llamamos a request en modo asíncrono o no según convenga. if (tienda=='cupon' || tienda=='tarjeta') { request('modelo',enlace,false); top.location.reload(); } else { request('modelo',enlace); } } function elimina_producto_tarjeta(id_articulo, num_tarjeta) { enlace='php/muestra_carrito.php?'; enlace+='id_articulo='+id_articulo; enlace+='&numero_tarjeta='+num_tarjeta; enlace+='&accion=eliminar'; request('modelo',enlace); } function elimina_producto_SB(num_SB) { enlace='php/muestra_carrito.php?'; enlace+='&numero_SB='+num_SB; enlace+='&accion=eliminar'; request('modelo',enlace); } function recalcula(id_articulo, id_talla, id_color, cantidad, num_cajas) { enlace='php/muestra_carrito.php?'; enlace+='id_articulo='+id_articulo; enlace+='&talla='+id_talla; enlace+='&color='+id_color; enlace+='&cantidad='+cantidad; enlace+='&num_cajas='+num_cajas; enlace+='&accion=cambiar_cantidad'; request('modelo',enlace); } function comprueba_entrega(control) { /* accion=(control.checked)?"ocultar":"mostrar"; request("entrega", "php/muestra_entrega.php?accion="+accion);*/ if (control.checked) document.getElementById('datos_entrega').style.display='none'; else document.getElementById('datos_entrega').style.display='block'; } function comprueba_facturacion(control) { /* accion=(control.checked)?"ocultar":"mostrar"; request("facturacion", "php/muestra_facturacion.php?accion="+accion); */ if (control.checked) document.getElementById('datos_facturacion').style.display='none'; else document.getElementById('datos_facturacion').style.display='block'; } // Añade la url pasada a favoritos function addFav(url, titulo) { if (window.sidebar&&window.sidebar.addPanel) window.sidebar.addPanel(titulo,url,""); else window.external.AddFavorite(url,titulo) } // funcion para cambiar el modelo seleccionado cuando se cambia de página en el catálogo // nota: falla en Firefox (aunque sólo si se ponen los dos request) /*function request_catalogo(php) { request('catalogo',php); request('modelo','php/muestra_modelo.php?origen=catalogo'); }*/ var g_htmlLoading = "
"; function muestraCargador(donde) { elemento=document.getElementById(donde); elemento.innerHTML = g_htmlLoading; }