diff --git a/PS_1.7/openpayprestashop/controllers/front/typecard.php b/PS_1.7/openpayprestashop/controllers/front/typecard.php index afd0658..45136aa 100644 --- a/PS_1.7/openpayprestashop/controllers/front/typecard.php +++ b/PS_1.7/openpayprestashop/controllers/front/typecard.php @@ -26,7 +26,6 @@ class OpenpayPrestashopTypeCardModuleFrontController extends ModuleFrontController { - public function initContent() { parent::initContent(); @@ -39,7 +38,7 @@ public function displayAjax() $cardBin = Tools::getValue('card_bin'); $binRequestResponse = $this->getTypeCard($cardBin); - Logger::addLog('#cardType => '.$binRequestResponse, 1, null, 'Cart', (int) $this->context->cart->id, true); + Logger::addLog('#cardType => '.json_encode($binRequestResponse), 1, null, 'Cart', (int) $this->context->cart->id, true); if (!$binRequestResponse){ $binRequestResponse = array( diff --git a/PS_1.7/openpayprestashop/es.php b/PS_1.7/openpayprestashop/es.php index 72ad269..0e16d03 100644 --- a/PS_1.7/openpayprestashop/es.php +++ b/PS_1.7/openpayprestashop/es.php @@ -3,17 +3,11 @@ global $_MODULE; $_MODULE = array(); $_MODULE['<{openpayprestashop}prestashop>openpayprestashop_59fca29c3aac96cc30bd3aee10a5d364'] = 'Openpay'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_d3988a372a94211257af1420ebb6e40a'] = 'Acepta pagos con tarjeta de crédtio-débito, pagos en efectivo y vía SPEI con Openpay'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_ebb8d514f56157d7bd513eefdd9adb63'] = 'En espera de pago'; +$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_ba4058004755dfd070308e293b88ab7c'] = 'Servicio no disponible.'; +$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_e2e8d0a2b79a779bb06656d2a6f39a00'] = 'La petición no pudo ser procesada.'; $_MODULE['<{openpayprestashop}prestashop>openpayprestashop_ad714e2411c2dab284b7a7af067df14e'] = 'Openpay pago con tarjeta'; +$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_8e5f653542197f29181fc29851462107'] = 'PrestaShop Cart ID'; $_MODULE['<{openpayprestashop}prestashop>openpayprestashop_1100ee030335d019d5b7e7ae775d1a8e'] = 'Número de tarjeta:'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_35a7fad5166f249c76a30d50bb57eca1'] = 'Openpay pago con bitcoin'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_aea7f422238bdf0bf333a55e7b8be91d'] = 'Monto en bitcoins'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_c6fe2fd307f583c9af80171c10aa84fc'] = 'Dirección de pago'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_2ad91ac9b5ce587dfe3c6a4b4cffb944'] = 'Openpay pago en efectivo'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_3dd42bfc8345e82c43b4a40a3426ec49'] = 'Referencia:'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_2ccbcbd83c08414f6674c3b0e8686d0a'] = 'Openpay con SPEI'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_9205878d3f61a37bdc41ba592fab431c'] = 'CLABE:'; $_MODULE['<{openpayprestashop}prestashop>openpayprestashop_645f6f84d4a8e99e7897634df8c1e5f4'] = 'Detalle de Transacción de Openpay:'; $_MODULE['<{openpayprestashop}prestashop>openpayprestashop_57d5b6ac7b2a08b1d26f60e02fa6da51'] = 'Transacción ID:'; $_MODULE['<{openpayprestashop}prestashop>openpayprestashop_c1f6368d15f7c13c4e5e8f70c68c747f'] = 'Método de pago:'; @@ -26,220 +20,11 @@ $_MODULE['<{openpayprestashop}prestashop>openpayprestashop_955ad3298db330b5ee880c2c9e6f23a0'] = 'Producción'; $_MODULE['<{openpayprestashop}prestashop>openpayprestashop_0cbc6611f5540bd0809a388dc95a615b'] = 'Sandbox'; $_MODULE['<{openpayprestashop}prestashop>openpayprestashop_739be7e48b6ea442e35790a0a5f8e179'] = 'Openpay - Pago fallido'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_8e5f653542197f29181fc29851462107'] = 'PrestaShop Cart ID'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_ba54b8645ec3d87e95b4da1b5baad66f'] = 'La extensión PHP CURL tiene que estar activada en su servidor'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_925a260901da79838907d47ad5894271'] = 'SSL tiene que ser habilitado en su tienda online ( antes de entrar en el modo activo)'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_7ace3cdcb3af03c1e95c89aac32facb8'] = 'Su servidor tiene que soportar mínimo PHP 5.2'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_5b1f9155642d713ae1329235d4cf35b9'] = 'Configurar las credenciales de Openpay en este módulo (Merchant ID , llave privada, llave pública)'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_83555b245beeecc66477202c574204e8'] = 'Todos los chequeos fueron exitosos. Ahora puedes configurar el módulo y comenzar a usar Openpay.'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_e7cfcf73bb9a28f668f4e0d87fb9222a'] = 'Hay al menos un problema que te impdide usar Opepay. Favor de reparar el problema y recarga la página.'; $_MODULE['<{openpayprestashop}prestashop>openpayprestashop_2617aa5b93617d8658a57b54a27b0d21'] = 'Dirección del cliente'; $_MODULE['<{openpayprestashop}prestashop>openpayprestashop_86e436045a729e57428a45aa12f0b60f'] = 'No se puede crear el cliente en Openpay'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_ba4058004755dfd070308e293b88ab7c'] = 'Servicio no disponible.'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_77dffa1da8fcdd645163bfa9beeb743f'] = 'La tarjeta fue rechazada.'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_0dbe3b8619a4e422c6bdd08cbc2ef465'] = 'La tarjeta ha expirado.'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_ff2e086c236b8ae41f35aefac94dda25'] = 'La tarjeta no tiene fondos suficientes.'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_830bdb0bc63bb5691832bf0c6ba527e7'] = 'La operación no esta permitida para este cliente o esta transacción.'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_16a9b38d63a559a5f22ebc9c1c689d10'] = 'La tarjeta no es soportada en transacciones en línea.'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_a55607550c02a8c1d369b3b7936b6a10'] = 'La tarjeta fue reportada como perdida.'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_a5be1a7bebcf22a489f043fb0f9138fb'] = 'El banco ha restringido la tarjeta.'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_c832867db8ebde039ab92681848124fb'] = 'El banco ha solicitado que la tarjeta sea retenida. Contacte al banco.'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_9cb0f42113c4b6e3f78f61c3b4d8e5eb'] = 'Se requiere solicitar al banco autorización para realizar este pago.'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_e2e8d0a2b79a779bb06656d2a6f39a00'] = 'La petición no pudo ser procesada.'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_aec17514fa308914b500b0da0916c208'] = 'El Webhook ya existe'; -$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_91d288545e0068f7ea289fac75b16f8a'] = 'El webhook no puede ser creado'; -$_MODULE['<{openpayprestashop}prestashop>configuration_b5ecf0c737203d26eba833c963ad6d52'] = 'Comienza a recibir pagos con tarjeta, pagos en efectivo en tiendas y pagos vía SPEI hoy mismo con Openpay.'; -$_MODULE['<{openpayprestashop}prestashop>configuration_2fdfd506efea08144c0794c32ca8250a'] = 'Crear una cuenta'; -$_MODULE['<{openpayprestashop}prestashop>configuration_d05bc3eb9adfbe0edaaae58547477d1f'] = 'Panel de administración'; -$_MODULE['<{openpayprestashop}prestashop>configuration_b03da28cf673fd29f46c6bf7dd76c72d'] = 'Contamos con un panel de administración donde podrás visualizar las diferentes transacciones que procese tu negocio.'; -$_MODULE['<{openpayprestashop}prestashop>configuration_e654f7a86a4458b9cd662267e0f29b52'] = 'Beneficios'; -$_MODULE['<{openpayprestashop}prestashop>configuration_3e9d9dcd9ec68d86d74166e716bfc605'] = 'Openpay ofrece una estructura sencilla de costos todo incluido para todo tipo de soluciones e-commerce o m-commerce.'; -$_MODULE['<{openpayprestashop}prestashop>configuration_7f06f8285fc2016156ecde484a937b5d'] = 'Sin renta mensual'; -$_MODULE['<{openpayprestashop}prestashop>configuration_711d2cd6f16d42eac2a6db64ef1310f2'] = 'Sin costos de integración'; -$_MODULE['<{openpayprestashop}prestashop>configuration_9aaf21aa9fb4ed5ac6164fb5071ad6f3'] = 'Sin comisiones de configuración'; -$_MODULE['<{openpayprestashop}prestashop>configuration_7456c4ff02d20e8bfeeaf433c43859cc'] = 'Sin plazos forzosos'; -$_MODULE['<{openpayprestashop}prestashop>configuration_53ec60f35cc6540782a1467667da98ef'] = 'Sin cargos ocultos ni letras chiquitas'; -$_MODULE['<{openpayprestashop}prestashop>configuration_151cc725606e5b25a7819ee4ae0d34f2'] = 'Acepta pagos con tarjetas de crédito'; -$_MODULE['<{openpayprestashop}prestashop>configuration_3af067d2854baf5fc115d4aaf214f1ee'] = 'Acepta pagos con tarjetas de débito'; -$_MODULE['<{openpayprestashop}prestashop>configuration_5d13fd12fe5ce8f9966cc14aab851f5e'] = 'Consulta las tarjetas soportadas'; -$_MODULE['<{openpayprestashop}prestashop>configuration_614312ed5cbb0e8437c36cd40788570c'] = 'Comisión por cargo exitoso'; +$_MODULE['<{openpayprestashop}prestashop>openpayprestashop_ba46726aaaf38e4eb450b86fa933649f'] = 'El monto de la transacción es menor al mínimo permitido para esta promoción.'; $_MODULE['<{openpayprestashop}prestashop>configuration_612a531dd63e9b678aa9de2301f7ff64'] = '2.9% + $2.5 MXN'; -$_MODULE['<{openpayprestashop}prestashop>configuration_463ea67c3392dff58057327807f4257a'] = 'Comisión por cargo exitoso: American Express'; -$_MODULE['<{openpayprestashop}prestashop>configuration_8e4e595e987a55f267effc93b95138e1'] = '4.5% + $2.5 MXN'; -$_MODULE['<{openpayprestashop}prestashop>configuration_ec80877d7c1b71180a110dae0b94d97c'] = 'Acepta pagos en efectivo en tiendas'; -$_MODULE['<{openpayprestashop}prestashop>configuration_a03dae70e4f6f09c930061646ab880cd'] = 'Consulta las tiendas afiliadas'; -$_MODULE['<{openpayprestashop}prestashop>configuration_4499977533632fff244316bf6ba25efc'] = 'Comisión por cargo exitoso'; -$_MODULE['<{openpayprestashop}prestashop>configuration_802485b3d3bf72d797c81100c4641e9b'] = 'Acepta pagos con transferencia electrónica (SPEI)'; -$_MODULE['<{openpayprestashop}prestashop>configuration_c8927361a6ba530282792a2dc891447c'] = 'Consulta los bancos soportados'; -$_MODULE['<{openpayprestashop}prestashop>configuration_1227a7f39053751341d4a941a081ebcb'] = '$8 MXN'; -$_MODULE['<{openpayprestashop}prestashop>configuration_426e8dabc75f825b1cb4f7005a478913'] = 'Chequeos técnicos'; -$_MODULE['<{openpayprestashop}prestashop>configuration_eb631b70ae7c721773f91b506c815082'] = 'Configuraciones'; $_MODULE['<{openpayprestashop}prestashop>configuration_2652eec977dcb2a5aea85f5bec235b05'] = 'Sandbox'; -$_MODULE['<{openpayprestashop}prestashop>configuration_955ad3298db330b5ee880c2c9e6f23a0'] = 'Producción'; -$_MODULE['<{openpayprestashop}prestashop>configuration_530e654ceca2da2b437e95dbfa3d64e6'] = 'Merchant ID sandbox'; -$_MODULE['<{openpayprestashop}prestashop>configuration_41ea4437398020e57961d9bacba57471'] = 'Merchant ID producción'; -$_MODULE['<{openpayprestashop}prestashop>configuration_cd2b339f9c716a39f95b2fa2f67180cc'] = 'Llave privada sandbox'; -$_MODULE['<{openpayprestashop}prestashop>configuration_52bf767dd13f98ff9ae89a8679073c90'] = 'Llave privada producción'; -$_MODULE['<{openpayprestashop}prestashop>configuration_5add70ffebb3fc7302c8534276a08d20'] = 'Llave pública sandbox'; -$_MODULE['<{openpayprestashop}prestashop>configuration_88792babe629258d539766f0f710eb82'] = 'Llave pública producción'; -$_MODULE['<{openpayprestashop}prestashop>configuration_1bacb9caa60813ee730288d7dd95e7fc'] = 'URL del sitio'; -$_MODULE['<{openpayprestashop}prestashop>configuration_e6b391a8d2c4d45902a23a8b6585703d'] = 'URL'; -$_MODULE['<{openpayprestashop}prestashop>configuration_026cd93085523cd54a85240d1549b35f'] = 'Es importante mantener este campo actualizado si cambias de dominio o subdominio'; -$_MODULE['<{openpayprestashop}prestashop>configuration_0da8d9a75492046bea7f314521e07cae'] = 'Formas de pago aceptadas'; -$_MODULE['<{openpayprestashop}prestashop>configuration_40fed24d2e43a64767663257cfd5f4b1'] = 'Tarjeta de crédito/débito'; -$_MODULE['<{openpayprestashop}prestashop>configuration_f9d299b21a010a3778a2f0f5367ed4a7'] = 'Pago en tiendas'; -$_MODULE['<{openpayprestashop}prestashop>configuration_57e0b461454d4ddbde47036797a8413f'] = 'Transferencia bancaria'; -$_MODULE['<{openpayprestashop}prestashop>configuration_1a85e8287e1d5a5bae142fb7287c99e1'] = 'Bitcoins'; -$_MODULE['<{openpayprestashop}prestashop>configuration_a24010ae37280cc18caa55069b6800ed'] = 'Meses sin intereses'; -$_MODULE['<{openpayprestashop}prestashop>configuration_42160631a3479f3ac1101809d80fb600'] = 'Si vas a utilizar meses sin intereses, favor de seleccionar una o más de las siguientes opciones.'; -$_MODULE['<{openpayprestashop}prestashop>configuration_00c275d5b559712c65233b924a43ad57'] = 'Monto mínimo para aceptar meses sin intereses (el monto mínimo deberá ser de al menos $1,800 MXN)'; -$_MODULE['<{openpayprestashop}prestashop>configuration_9f6e99bdd4184b83dc478d0ab1b4cbf7'] = 'Monto mínimo'; -$_MODULE['<{openpayprestashop}prestashop>configuration_7fbbb7f5cf79c09e1baf7f8ba102ea5e'] = 'Tiempo límite para pagos'; -$_MODULE['<{openpayprestashop}prestashop>configuration_cabdc0ab45c5f6043c7f5754d050f59c'] = 'Pago en tiendas de conveniencia (hrs.)'; -$_MODULE['<{openpayprestashop}prestashop>configuration_6a7e73161603d87b26a8eac49dab0a9c'] = 'Horas'; -$_MODULE['<{openpayprestashop}prestashop>configuration_bb081ce7d1e3a3195be6b7415f6d79f6'] = 'Transferencias interbancarias (hrs.)'; -$_MODULE['<{openpayprestashop}prestashop>configuration_518a847ececef440fa45f90f22e4db99'] = 'Diseño de recibos de pago'; -$_MODULE['<{openpayprestashop}prestashop>configuration_eb3965e5e91672bb5e2d1647fb034e23'] = 'Ver recibo de pago'; -$_MODULE['<{openpayprestashop}prestashop>configuration_368d9ac76af05f714092bc808a426bfc'] = 'Color de cintillos y fondos'; -$_MODULE['<{openpayprestashop}prestashop>configuration_c2b5b2ff5b15a5e395b663a796c523f1'] = 'Color en hexadecimal'; -$_MODULE['<{openpayprestashop}prestashop>configuration_ad32ba59a021a0d085e49b3659b49a61'] = 'Color de letra en fondos'; -$_MODULE['<{openpayprestashop}prestashop>configuration_cf565402d32b79d33f626252949a6941'] = 'Guardar configuración'; -$_MODULE['<{openpayprestashop}prestashop>configuration_3dcb31cce5b731f83551121019039fb5'] = 'Números de tarjetas de prueba'; -$_MODULE['<{openpayprestashop}prestashop>configuration_b2ee912b91d69b435159c7c3f6df7f5f'] = 'Número'; -$_MODULE['<{openpayprestashop}prestashop>configuration_5735196b42849ae4fe6adac3ae14c3d1'] = 'Tipo de tarjeta'; $_MODULE['<{openpayprestashop}prestashop>configuration_37543087b1faeaa35c926284e3aec008'] = 'La tarjeta fue rechazada'; $_MODULE['<{openpayprestashop}prestashop>configuration_5c0ede6ae8246a5c3b43b70b5c79bbda'] = 'La tarjeta ha expirado'; $_MODULE['<{openpayprestashop}prestashop>configuration_8ad453b4d52d4cbedf10cfc8287986ea'] = 'La tarjeta no tiene fondos suficientes'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_execution_644818852b4dd8cf9da73543e30f045a'] = 'Volver al pedido'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_execution_6ff063fbc860a79759a7369ac32cee22'] = 'Checkout'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_execution_261a1140d97b4fe17aabc2433d7c0234'] = 'Pago con Bitcoins'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_execution_fe052c248fb8c2b8cf08c44f17341c3c'] = 'Resumen del pedido'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_execution_879f6b8877752685a966564d072f498f'] = 'Tu carrito esta vacío.'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_execution_1f8bc47749a986674f060548573e2222'] = '¿Qué es Bitcoin?'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_execution_f0d4ae4cdae1702a3767a967de33ad81'] = 'Bitcoin es una innovadora red de pagos y una nueva clase de dinero que usa tecnología peer-to-peer o entre pares para operar sin una autoridad central o bancos. Visita https://bitcoin.org para conocer más.'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_execution_7911589f09fa52d2e02a000bd5e20b5d'] = 'Pasos para tu pago con Bitcoin'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_execution_9d648b3e426d4f4e11d03ae66d5f7bfb'] = 'Haz clic en el botón \"Generar dirección de pago\" al final de la página.'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_execution_72183a47902d6e1701acc683cca4dec7'] = 'Realiza el pago escaneando el código QR o copiando la dirección y el monto a pagar.'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_execution_7ea07df7bd19ff1522bca62752da07ca'] = 'Inmediatamente después de verificar tu pago te enviaremos un correo electrónico de confirmación y tu pedido será procesado.'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_execution_569fd05bdafa1712c4f6be5b153b8418'] = 'Otros métodos de pago'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_execution_9ba1d7701f52d4bfb03aa66efcd54cb0'] = 'Generar dirección de pago'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_waiting_execution_644818852b4dd8cf9da73543e30f045a'] = 'Volver al pedido'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_waiting_execution_6ff063fbc860a79759a7369ac32cee22'] = 'Checkout'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_waiting_execution_261a1140d97b4fe17aabc2433d7c0234'] = 'Pago con Bitcoin'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_waiting_execution_fe052c248fb8c2b8cf08c44f17341c3c'] = 'Resumen del pedido'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_waiting_execution_879f6b8877752685a966564d072f498f'] = 'Tu carrito de compras esta vacío.'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_waiting_execution_569fd05bdafa1712c4f6be5b153b8418'] = 'Otras formas de pago'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_644818852b4dd8cf9da73543e30f045a'] = 'Volver al pedido'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_6ff063fbc860a79759a7369ac32cee22'] = 'Checkout'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_40fed24d2e43a64767663257cfd5f4b1'] = 'Pago con tarjeta de cŕedito/débito'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_7476a34766fad874c594f58c1fa38990'] = 'Pago con tarjeta de cŕedito/débito'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_879f6b8877752685a966564d072f498f'] = 'Tu carrito esta vacío.'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_4d3df28e3e68ed692ae51475bbe0860d'] = 'Tarjetas de crédito'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_22dfc2f5b165aa665fd5668c234c658d'] = 'Tarjetas de débito'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_605b9107cc740b18034c761edb6d6fe7'] = 'Estamos registrando tu pago, por favor espera.'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_63171e216532becbb0be4a43aa4252fa'] = 'Nombre del títular'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_38bf9127129f60f3f1d66b84554d9026'] = 'Como aparece en la tarjeta'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_7c773fc36d32c0e4a95e9c1a06189bf6'] = 'Número de tarjeta'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_8c1279db4db86553e4b9682f78cf500e'] = 'Fecha de expiración'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_86f5978d9b80124f509bdb71786e929e'] = 'Enero'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_659e59f062c75f81259d22786d6c44aa'] = 'Febrero'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_fa3e5edac607a88d8fd7ecb9d6d67424'] = 'Marzo'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_3fcf026bbfffb63fb24b8de9d0446949'] = 'Abril'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_195fbb57ffe7449796d23466085ce6d8'] = 'Mayo'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_688937ccaf2a2b0c45a1c9bbba09698d'] = 'Junio'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_1b539f6f34e8503c97f6d3421346b63c'] = 'Julio'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_41ba70891fb6f39327d8ccb9b1dafb84'] = 'Agosto'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_cc5d90569e1c8313c2b1c2aab1401174'] = 'Septiembre'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_eca60ae8611369fe28a02e2ab8c5d12e'] = 'Octubre'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_7e823b37564da492ca1629b4732289a8'] = 'Noviembre'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_82331503174acbae012b2004f6431fa5'] = 'Diciembre'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_120cbd645509ead2f2dd3b45c8c02e2b'] = 'Código de seguridad'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_22967d995991ef0854cd8d67a8d2a66c'] = 'MasterCard y VISA presentan este código código de tres dígitos en el dorso de la tarjeta.'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_6006530407998958555747fa3830c85d'] = 'American Express presenta este código código de tres dígitos en la parte frontal de la tarjeta.'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_a24010ae37280cc18caa55069b6800ed'] = 'Meses sin intereses'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_f9d299b21a010a3778a2f0f5367ed4a7'] = 'Pago de contado'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_76b8de84283c117f8fb6324359613f3f'] = 'Estarás pagando mensualmente'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_569fd05bdafa1712c4f6be5b153b8418'] = 'Otras formas de pago'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_8bd4837a76cf443ab523a51895e23c36'] = 'Realizar pago'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_ba4058004755dfd070308e293b88ab7c'] = 'Servicio no disponible.'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_5407fb14ac27008efb5c73ac0682a62a'] = 'Los campos no tienen el formato correcto, o la petición no tiene campos que son requeridos.'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_0cab30401594110819762ad39e1db7ac'] = 'La fecha de expiración de la tarjeta es anterior a la fecha actual.'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_59d40eec0b3020903d63a898f94e5138'] = 'El código de seguridad de la tarjeta (CVV2) no fue proporcionado.'; -$_MODULE['<{openpayprestashop}prestashop>card_execution_e2e8d0a2b79a779bb06656d2a6f39a00'] = 'La petición no pudo ser procesada.'; -$_MODULE['<{openpayprestashop}prestashop>spei_execution_644818852b4dd8cf9da73543e30f045a'] = 'Volver al pedido'; -$_MODULE['<{openpayprestashop}prestashop>spei_execution_6ff063fbc860a79759a7369ac32cee22'] = 'Checkout'; -$_MODULE['<{openpayprestashop}prestashop>spei_execution_ec2db44e80b6b82f75b5bd7feabd99ad'] = 'Pago con transferencia electrónica (SPEI)'; -$_MODULE['<{openpayprestashop}prestashop>spei_execution_879f6b8877752685a966564d072f498f'] = 'Tu carrito esta vacío.'; -$_MODULE['<{openpayprestashop}prestashop>spei_execution_4d6926656b6692e3be0c06365b01bfa6'] = '¿Qué es SPEI?'; -$_MODULE['<{openpayprestashop}prestashop>spei_execution_733f8de0563cf82a0fea19bef54eb832'] = 'El SPEI es un sistema de pagos para permitir a los clientes de los bancos enviar y recibir transferencias electrónicas de dinero en cuestión de segundos.'; -$_MODULE['<{openpayprestashop}prestashop>spei_execution_3dff66a029e4d64f692abaa4ef8fdf13'] = 'Consulta los bancos soportados'; -$_MODULE['<{openpayprestashop}prestashop>spei_execution_91add0841bb079d334f99d1b466f7287'] = 'Pasos para tu pago por transferencia interbancaria'; -$_MODULE['<{openpayprestashop}prestashop>spei_execution_5c0a596277c9adc133c1cb929f7fa863'] = 'Haz clic en el botón \"Generar CLABE\", donde tu compra quedará en espera de que realices tu pago.'; -$_MODULE['<{openpayprestashop}prestashop>spei_execution_5db6204b70bff5a602a28e2511bef790'] = 'Sigue la guía para realizar el pago SPEI a través del portal de tu banco.'; -$_MODULE['<{openpayprestashop}prestashop>spei_execution_05ff84c01f96a1426716e89c5e77a034'] = 'Inmediatamente después de recibir tu pago te enviaremos un correo electrónico con la confirmación de pago.'; -$_MODULE['<{openpayprestashop}prestashop>spei_execution_569fd05bdafa1712c4f6be5b153b8418'] = 'Otras formas de pago'; -$_MODULE['<{openpayprestashop}prestashop>spei_execution_820808794fc9aefb807c01979759e127'] = 'Generar CLABE'; -$_MODULE['<{openpayprestashop}prestashop>store_execution_644818852b4dd8cf9da73543e30f045a'] = 'Volver al pedido'; -$_MODULE['<{openpayprestashop}prestashop>store_execution_6ff063fbc860a79759a7369ac32cee22'] = 'Checkout'; -$_MODULE['<{openpayprestashop}prestashop>store_execution_f9d299b21a010a3778a2f0f5367ed4a7'] = 'Pago en efectivo en tiendas de conveniencia'; -$_MODULE['<{openpayprestashop}prestashop>store_execution_879f6b8877752685a966564d072f498f'] = 'Tu carrito esta vacío.'; -$_MODULE['<{openpayprestashop}prestashop>store_execution_f5edbc1eecbd42078b5fff3b7ea4fa1c'] = 'Pasos para tu pago por tienda'; -$_MODULE['<{openpayprestashop}prestashop>store_execution_a03dae70e4f6f09c930061646ab880cd'] = 'Consulta las tiendas afiliadas'; -$_MODULE['<{openpayprestashop}prestashop>store_execution_3b6c59d1738b922dbebeb0c3f8d3e3b1'] = 'Haz clic en el botón \"Generar ficha de pago\", donde tu compra quedará en espera de que realices tu pago.'; -$_MODULE['<{openpayprestashop}prestashop>store_execution_19e5b16fb69a62939bdfb712e1bafb27'] = 'Imprime tu recibo, llévalo a tu tienda de conveniencia más cercana y realiza el pago.'; -$_MODULE['<{openpayprestashop}prestashop>store_execution_05ff84c01f96a1426716e89c5e77a034'] = 'Inmediatamente después de recibir tu pago te enviaremos un correo electrónico con la confirmación de pago.'; -$_MODULE['<{openpayprestashop}prestashop>store_execution_569fd05bdafa1712c4f6be5b153b8418'] = 'Otras formas de pago'; -$_MODULE['<{openpayprestashop}prestashop>store_execution_e518c9c1ff02cc78a6e4fd21038a3585'] = 'Generar recibo de pago'; -$_MODULE['<{openpayprestashop}prestashop>bitcoin_order_confirmation_71459d15dd3e76b787ac44440dca0d7d'] = 'Tu pago esta en proceso de validación, recibirás un correo de confirmación cuando la red de Bitcoin confirme y valide el pago realizado.'; -$_MODULE['<{openpayprestashop}prestashop>card_order_confirmation_4e3e0524d1b71ee75e23b1988f1bbb33'] = 'Felicitaciones , su pago ha sido aprobado, el número de referencia de su pedido es:'; -$_MODULE['<{openpayprestashop}prestashop>card_order_confirmation_fcc0006f4018b8db6cf42091b6ef2c52'] = 'Lamentablemente hemos detectado un problema al procesar tu pedido y necesita ser revisado.'; -$_MODULE['<{openpayprestashop}prestashop>card_order_confirmation_14e7bb4453ff8cac0fc4419a76fed7b2'] = 'No trate de registrar su pedido de nuevo, ya se han recibido los fondos. Vamos a revisar su orden y le proporcionaremos un estatus dentro de poco.'; -$_MODULE['<{openpayprestashop}prestashop>card_order_confirmation_0f97313091eda2c5476bc57d3aa5eddc'] = 'Referecnia de su pedido:'; -$_MODULE['<{openpayprestashop}prestashop>card_order_confirmation_2660c6f77f72f4abbe95192e8bef48d3'] = 'Lo sentimos, pero por desgracia se produjo un error durante la operación.'; -$_MODULE['<{openpayprestashop}prestashop>card_order_confirmation_0d4e007412611fa67ae987261c6ec921'] = 'Por favor, compruebe sus datos de tarjeta de crédito e inténtelo de nuevo o no dude en ponerse en contacto con nosotros para resolver este problema.'; -$_MODULE['<{openpayprestashop}prestashop>payment_40fed24d2e43a64767663257cfd5f4b1'] = 'Pago con tarjeta de crédito/débito'; -$_MODULE['<{openpayprestashop}prestashop>payment_f9d299b21a010a3778a2f0f5367ed4a7'] = 'Pago en efectivo en tiendas de conveniencia'; -$_MODULE['<{openpayprestashop}prestashop>payment_163debc82f49ccfa53705a60f5b8eae9'] = 'Forma de pago no permitida para montos superiores a $10,000'; -$_MODULE['<{openpayprestashop}prestashop>payment_ec2db44e80b6b82f75b5bd7feabd99ad'] = 'Pago con transferencia electrónica (SPEI)'; -$_MODULE['<{openpayprestashop}prestashop>payment_261a1140d97b4fe17aabc2433d7c0234'] = 'Pago con Bitcoins'; -$_MODULE['<{openpayprestashop}prestashop>spei_order_confirmation_20fd2a4330b68a7173fef1c1f797a0a8'] = 'Esperamos tu pago'; -$_MODULE['<{openpayprestashop}prestashop>spei_order_confirmation_96b0141273eabab320119c467cdcaf17'] = 'Total a pagar'; -$_MODULE['<{openpayprestashop}prestashop>spei_order_confirmation_2e79cbc13bbc903d989eab943a2e394f'] = 'Fecha límite de pago'; -$_MODULE['<{openpayprestashop}prestashop>spei_order_confirmation_c457364dc289b8ac09b1b64369ee8ef1'] = 'Datos para transferencia electrónica'; -$_MODULE['<{openpayprestashop}prestashop>spei_order_confirmation_eb45bd2725cb8ac50d0795432a918f86'] = 'Banco'; -$_MODULE['<{openpayprestashop}prestashop>spei_order_confirmation_69aae3cdce9fca74a3bd273e53f75d11'] = 'STP'; -$_MODULE['<{openpayprestashop}prestashop>spei_order_confirmation_3563c5b5cbe65c2a39a4352d2a8dec7d'] = 'CLABE'; -$_MODULE['<{openpayprestashop}prestashop>spei_order_confirmation_63d5049791d9d79d86e9a108b0a999ca'] = 'Referencia'; -$_MODULE['<{openpayprestashop}prestashop>spei_order_confirmation_bc4bee1370166bd48330dd13b2de699c'] = 'Beneficiario'; -$_MODULE['<{openpayprestashop}prestashop>spei_order_confirmation_88e7e1896d16fe295bcda66b61111ae9'] = '¿Tienes alguna dudas o problema? Llámanos al teléfono'; -$_MODULE['<{openpayprestashop}prestashop>spei_order_confirmation_e8504f91b5579a42951770a1f78605ef'] = 'O escríbenos a'; -$_MODULE['<{openpayprestashop}prestashop>spei_order_confirmation_83e0ef0df42d9bea5e884e61d117fb81'] = 'Imprimir recibo'; -$_MODULE['<{openpayprestashop}prestashop>spei_order_confirmation_300225ee958b6350abc51805dab83c24'] = 'Seguir comprando'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_d96d37aa21dee795e3f0f1d88d06fa46'] = 'Servicio a pagar'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_2e79cbc13bbc903d989eab943a2e394f'] = 'Fecha límite de pago'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_a462c77168d189cd6750344b2c2e474f'] = 'n caso de que el escáner no sea capaz de leer el código de barras, escribir la referencia tal como se muestra.'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_96b0141273eabab320119c467cdcaf17'] = 'Total a pagar'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_1e49495e5365df43b715b4e481b88a3d'] = '+8 pesos por comisión'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_5c72cda75cedfffdd5a245afcee0d42c'] = 'Detalles de la compra'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_a240fa27925a635b08dc28c9e4f9216d'] = 'Orden'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_44749712dbec183e983dcd78a7736c41'] = 'Fecha y hora'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_ce8ae9da5b7cd6c3df2929543a9af92d'] = 'Correo electrónico'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_a3aa471e011bdeb7a51c59c41e9bcba2'] = 'Como realizar el pago'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_082963b36faa78b37350ad8091a492c6'] = 'Acude a cualquier tienda afiliada'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_d15f967b6a1ae2bc8b98f1c6825beddf'] = 'Entrega al cajero el código de barras y menciona que realizarás un pago de servicio Paynet'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_5efd9ef5d91f0d548cbb1d59cf2512f8'] = 'Realizar el pago en efectivo por'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_8a1fe91159f23a82ffa6032d83521463'] = '(más $8 pesos por comisión)'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_383ddb1b8ee81e17428bcada9ac73f5a'] = 'Conserva el ticket para cualquier aclaración'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_a1e677ae9e61a7395cbfc43ab3082029'] = 'Si tienes dudas comunícate a'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_83a4c328f4e43c0adaf7222c6bd0c4cd'] = 'al teléfono'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_0cba8d49a8a98ef657bc69a557b2706d'] = 'o al correo'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_46fb94ae03f0f40808e7968dfaa5aa71'] = 'Instrucciones para el cajero'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_779f9d651b4be71860ba8a1972984067'] = 'Ingresar al menú de Pago de Servicios'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_4fb0e87c24973b28e0cb3f55e232eba4'] = 'Seleccionar Paynet'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_107f5a59ad43c8d29fb52b9775e1f2e1'] = 'Escanear el código de barras o ingresar el núm. de referencia'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_679d625ee4056184eefd5a67d9accd32'] = 'Ingresa la cantidad total a pagar'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_c6dc35b9eacae2b78a60f5a6edda5ab8'] = 'Cobrar al cliente el monto total más la comisión de $8 pesos'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_8818cd121b22a68274eb63a549e90196'] = 'Confirmar la transacción y entregar el ticket al cliente'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_822420d2b8d4fd7685987bf9731c01df'] = '¿Quieres pagar en otras tiendas? Visita:'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_334d94d86182ee2c86dcb817458e28e4'] = 'Imprimir recibo'; -$_MODULE['<{openpayprestashop}prestashop>store_order_confirmation_300225ee958b6350abc51805dab83c24'] = 'Seguir comprando'; diff --git a/PS_1.7/openpayprestashop/openpayprestashop.php b/PS_1.7/openpayprestashop/openpayprestashop.php index 583ea4c..3873425 100644 --- a/PS_1.7/openpayprestashop/openpayprestashop.php +++ b/PS_1.7/openpayprestashop/openpayprestashop.php @@ -341,11 +341,57 @@ public function hookHeader($params) { $country = Configuration::get('OPENPAY_COUNTRY'); if (Tools::getValue('module') === 'onepagecheckoutps' || - Tools::getValue('controller') === 'order-opc' || - Tools::getValue('controller') === 'orderopc' || - Tools::getValue('controller') === 'order') { - + Tools::getValue('controller') === 'order-opc' || + Tools::getValue('controller') === 'orderopc' || + Tools::getValue('controller') === 'order' + ) { $this->context->controller->addCSS($this->_path.'views/css/openpay-prestashop.css'); + + $this->context->controller->registerJavascript( + 'openpay-js', + '/modules/'.$this->name.'/views/js/openpay-prestashop.js', + array('position' => 'bottom') + ); + + $total = (Validate::isLoadedObject($this->context->cart)) ? $this->context->cart->getOrderTotal() : 0; + + $country = Configuration::get('OPENPAY_COUNTRY'); + $pk = Configuration::get('OPENPAY_MODE') ? Configuration::get('OPENPAY_PUBLIC_KEY_LIVE') : Configuration::get('OPENPAY_PUBLIC_KEY_TEST'); + $id = Configuration::get('OPENPAY_MODE') ? Configuration::get('OPENPAY_MERCHANT_ID_LIVE') : Configuration::get('OPENPAY_MERCHANT_ID_TEST'); + + $selected_months_interest_free = array(); + if (Configuration::get('OPENPAY_MONTHS_INTEREST_FREE') != null) { + $selected_months_interest_free = explode(',', Configuration::get('OPENPAY_MONTHS_INTEREST_FREE')); + $selected_months_interest_free = array_diff($selected_months_interest_free, array(1)); + } + + $show_months_interest_free = false; + if (count($selected_months_interest_free) > 0 && $country == 'MX') { + $show_months_interest_free = true; + } + + Media::addJsDef(array( $this->name => array( + 'use_card_points' => Configuration::get('USE_CARD_POINTS'), + 'total' => $total, + 'country' => $country, + 'openpay_save_cc_option' => Configuration::get('OPENPAY_SAVE_CC'), + 'pk' => $pk, + 'id' => $id, + 'mode' => Configuration::get('OPENPAY_MODE'), + 'show_months_interest_free' => $show_months_interest_free, + 'months_interest_free' => $selected_months_interest_free, + 'cuotas_pe' => Configuration::get('OPENPAY_CUOTAS_PE'), + 'url_ajax' => Tools::getHttpHost(true).__PS_BASE_URI__.'module/openpayprestashop/typecard', + 'action' => $this->context->link->getModuleLink($this->name, 'validation', array(), Tools::usingSecureMode()), + 'Msg' => array( + 'service_available' => $this->l('Service not available.'), + 'incorrect_format' => $this->l('The fields do not have the correct format, or the request does not have fields are required.'), + 'incorrect_expiration_date' => $this->l('The expiration date has already passed.'), + 'cvv2_required' => $this->l('The CVV2 security code is required.'), + 'unprocessed_request' => $this->l('The request could not be processed.') + ) + ))); + if($country == 'MX'){ $this->context->controller->registerJavascript( 'remote-openpay-js', 'https://openpay.s3.amazonaws.com/openpay.v1.min.js', ['position' => 'bottom', 'server' => 'remote'] @@ -402,8 +448,7 @@ public function hookPaymentOptions($params) { $externalOption->setCallToActionText($this->l('Tarjeta de crédito-débito')) ->setForm($this->generateForm($cart)) ->setModuleName($this->name) - ->setLogo('https://img.openpay.mx/plugins/openpay_logo.svg') - ->setAdditionalInformation($this->context->smarty->fetch('module:openpayprestashop/views/templates/front/payment_infos.tpl')); + ->setLogo('https://img.openpay.mx/plugins/openpay_logo.svg'); return array($externalOption); } @@ -450,9 +495,7 @@ public function hookPaymentReturn($params) protected function generateForm($cart) { $country = Configuration::get('OPENPAY_COUNTRY'); $merchant_classification = Configuration::get('OPENPAY_CLASSIFICATION'); - $pk = Configuration::get('OPENPAY_MODE') ? Configuration::get('OPENPAY_PUBLIC_KEY_LIVE') : Configuration::get('OPENPAY_PUBLIC_KEY_TEST'); - $id = Configuration::get('OPENPAY_MODE') ? Configuration::get('OPENPAY_MERCHANT_ID_LIVE') : Configuration::get('OPENPAY_MERCHANT_ID_TEST'); - + $selected_months_interest_free = array(); if (Configuration::get('OPENPAY_MONTHS_INTEREST_FREE') != null) { $selected_months_interest_free = explode(',', Configuration::get('OPENPAY_MONTHS_INTEREST_FREE')); @@ -480,11 +523,8 @@ protected function generateForm($cart) { $this->context->smarty->assign(array( 'js_dir' => _PS_JS_DIR_, - 'pk' => $pk, - 'id' => $id, 'country' => $country, 'merchant_classification' => $merchant_classification, - 'mode' => Configuration::get('OPENPAY_MODE'), 'nbProducts' => $cart->nbProducts(), 'total' => $cart->getOrderTotal(), 'module_dir' => $this->_path, @@ -494,10 +534,8 @@ protected function generateForm($cart) { 'show_installments' => $show_installments, 'use_card_points' => Configuration::get('USE_CARD_POINTS'), 'can_save_cc' => (Configuration::get('OPENPAY_SAVE_CC') == '1' || Configuration::get('OPENPAY_SAVE_CC') == '2') && (bool)$this->context->customer->isLogged() ? true : false, - 'openpay_save_cc_option' => Configuration::get('OPENPAY_SAVE_CC'), 'cuotas_pe' => Configuration::get('OPENPAY_CUOTAS_PE'), 'cc_options' => $this->getCreditCardList(), - 'url_ajax' => Tools::getHttpHost(true).__PS_BASE_URI__.'module/openpayprestashop/typecard', 'action' => $this->context->link->getModuleLink($this->name, 'validation', array(), Tools::usingSecureMode()), )); @@ -567,17 +605,20 @@ public function processPayment($token = null, $device_session_id = null, $instal } Logger::addLog('(444d) $installments["val"] => '.$installments["val"] , 1); - Logger::addLog('(444d) $installments["withInterest"] => '.$installments["withInterest"] , 1); - + if ($installments["val"] > 1) { $charge_request['payment_plan'] = array('payments' => (int)$installments["val"]); - switch ($installments["withInterest"]){ - case "false": - $charge_request['payment_plan']['payments_type'] = 'WITHOUT_INTEREST'; - break; - case "true": - $charge_request['payment_plan']['payments_type'] = 'WITH_INTEREST'; - break; + + if (isset($installments["withInterest"])) { + Logger::addLog('(444d) $installments["withInterest"] => '.$installments["withInterest"] , 1); + switch ($installments["withInterest"]){ + case "false": + $charge_request['payment_plan']['payments_type'] = 'WITHOUT_INTEREST'; + break; + case "true": + $charge_request['payment_plan']['payments_type'] = 'WITH_INTEREST'; + break; + } } } @@ -731,10 +772,13 @@ public function processPayment($token = null, $device_session_id = null, $instal Logger::addLog($this->l('Openpay - Payment transaction failed').' '.$e->getTraceAsString(), 4, $e->getCode(), 'Cart', (int) $this->context->cart->id, true); } - if(isset($e->getErrorCode)) $this->error($e); + if ($e->getErrorCode()) { + $this->error($e); + } //$this->context->cookie->__set('openpay_error', $e->getMessage()); - - Tools::redirect('index.php?controller=order&step=1'); + + $this->context->controller->errors[] = $this->context->cookie->__get('openpay_error'); + $this->context->controller->redirectWithNotifications('index.php?controller=order&step=1'); } } @@ -1435,12 +1479,16 @@ public function error($e, $backend = false) { case '3012': $msg = $this->l('Se requiere solicitar al banco autorización para realizar este pago.'); break; + case '3204': + $msg = $this->l('The transaction amount is less than the minimum allowed for this promotion.'); + break; default: /* Demás errores 400 */ $msg = $this->l('La petición no pudo ser procesada'); break; } $error = 'ERROR '.$e->getErrorCode().'. '.$msg; + $this->context->cookie->__set('openpay_error', $error); $this->context->cookie->__set('openpay_error_code', $e->getErrorCode()); diff --git a/PS_1.7/openpayprestashop/views/js/openpay-prestashop.js b/PS_1.7/openpayprestashop/views/js/openpay-prestashop.js index 554c776..8b824b0 100644 --- a/PS_1.7/openpayprestashop/views/js/openpay-prestashop.js +++ b/PS_1.7/openpayprestashop/views/js/openpay-prestashop.js @@ -23,25 +23,351 @@ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) * International Registered Trademark & Property of PrestaShop SA */ +const initOpenPayEvents = () => { + $('#holder_name').on("cut copy paste",function(e) { + e.preventDefault(); + }); + + $("#holder_name").keypress(function(e){ + var keyCode = e.which; + /* + 65-90 - (A-Z) + 97-122 - (a-z) + 8 - (backspace) + 32 - (space) + */ + // Not allow special + if (!((keyCode >= 65 && keyCode <= 90) || (keyCode >= 97 && keyCode <= 122)) && keyCode !== 8 && keyCode !== 32) { + e.preventDefault(); + } + }); + + $('[data-toggle="popover"]').popover({ + trigger: 'hover', + 'placement': 'top' + }); + + $('#card_number').cardNumberInput(); + + var total = openpayprestashop.total; + var months = parseInt($("#interest-free").val()); + var monthly_payment = 0; + monthly_payment = total/months; + var formatted = monthly_payment.toFixed(2); + $("#monthly-payment").text(formatted); + + if (months > 1) { + $("#total-monthly-payment").removeClass('hidden'); + } else { + $("#total-monthly-payment").addClass('hidden'); + } -$(document).ready(function() { + $("#interest-free").change(function() { + monthly_payment = 0; + months = parseInt($(this).val()); - $( ".openpay-payment-form" ).on( "submit", function( event ) { - event.stopPropagation(); - console.log($(this).attr('id')) - }); + if (months > 1) { + $("#total-monthly-payment").removeClass('hidden'); + } else { + $("#total-monthly-payment").addClass('hidden'); + } - $( ".openpay-payment-form" ).on( "submit", function( event ) { - event.preventDefault(); - console.log($(this).attr('id')) + monthly_payment = total/months; + monthly_payment = monthly_payment.toFixed(2); + + $("#monthly-payment").text(monthly_payment); }); + + $(document).on("change", "#openpay_cc", function() { + if ($('#openpay_cc').val() !== "new") { + $('#save_cc').prop('checked', false); + $('#save_cc').prop('disabled', true); + + $('#openpay-holder-name').val(""); + $('#openpay-card-number').val(""); + $('#openpay-card-expiry').val(""); + $('#openpay-card-cvc').val(""); + + if(openpayprestashop.openpay_save_cc_option != '2') { + $('#payment_form_openpay_cards .row div:not(.wrapper_cvv2)').hide(); + } else { + $('#payment_form_openpay_cards').hide(); + } + } else { + $('#payment_form_openpay_cards .row div:not(.wrapper_cvv2)').show(); + $('#payment_form_openpay_cards').show(); + $('#save_cc').prop('disabled', false); + } + }); + + var openpay_public_key = openpayprestashop.pk; + var openpay_merchant_id = openpayprestashop.id; + var mode = openpayprestashop.mode; - if($('#openpay-payment-form').length) { - console.log($('#openpay-payment-form')); + OpenPay.setId(openpay_merchant_id); + OpenPay.setApiKey(openpay_public_key); + //OpenPay.setDevelopMode(true); + + if(mode == "0"){ + OpenPay.setSandboxMode(true); } - $('#openpay-payment-form').submit(function(event) { - console.log("SUBMIT"); + $("#payment-confirmation > .ps-shown-by-js > button").click(function(event) { + var myPaymentMethodSelected = $(".payment-options").find("input[data-module-name='openpayprestashop']").is(":checked"); + if (myPaymentMethodSelected){ + event.preventDefault(); + var cvc = $('#cvv2').val(); + + //antifraudes + OpenPay.deviceData.setup("openpay-payment-form", "device_session_id"); + + $(this).prop('disabled', true); /* Disable the submit button to prevent repeated clicks */ + $('.openpay-payment-errors').hide(); + $('#openpay-ajax-loader').show(); + $('#openpay-payment-form').hide(); + + if ($('#openpay_cc').val() !== 'new') { + if(openpayprestashop.openpay_save_cc_option != '2'){ + if(cvc == ""){ + $('#alert-cvv-error').text("El cvv2 es requerido"); + $('#cvv2').addClass('checkout-input-error'); + $("#payment-confirmation > .ps-shown-by-js > button").prop('disabled', false); + $('#openpay-payment-form').show(); + $('#openpay-ajax-loader').hide(); + event.preventDefault(); + return false; + } else if(cvc.length < 3){ + $('#alert-cvv-error').text("El cvv2 debe contener por lo menos 3 dígitos"); + $('#cvv2').addClass('checkout-input-error'); + $("#payment-confirmation > .ps-shown-by-js > button").prop('disabled', false); + $('#openpay-payment-form').show(); + $('#openpay-ajax-loader').hide(); + event.preventDefault(); + return false; + } else if(!cvc.match(/^[0-9]+$/)){ + $('#alert-cvv-error').text("El cvv2 solo debe contener dígitos"); + $('#cvv2').addClass('checkout-input-error'); + $("#payment-confirmation > .ps-shown-by-js > button").prop('disabled', false); + $('#openpay-payment-form').show(); + $('#openpay-ajax-loader').hide(); + event.preventDefault(); + return false; + } + } + $('#openpay-payment-form').append(''); + $('#openpay-payment-form').append('') + $('#openpay-payment-form').get(0).submit(); + return false; + } + + var holder_name = $('#holder_name').val(); + if(holder_name == ""){ + $('.openpay-payment-errors').fadeIn(1000); + $('.openpay-payment-errors').text('ERROR El nombre del titular es requerido').fadeIn(1000); + $("#payment-confirmation > .ps-shown-by-js > button").prop('disabled', false); + $('#openpay-payment-form').show(); + $('#openpay-ajax-loader').hide(); + event.preventDefault(); + return false; + } + + return openpayFormHandler(); + } }); -}); \ No newline at end of file + var card_old; + $('body').on("keyup", "#card_number", function() { + let card = jQuery(this).val() + let country = openpayprestashop.country; + let show_months_interest_free = (openpayprestashop.show_months_interest_free == '1'); + let show_installments_pe = (openpayprestashop.cuotas_pe == '1'); + let card_without_space = card.replace(/\s+/g, '') + let lng = country == 'PE' ? 6 : 8; + + if (card_without_space.length == lng) { + if(country == "MX" && !show_months_interest_free || (country == 'PE' && !show_installments_pe)) { + return; + } + var card_bin = card_without_space.substring(0, lng); + + if(card_bin != card_old) { + getTypeCard(card_bin, country); + card_old = card_bin; + } + + } + }) +} + +function getTypeCard(cardBin, country) { + $.ajax({ + type : "post", + url : openpayprestashop.url_ajax, + data : { + card_bin : cardBin + }, + error: function(response){ + console.log(response); + }, + beforeSend: function () { + jQuery("#card-container").addClass("opacity"); + jQuery(".ajax-loader").addClass("is-active"); + }, + success: function(response) { + let data = JSON.parse(response); + if(data.status == 'success'){ + if (data.card_type == 'CREDIT') { + if (country == 'MX'){ + jQuery("#interest-free").closest(".row").show(); + }else { + jQuery('#installment').closest(".row").show(); + } + } + else if(data.installments && data.installments.length > 0 && 1 == openpayprestashop.cuotas_pe) { + jQuery('#openpay_installments_pe').closest(".row").show(); + jQuery('#openpay_installments_pe').empty(); + + jQuery('#openpay_installments_pe').append(jQuery('