From dddf14b541e79f2d64d0243b3ffa2fd67bdf4359 Mon Sep 17 00:00:00 2001 From: jakubpolomsky Date: Wed, 4 Jan 2017 14:32:36 +0100 Subject: [PATCH 01/42] #4 add compatibility with 1.7 - DOESN'T WORK WITH PRESTASHOP VERSIONS 1.6 AND BELOW --- wirecardceecheckoutpage/config.xml | 2 +- .../controllers/front/paymentIFrame.php | 3 +- wirecardceecheckoutpage/css/style.css | 141 ++-------- .../views/templates/front/payment_iframe.tpl | 20 +- .../views/templates/hook/payment.tpl | 54 ---- .../views/templates/hook/payment1.5.tpl | 48 ---- .../wirecardceecheckoutpage.php | 259 +++++++++++++----- 7 files changed, 232 insertions(+), 295 deletions(-) delete mode 100644 wirecardceecheckoutpage/views/templates/hook/payment.tpl delete mode 100644 wirecardceecheckoutpage/views/templates/hook/payment1.5.tpl diff --git a/wirecardceecheckoutpage/config.xml b/wirecardceecheckoutpage/config.xml index d86ced9..9873a11 100644 --- a/wirecardceecheckoutpage/config.xml +++ b/wirecardceecheckoutpage/config.xml @@ -2,7 +2,7 @@ wirecardceecheckoutpage - + diff --git a/wirecardceecheckoutpage/controllers/front/paymentIFrame.php b/wirecardceecheckoutpage/controllers/front/paymentIFrame.php index 19d04b4..3cf3fc5 100644 --- a/wirecardceecheckoutpage/controllers/front/paymentIFrame.php +++ b/wirecardceecheckoutpage/controllers/front/paymentIFrame.php @@ -51,8 +51,7 @@ public function initContent() 'windowName' => $this->module->getWindowName() )); + $this->setTemplate('module:wirecardceecheckoutpage/views/templates/front/payment_iframe.tpl'); unset($this->context->cookie->qpayRedirectUrl); - - $this->setTemplate('payment_iframe.tpl'); } } diff --git a/wirecardceecheckoutpage/css/style.css b/wirecardceecheckoutpage/css/style.css index 63c0976..cfcf40f 100644 --- a/wirecardceecheckoutpage/css/style.css +++ b/wirecardceecheckoutpage/css/style.css @@ -1,3 +1,30 @@ +.payment-option.clearfix { + position:relative; + padding-bottom:7px; + border-bottom:1px dotted #d3d3d3; +} + +.payment-option label { + position:absolute; + display: block !important; + top:0; + left:40px; + right:0; + bottom:-8px; +} + +.payment-option label span { + float: left; +} + +.payment-option label img { + float: right; + height: 20px; +} + +#payment_form .alert span { + clear:both; +} p.payment_module a.pt_wirecard:after { display: block; @@ -11,116 +38,4 @@ p.payment_module a.pt_wirecard:after { height: 22px; width: 14px; color: #777; -} - -a.pt_checkoutpage { - background: url(../img/payment_types/checkoutpage.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_ccard { - background: url(../img/payment_types/ccard.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_ccard-moto { - background: url(../img/payment_types/ccard-moto.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_maestro { - background: url(../img/payment_types/maestro.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_eps { - background: url(../img/payment_types/eps.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_idl { - background: url(../img/payment_types/idl.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_giropay { - background: url(../img/payment_types/giropay.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_tatrapay { - background: url(../img/payment_types/tatrapay.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_sofortueberweisung { - background: url(../img/payment_types/sofortueberweisung.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_pbx { - background: url(../img/payment_types/pbx.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_psc { - background: url(../img/payment_types/psc.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_quick { - background: url(../img/payment_types/quick.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_paypal { - background: url(../img/payment_types/paypal.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_epay_bg { - background: url(../img/payment_types/epay-bg.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_sepa-dd { - background: url(../img/payment_types/sepa-dd.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_trustpay { - background: url(../img/payment_types/trustpay.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_invoice { - background: url(../img/payment_types/invoice.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_installment { - background: url(../img/payment_types/installment.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_bancontact_mistercash { - background: url(../img/payment_types/bancontact_mistercash.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_przelewy24 { - background: url(../img/payment_types/przelewy24.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_moneta { - background: url(../img/payment_types/moneta.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_poli { - background: url(../img/payment_types/poli.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_ekonto { - background: url(../img/payment_types/ekonto.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_trustly { - background: url(../img/payment_types/trustly.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_mpass { - background: url(../img/payment_types/mpass.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_skrilldirect { - background: url(../img/payment_types/skrilldirect.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_skrillwallet { - background: url(../img/payment_types/skrillwallet.png) 15px 15px no-repeat #fbfbfb; -} - -a.pt_voucher { - background: url(../img/payment_types/voucher.png) 15px 15px no-repeat #fbfbfb; -} +} \ No newline at end of file diff --git a/wirecardceecheckoutpage/views/templates/front/payment_iframe.tpl b/wirecardceecheckoutpage/views/templates/front/payment_iframe.tpl index 31d0ce0..8e1e98a 100644 --- a/wirecardceecheckoutpage/views/templates/front/payment_iframe.tpl +++ b/wirecardceecheckoutpage/views/templates/front/payment_iframe.tpl @@ -28,8 +28,20 @@ * By installing the plugin into the shop system the customer agrees to these terms of use. * Please do not use the plugin if you do not agree to these terms of use! *} +{extends file='page.tpl'} +{block name='content'} +
+
+
+
-{capture name=path} - {l s='Pay with Wirecard Checkout Page' mod='wirecardceecheckoutpage'} -{/capture} - \ No newline at end of file + {if isset($nbProducts) && $nbProducts <= 0} +

{l s='Your shopping cart is empty.' mod='wirecardceecheckoutseamless'}

+ {else} + + {/if} +
+
+
+
+{/block} \ No newline at end of file diff --git a/wirecardceecheckoutpage/views/templates/hook/payment.tpl b/wirecardceecheckoutpage/views/templates/hook/payment.tpl deleted file mode 100644 index 44fcc73..0000000 --- a/wirecardceecheckoutpage/views/templates/hook/payment.tpl +++ /dev/null @@ -1,54 +0,0 @@ -{* - * Shop System Plugins - Terms of Use - * - * The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH - * (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of - * products and services. - * - * They have been tested and approved for full functionality in the standard configuration - * (status on delivery) of the corresponding shop system. They are under General Public - * License Version 2 (GPLv2) and can be used, developed and passed on to third parties under - * the same terms. - * - * However, Wirecard CEE does not provide any guarantee or accept any liability for any errors - * occurring when used in an enhanced, customized shop system configuration. - * - * Operation in an enhanced, customized configuration is at your own risk and requires a - * comprehensive test phase by the user of the plugin. - * - * Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full - * functionality neither does Wirecard CEE assume liability for any disadvantages related to - * the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality - * for customized shop systems or installed plugins of other vendors of plugins within the same - * shop system. - * - * Customers are responsible for testing the plugin's functionality before starting productive - * operation. - * - * By installing the plugin into the shop system the customer agrees to these terms of use. - * Please do not use the plugin if you do not agree to these terms of use! - *} - -{if $paymentTypes|@count gt 0} -{foreach from=$paymentTypes item=current} - -{/foreach} -{else} - -{/if} diff --git a/wirecardceecheckoutpage/views/templates/hook/payment1.5.tpl b/wirecardceecheckoutpage/views/templates/hook/payment1.5.tpl deleted file mode 100644 index a5ff856..0000000 --- a/wirecardceecheckoutpage/views/templates/hook/payment1.5.tpl +++ /dev/null @@ -1,48 +0,0 @@ -{* - * Shop System Plugins - Terms of Use - * - * The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH - * (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of - * products and services. - * - * They have been tested and approved for full functionality in the standard configuration - * (status on delivery) of the corresponding shop system. They are under General Public - * License Version 2 (GPLv2) and can be used, developed and passed on to third parties under - * the same terms. - * - * However, Wirecard CEE does not provide any guarantee or accept any liability for any errors - * occurring when used in an enhanced, customized shop system configuration. - * - * Operation in an enhanced, customized configuration is at your own risk and requires a - * comprehensive test phase by the user of the plugin. - * - * Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full - * functionality neither does Wirecard CEE assume liability for any disadvantages related to - * the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality - * for customized shop systems or installed plugins of other vendors of plugins within the same - * shop system. - * - * Customers are responsible for testing the plugin's functionality before starting productive - * operation. - * - * By installing the plugin into the shop system the customer agrees to these terms of use. - * Please do not use the plugin if you do not agree to these terms of use! - *} - -{if $paymentTypes|@count gt 0} -{foreach from=$paymentTypes item=current} -

- - {$current.title} - {$current.title} - -

-{/foreach} -{else} -

- - {l s='Pay with Wirecard CEE Checkout Page' mod='wirecardceecheckoutpage'} - {l s='Pay with Wirecard CEE Checkout Page' mod='wirecardceecheckoutpage'} - -

-{/if} diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index c9da2b9..b5ade36 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -30,6 +30,8 @@ * Please do not use the plugin if you do not agree to these terms of use! */ +use PrestaShop\PrestaShop\Core\Payment\PaymentOption; + if (!defined('_PS_VERSION_')) { exit; } @@ -108,6 +110,7 @@ class WirecardCEECheckoutPage extends PaymentModule private $myOrder; private $myCart; private $postErrors = array(); + private $config = array(); public function log($text) { @@ -120,9 +123,10 @@ public function log($text) public function __construct() { + $this->config = $this->config(); $this->name = 'wirecardceecheckoutpage'; $this->tab = 'payments_gateways'; - $this->version = '1.5.0'; + $this->version = '2.0.0'; $this->author = 'Wirecard'; $this->controllers = array('breakoutIFrame', 'confirm', 'payment', 'paymentExecution', 'paymentIFrame'); $this->is_eu_compatible = 1; @@ -141,9 +145,9 @@ public function __construct() public function install() { if (!parent::install() - || !$this->registerHook('payment') - || !$this->registerHook('displayPaymentEU') + || !$this->registerHook('paymentOptions') || !$this->registerHook('paymentReturn') + || !$this->registerHook('actionFrontControllerSetMedia') || !Configuration::updateValue(self::WCP_CONFIGURATION_MODE, self::WCP_CONFIGURATION_MODE_DEFAULT) || !Configuration::updateValue(self::WCP_CUSTOMER_ID, self::WCP_CUSTOMER_ID_DEMO) || !Configuration::updateValue(self::WCP_SHOP_ID, self::WCP_SHOP_ID_DEMO) @@ -195,6 +199,21 @@ public function install() return true; } + public function hookActionFrontControllerSetMedia($params){ + + $controllerArray = array('order'); + if (in_array($this->context->controller->php_self, $controllerArray)) { + $this->context->controller->registerStylesheet( + 'module-' . $this->name . '-style', + 'modules/' . $this->name . '/css/style.css', + [ + 'media' => 'all', + 'priority' => 200, + ] + ); + } + } + private function installPaymentTypes() { $result = true; @@ -274,12 +293,9 @@ public function getContent() return $this->html; } - private function renderForm() + private function config() { - $radio_type = 'radio'; - if ($this->getMinorPrestaVersion() > 5) { - $radio_type = 'switch'; - } + $radio_type = 'onoff'; $radio_options = array( array( 'id' => 'active_on', @@ -294,21 +310,15 @@ private function renderForm() ); $fields_form_settings = array( - 'form' => array( - 'legend' => array( - 'title' => $this->l('Settings'), - 'icon' => 'icon-cogs' - ), - 'input' => array( + 'settings' => array( + 'tab' => $this->l('Settings'), + 'fields' => array( array( 'type' => 'select', 'label' => $this->l('Configuration'), + 'default' => 'production', 'name' => self::WCP_CONFIGURATION_MODE, - 'options' => array( - 'query' => $this->getConfigurationModes(), - 'id' => 'key', - 'name' => 'value' - ) + 'options' => 'getConfigurationModes' ), array( 'type' => 'text', @@ -316,6 +326,7 @@ private function renderForm() 'name' => self::WCP_CUSTOMER_ID, 'required' => true, 'class' => 'fixed-width-xl', + 'maxchar' => 7, 'desc' => $this->l('Customer number you received from Wirecard (customerId, i.e. D2#####).').' '.$this->l('More information').' ', ), array( @@ -323,6 +334,7 @@ private function renderForm() 'label' => $this->l('Shop ID'), 'name' => self::WCP_SHOP_ID, 'class' => 'fixed-width-xl', + 'maxchar' => 16, 'desc' => $this->l('Shop identifier in case of more than one shop.').' '.$this->l('More information').' ' ), array( @@ -414,9 +426,6 @@ private function renderForm() 'class' => 't', 'values' => $radio_options ) - ), - 'submit' => array( - 'title' => $this->l('Save') ) ), ); @@ -435,36 +444,175 @@ private function renderForm() } $fields_form_payment = array( + 'paymentmethods' => array( + 'tab' => $this->l('Payment methods'), + 'fields' => $paymentTypeSwitches + ), + ); + + $settings = array_merge($fields_form_settings,$fields_form_payment); + + return $settings; + } + + private function renderForm() + { + $radio_type = 'switch'; + + $radio_options = array( + array( + 'id' => 'active_on', + 'value' => 1, + 'label' => $this->l('Enabled') + ), + array( + 'id' => 'active_off', + 'value' => 0, + 'label' => $this->l('Disabled') + ) + ); + + $input_fields = array(); + $tabs = array(); + foreach ($this->config as $groupKey => $group) { + $tabs[$groupKey] = $this->l($group['tab']); + foreach ($group['fields'] as $f) { + $configGroup = isset($f['group']) ? $f['group'] : $groupKey; + if (isset($f['class'])) { + $configGroup = 'pt'; + } + + $elem = array( + 'name' => $f['name'], + 'label' => $this->l($f['label']), + 'tab' => $groupKey, + 'type' => $f['type'], + 'required' => isset($f['required']) && $f['required'] + ); + + if (isset($f['cssclass'])) { + $elem['class'] = $f['cssclass']; + } + + if (isset($f['doc'])) { + if (is_array($f['doc'])) { + $elem['desc'] = ''; + foreach ($f['doc'] as $d) { + if (Tools::strlen($elem['desc'])) { + $elem['desc'] .= '
'; + } + + $elem['desc'] .= $d; + } + } else { + $elem['desc'] = $this->l($f['doc']); + } + } + + if (isset($f['docref'])) { + $elem['desc'] = isset($elem['desc']) ? $elem['desc'] . ' ' : ''; + $elem['desc'] .= sprintf( + '%s ', + $f['docref'], + $this->l('More information') + ); + } + + switch ($f['type']) { + case 'text': + if (!isset($elem['class'])) { + $elem['class'] = 'fixed-width-xl'; + } + + if (isset($f['maxchar'])) { + $elem['maxlength'] = $elem['maxchar'] = $f['maxchar']; + } + break; + + case 'onoff': + $elem['type'] = $radio_type; + $elem['class'] = 't'; + $elem['is_bool'] = true; + $elem['values'] = $radio_options; + break; + + case 'select': + if (isset($f['multiple'])) { + $elem['multiple'] = $f['multiple']; + } + + if (isset($f['size'])) { + $elem['size'] = $f['size']; + } + + if (isset($f['options'])) { + $optfunc = $f['options']; + $options = array(); + if (is_array($optfunc)) { + $options = $optfunc; + } + + if (method_exists($this, $optfunc)) { + $options = $this->$optfunc(); + } + + $elem['options'] = array( + 'query' => $options, + 'id' => 'key', + 'name' => 'value' + ); + } + break; + + default: + break; + } + + $input_fields[] = $elem; + } + } + + $fields_form_settings = array( 'form' => array( + 'tabs' => $tabs, 'legend' => array( - 'title' => $this->l('Payment methods'), - 'icon' => 'icon-list' + 'title' => $this->l('Settings'), + 'icon' => 'icon-cogs' ), - 'input' => $paymentTypeSwitches, + 'input' => $input_fields, 'submit' => array( 'title' => $this->l('Save') ) ), ); + + /** @var HelperFormCore $helper */ $helper = new HelperForm(); $helper->show_toolbar = false; + /** @var LanguageCore $lang */ $lang = new Language((int)Configuration::get('PS_LANG_DEFAULT')); $helper->default_form_language = $lang->id; - $helper->allow_employee_form_lang = Configuration::get('PS_BO_ALLOW_EMPLOYEE_FORM_LANG') ? Configuration::get('PS_BO_ALLOW_EMPLOYEE_FORM_LANG') : 0; + $helper->allow_employee_form_lang = Configuration::get('PS_BO_ALLOW_EMPLOYEE_FORM_LANG') ? Configuration::get( + 'PS_BO_ALLOW_EMPLOYEE_FORM_LANG' + ) : 0; $helper->id = (int)Tools::getValue('id_carrier'); $helper->identifier = $this->identifier; $helper->submit_action = 'btnSubmit'; - $helper->currentIndex = $this->context->link->getAdminLink('AdminModules', false).'&configure='.$this->name.'&tab_module='.$this->tab.'&module_name='.$this->name; + $helper->currentIndex = $this->context->link->getAdminLink('AdminModules', false) + . '&configure=' . $this->name . '&tab_module=' . $this->tab . '&module_name=' . $this->name; $helper->token = Tools::getAdminTokenLite('AdminModules'); + $helper->tpl_vars = array( 'fields_value' => $this->getConfigFieldsValues(), 'languages' => $this->context->controller->getLanguages(), - 'id_language' => $this->context->language->id + 'id_language' => $this->context->language->id, + 'ajax_configtest_url' => $this->context->link->getAdminLink('AdminModules') . '&configure=' . $this->name + . '&tab_module=' . $this->tab . '&module_name=' . $this->name ); - return $helper->generateForm(array($fields_form_settings, $fields_form_payment)); + return $helper->generateForm(array($fields_form_settings)); } private function getTransactionIdOptions() @@ -484,59 +632,24 @@ public function getConfigFieldsValues() return $values; } - public function hookPayment($params) + public function hookPaymentOptions($params) { if (!$this->active) { return; } + $result = array(); + unset($this->context->cookie->qpayRedirectUrl); $paymentTypes = $this->getEnabledPaymentTypes($params['cart']); - $this->smarty->assign(array( - 'paymentTypes' => $paymentTypes, - 'this_path' => $this->_path - )); - - if ($this->getMinorPrestaVersion() > 5) { - $this->context->controller->addCSS($this->_path . 'css/style.css', 'all'); - return $this->display(__FILE__, 'payment.tpl'); - } else { - return $this->display(__FILE__, 'payment1.5.tpl'); - } - } + foreach ($paymentTypes as $paymentType) { + $payment = new PaymentOption(); + $payment->setLogo(Media::getMediaPath(dirname(__FILE__) . '/img/payment_types/' . strtolower($paymentType['value']) . '.png')) + ->setCallToActionText($this->l('Pay using') . ' ' . $this->l($paymentType['title'])) + ->setAction($this->context->link->getModuleLink($this->name, 'payment', array('paymentType' => $paymentType['value']), true)); - public function hookDisplayPaymentEU($params) - { - $this->log("hookDisplayPaymentEU"); - if (!$this->active) { - return; - } - - unset($this->context->cookie->qpayRedirectUrl); - - $paymentTypes = $this->getEnabledPaymentTypes($params['cart']); - $result = array(); - if (count($paymentTypes)) { - foreach ($paymentTypes as $paymentType) { - array_push( - $result, - array( - 'cta_text' => $this->l('Pay using') . ' ' . $paymentType['title'], - 'logo' => Media::getMediaPath(dirname(__FILE__) . '/img/payment_types/' . strtolower($paymentType['value']) . '.png'), - 'action' => $this->context->link->getModuleLink($this->name, 'payment', array('paymentType' => $paymentType['value']), true) - ) - ); - } - } else { - array_push( - $result, - array( - 'cta_text' => $this->l('Pay with Wirecard Checkout Page'), - 'logo' => Media::getMediaPath(dirname(__FILE__) . '/img/payment_types/checkoutpage.png'), - 'action' => $this->context->link->getModuleLink($this->name, 'payment', array('paymentType' => 'SELECT'), true) - ) - ); + $result[] = $payment; } return count($result) ? $result : false; From cd291084fbcaee905865066331ff4a72b885e418 Mon Sep 17 00:00:00 2001 From: jakubpolomsky Date: Thu, 5 Jan 2017 10:50:36 +0100 Subject: [PATCH 02/42] #5 enable transaction id select options --- wirecardceecheckoutpage/wirecardceecheckoutpage.php | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index b5ade36..2ce8b75 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -393,11 +393,7 @@ private function config() 'type' => 'select', 'label' => $this->l('Transaction ID'), 'name' => self::WCP_TRANSACTION_ID, - 'options' => array( - 'query' => $this->getTransactionIdOptions(), - 'id' => 'key', - 'name' => 'value' - ), + 'options' => 'getTransactionIdOptions', 'desc' => $this->l('Wirecard order number: Unique number defined by Wirecard identifying the payment.') . '
' . $this->l('Gateway reference number: Reference number defined by the processor or acquirer.') ), array( From 6a2d8c4b1a42aa748b7417c6ea53f0f35db63334 Mon Sep 17 00:00:00 2001 From: jakubpolomsky Date: Mon, 9 Jan 2017 11:56:26 +0100 Subject: [PATCH 03/42] #5 redirect to order with full basket after cancel + update readme --- README.md | 5 +- .../controllers/front/paymentExecution.php | 62 ----------------- .../templates/front/payment_execution.tpl | 66 ------------------- .../templates/front/payment_execution1.5.tpl | 58 ---------------- .../wirecardceecheckoutpage.php | 28 +++++--- 5 files changed, 21 insertions(+), 198 deletions(-) delete mode 100644 wirecardceecheckoutpage/controllers/front/paymentExecution.php delete mode 100644 wirecardceecheckoutpage/views/templates/front/payment_execution.tpl delete mode 100644 wirecardceecheckoutpage/views/templates/front/payment_execution1.5.tpl diff --git a/README.md b/README.md index dda4004..202ef37 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,8 @@ # Wirecard Checkout Page plugin for PrestaShop [![License](https://img.shields.io/badge/license-GPLv2-blue.svg)](https://raw.githubusercontent.com/wirecard/prestashop-wcp/master/LICENSE) -[![PrestaShop](https://img.shields.io/badge/PrestaShop-v1.5.6.2-green.svg)](https://www.prestashop.com/) -[![PrestaShop](https://img.shields.io/badge/PrestaShop-v1.6.1.2-green.svg)](https://www.prestashop.com/) -[![PHP v5.3](https://img.shields.io/badge/php-v5.3-yellow.svg)](http://www.php.net) +[![PrestaShop](https://img.shields.io/badge/PrestaShop-v1.7.0.3-green.svg)](https://www.prestashop.com/) +[![PHP v5.6](https://img.shields.io/badge/php-v5.3-yellow.svg)](http://www.php.net) Wirecard Checkout Page plugin for PrestaShop. diff --git a/wirecardceecheckoutpage/controllers/front/paymentExecution.php b/wirecardceecheckoutpage/controllers/front/paymentExecution.php deleted file mode 100644 index 5736dbb..0000000 --- a/wirecardceecheckoutpage/controllers/front/paymentExecution.php +++ /dev/null @@ -1,62 +0,0 @@ -ssl = true; - $this->display_column_left = false; - parent::initContent(); - - $cart = $this->context->cart; - - $this->context->smarty->assign(array( - 'nbProducts' => $cart->nbProducts(), - 'total' => $cart->getOrderTotal(true, Cart::BOTH), - 'paymentName' => Tools::getValue('paymentName'), - 'paymentType' => Tools::getValue('paymentType') - )); - - if ($this->module->getMinorPrestaVersion() > 5) { - $this->setTemplate('payment_execution.tpl'); - } else { - $this->setTemplate('payment_execution1.5.tpl'); - } - } -} diff --git a/wirecardceecheckoutpage/views/templates/front/payment_execution.tpl b/wirecardceecheckoutpage/views/templates/front/payment_execution.tpl deleted file mode 100644 index f8c5e83..0000000 --- a/wirecardceecheckoutpage/views/templates/front/payment_execution.tpl +++ /dev/null @@ -1,66 +0,0 @@ -{* - * Shop System Plugins - Terms of Use - * - * The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH - * (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of - * products and services. - * - * They have been tested and approved for full functionality in the standard configuration - * (status on delivery) of the corresponding shop system. They are under General Public - * License Version 2 (GPLv2) and can be used, developed and passed on to third parties under - * the same terms. - * - * However, Wirecard CEE does not provide any guarantee or accept any liability for any errors - * occurring when used in an enhanced, customized shop system configuration. - * - * Operation in an enhanced, customized configuration is at your own risk and requires a - * comprehensive test phase by the user of the plugin. - * - * Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full - * functionality neither does Wirecard CEE assume liability for any disadvantages related to - * the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality - * for customized shop systems or installed plugins of other vendors of plugins within the same - * shop system. - * - * Customers are responsible for testing the plugin's functionality before starting productive - * operation. - * - * By installing the plugin into the shop system the customer agrees to these terms of use. - * Please do not use the plugin if you do not agree to these terms of use! - *} -{capture name=path} - {l s='Checkout' mod='wirecardceecheckoutpage'}{$navigationPipe}{l s='Wirecard Checkout Page' mod='wirecardceecheckoutpage'} -{/capture} - -

{l s='Order summary' mod='wirecardceecheckoutpage'}

- -{assign var='current_step' value='payment'} -{include file="$tpl_dir./order-steps.tpl"} - -{if isset($nbProducts) && $nbProducts <= 0} -

{l s='Your shopping cart is empty.' mod='wirecardceecheckoutpage'}

-{else} -
-
-

{l s='Wirecard Checkout Page payment' mod='wirecardceecheckoutpage'}

-

- - {l s='You have chosen to pay with ' mod='wirecardceecheckoutpage'}{$paymentName}. - -

-

- - {l s='Total amount of your order:' mod='wirecardceecheckoutpage'} - {displayPrice price=$total} -

-

- {l s='Please confirm your order by clicking "I confirm my order".' mod='wirecardceecheckoutpage'}

-
-

- - {l s='Other payment methods' mod='wirecardceecheckoutpage'} - - -

-
-{/if} diff --git a/wirecardceecheckoutpage/views/templates/front/payment_execution1.5.tpl b/wirecardceecheckoutpage/views/templates/front/payment_execution1.5.tpl deleted file mode 100644 index 2a55c08..0000000 --- a/wirecardceecheckoutpage/views/templates/front/payment_execution1.5.tpl +++ /dev/null @@ -1,58 +0,0 @@ -{* - * Shop System Plugins - Terms of Use - * - * The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH - * (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of - * products and services. - * - * They have been tested and approved for full functionality in the standard configuration - * (status on delivery) of the corresponding shop system. They are under General Public - * License Version 2 (GPLv2) and can be used, developed and passed on to third parties under - * the same terms. - * - * However, Wirecard CEE does not provide any guarantee or accept any liability for any errors - * occurring when used in an enhanced, customized shop system configuration. - * - * Operation in an enhanced, customized configuration is at your own risk and requires a - * comprehensive test phase by the user of the plugin. - * - * Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full - * functionality neither does Wirecard CEE assume liability for any disadvantages related to - * the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality - * for customized shop systems or installed plugins of other vendors of plugins within the same - * shop system. - * - * Customers are responsible for testing the plugin's functionality before starting productive - * operation. - * - * By installing the plugin into the shop system the customer agrees to these terms of use. - * Please do not use the plugin if you do not agree to these terms of use! - *} - -{capture name=path}{l s='Wirecard Checkout Page' mod='wirecardceecheckoutpage'}{/capture} -{include file="$tpl_dir./breadcrumb.tpl"} - -

{l s='Order summary' mod='wirecardceecheckoutpage'}

- -{assign var='current_step' value='payment'} -{include file="$tpl_dir./order-steps.tpl"} - -{if isset($nbProducts) && $nbProducts <= 0} -

{l s='Your shopping cart is empty.' mod='wirecardceecheckoutpage'}

-{else} -

{l s='Wirecard Checkout Page payment' mod='wirecardceecheckoutpage'}

-
-

- {l s='You have chosen to pay with ' mod='wirecardceecheckoutpage'}{$paymentName}. -

-

- - {l s='Total amount of your order:' mod='wirecardceecheckoutpage'} - {displayPrice price=$total} -

-

- {l s='Please confirm your order by clicking "I confirm my order".' mod='wirecardceecheckoutpage'}

-

- - {l s='Other payment methods' mod='wirecardceecheckoutpage'} -

-
-{/if} \ No newline at end of file diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index 2ce8b75..f3c7035 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -128,7 +128,7 @@ public function __construct() $this->tab = 'payments_gateways'; $this->version = '2.0.0'; $this->author = 'Wirecard'; - $this->controllers = array('breakoutIFrame', 'confirm', 'payment', 'paymentExecution', 'paymentIFrame'); + $this->controllers = array('breakoutIFrame', 'confirm', 'payment', 'paymentIFrame'); $this->is_eu_compatible = 1; $this->currencies = true; @@ -677,15 +677,25 @@ public function hookDisplayPaymentReturn($params) return $this->display(__FILE__, 'pending.tpl'); } - $params = array( - 'submitReorder' => true, - 'id_order' => (int)$params['objOrder']->id - ); - - if (Configuration::get('PS_ORDER_PROCESS_TYPE')) { - Tools::redirect($this->context->link->getPageLink('order-opc', true, $this->getOrder()->id_lang, $params)); + // rebuild cart + $oldCart = new Cart((int)$params["order"]->id_cart); + $duplication = $oldCart->duplicate(); + if (!$duplication || !Validate::isLoadedObject($duplication['cart'])) { + $this->errors[] = Tools::displayError('Sorry. We cannot renew your order.'); + } elseif (!$duplication['success']) { + $this->errors[] = Tools::displayError('Some items are no longer available, and we are unable to renew your order.'); + } else { + $this->context->cookie->id_cart = $duplication['cart']->id; + $context = $this->context; + $context->cart = $duplication['cart']; + CartRule::autoAddToCart($context); + $this->context->cookie->write(); + + if (Configuration::get('PS_ORDER_PROCESS_TYPE')) { + Tools::redirect($this->context->link->getPageLink('order-opc', true, $this->getOrder()->id_lang, null)); + } + Tools::redirect($this->context->link->getPageLink('order', true, $this->getOrder()->id_lang, null)); } - Tools::redirect($this->context->link->getPageLink('order', true, $this->getOrder()->id_lang, $params)); } public function hookDisplayPDFInvoice($params) From c3cf267d65918b10efb5d7d960acd521c949fce8 Mon Sep 17 00:00:00 2001 From: jpy Date: Fri, 21 Apr 2017 09:39:26 +0200 Subject: [PATCH 04/42] Update README.md --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 202ef37..b916b2a 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,9 @@ # Wirecard Checkout Page plugin for PrestaShop [![License](https://img.shields.io/badge/license-GPLv2-blue.svg)](https://raw.githubusercontent.com/wirecard/prestashop-wcp/master/LICENSE) -[![PrestaShop](https://img.shields.io/badge/PrestaShop-v1.7.0.3-green.svg)](https://www.prestashop.com/) -[![PHP v5.6](https://img.shields.io/badge/php-v5.3-yellow.svg)](http://www.php.net) +[![PrestaShop](https://img.shields.io/badge/PrestaShop-v1.7.1.0-green.svg)](https://www.prestashop.com/) +[![PHP v5.6](https://img.shields.io/badge/php-v5.6-yellow.svg)](http://www.php.net) +[![PHP v7.0](https://img.shields.io/badge/php-v7.0-yellow.svg)](http://www.php.net) Wirecard Checkout Page plugin for PrestaShop. @@ -27,4 +28,3 @@ Wirecard Checkout Page offers: - Web interface for managing payments (approvals, cancelations, credits, etc.). - Benefit from Wirecard Bank´s license to conclude credit card acceptance contracts (acquiring) and issue credit cards. - With Wirecard Collecting only a single contract is required for payouts within various payment methods. -- Support of recurring payments (subscriptions, one-click checkout). From 7ef0006a61b2dd3f7ad17b41d8f40f89912a5a2e Mon Sep 17 00:00:00 2001 From: jakubpolomsky Date: Tue, 13 Jun 2017 15:19:30 +0200 Subject: [PATCH 05/42] #6 remove mpass and skrilldirect --- wirecardceecheckoutpage/translations/de.php | 2 -- wirecardceecheckoutpage/translations/en.php | 2 -- wirecardceecheckoutpage/upgrade/install-1.4.0.php | 2 +- wirecardceecheckoutpage/wirecardceecheckoutpage.php | 10 +--------- 4 files changed, 2 insertions(+), 14 deletions(-) diff --git a/wirecardceecheckoutpage/translations/de.php b/wirecardceecheckoutpage/translations/de.php index 6be3157..0b9908f 100644 --- a/wirecardceecheckoutpage/translations/de.php +++ b/wirecardceecheckoutpage/translations/de.php @@ -71,8 +71,6 @@ $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_d822a505bd8d5faef8f7fd081c9517e0'] = 'POLi'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_0ff52aceaf88adbdfb1a1e628a66b6cf'] = 'eKonto'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_31797189117cf605565c9d330601cc7f'] = 'Trustly'; -$_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_fc695527ce186f3a87ac588d9cc8339d'] = 'mpass'; -$_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_ffe0b676beb70ae97ad71df7fa9321d1'] = 'Skrill Direct'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_1525848c624bf1a02dfce01c9e8145cf'] = 'Skrill Digital Wallet'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_a38734e15f454bd7fb7546a29f19a3cc'] = 'Mein Gutschein'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_ccf55b98ae88096af98ec961d64b489b'] = 'Der Konsument kann ein aktiviertes Zahlungsmittel direkt in der Wirecard Checkout Page auswählen.'; diff --git a/wirecardceecheckoutpage/translations/en.php b/wirecardceecheckoutpage/translations/en.php index 6b86c93..2fc7bd5 100644 --- a/wirecardceecheckoutpage/translations/en.php +++ b/wirecardceecheckoutpage/translations/en.php @@ -71,8 +71,6 @@ $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_d822a505bd8d5faef8f7fd081c9517e0'] = 'POLi'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_0ff52aceaf88adbdfb1a1e628a66b6cf'] = 'eKonto'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_31797189117cf605565c9d330601cc7f'] = 'Trustly'; -$_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_fc695527ce186f3a87ac588d9cc8339d'] = 'mpass'; -$_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_ffe0b676beb70ae97ad71df7fa9321d1'] = 'Skrill Direct'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_1525848c624bf1a02dfce01c9e8145cf'] = 'Skrill Digital Wallet'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_a38734e15f454bd7fb7546a29f19a3cc'] = 'My Voucher'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_ccf55b98ae88096af98ec961d64b489b'] = 'The consumer may select one of the activated payment methods directly in Wirecard Checkout Page.'; diff --git a/wirecardceecheckoutpage/upgrade/install-1.4.0.php b/wirecardceecheckoutpage/upgrade/install-1.4.0.php index 7bbd9f8..4c354c3 100644 --- a/wirecardceecheckoutpage/upgrade/install-1.4.0.php +++ b/wirecardceecheckoutpage/upgrade/install-1.4.0.php @@ -37,7 +37,7 @@ function upgrade_module_1_4_0($object) { Db::getInstance()->execute( - 'DELETE FROM `'._DB_PREFIX_.'configuration` WHERE name="WCP_PT_C2P";' + 'DELETE FROM `'._DB_PREFIX_.'configuration` WHERE name="WCP_PT_C2P" OR name="WCP_PT_MPASS" OR name="WCP_PT_SKRILLDIRECT";' ); Configuration::updateValue('WCP_CONFIGURATION_MODE', 'production'); return true; diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index f3c7035..7ce602a 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -101,8 +101,6 @@ class WirecardCEECheckoutPage extends PaymentModule const WCP_PT_POLI = 'WCP_PT_POLI'; const WCP_PT_EKONTO = 'WCP_PT_EKONTO'; const WCP_PT_TRUSTLY = 'WCP_PT_TRUSTLY'; - const WCP_PT_MPASS = 'WCP_PT_MPASS'; - const WCP_PT_SKRILLDIRECT = 'WCP_PT_SKRILLDIRECT'; const WCP_PT_SKRILLWALLET = 'WCP_PT_SKRILLWALLET'; const WCP_PT_VOUCHER = 'WCP_PT_VOUCHER'; @@ -1074,7 +1072,7 @@ private function getPaymentTypes() self::WCP_PT_PBX, self::WCP_PT_QUICK, self::WCP_PT_PAYPAL, self::WCP_PT_EPAY_BG, self::WCP_PT_SEPA_DD, self::WCP_PT_TRUSTPAY, self::WCP_PT_INVOICE, self::WCP_PT_INSTALLMENT, self::WCP_PT_BANCONTACT_MISTERCASH, self::WCP_PT_P24, self::WCP_PT_MONETA, self::WCP_PT_POLI, self::WCP_PT_EKONTO, self::WCP_PT_TRUSTLY, - self::WCP_PT_MPASS, self::WCP_PT_SKRILLDIRECT, self::WCP_PT_SKRILLWALLET, self::WCP_PT_VOUCHER); + self::WCP_PT_SKRILLWALLET, self::WCP_PT_VOUCHER); } private function getPaymentTypeInfo($type) @@ -1149,12 +1147,6 @@ private function getPaymentTypeInfo($type) case self::WCP_PT_TRUSTLY: return array('title' => $this->l('Trustly'), 'value' => Wirecard_CEE_QPay_PaymentType::TRUSTLY); - case self::WCP_PT_MPASS: - return array('title' => $this->l('mpass'), - 'value' => Wirecard_CEE_QPay_PaymentType::MPASS); - case self::WCP_PT_SKRILLDIRECT: - return array('title' => $this->l('Skrill Direct'), - 'value' => Wirecard_CEE_QPay_PaymentType::SKRILLDIRECT); case self::WCP_PT_SKRILLWALLET: return array('title' => $this->l('Skrill Digital Wallet'), 'value' => Wirecard_CEE_QPay_PaymentType::SKRILLWALLET); From 36bb5db4fb52964ad9df85413914979236624ced Mon Sep 17 00:00:00 2001 From: jakubpolomsky Date: Tue, 13 Jun 2017 15:22:50 +0200 Subject: [PATCH 06/42] #6 rename bancontact/mister cash to bancontact --- wirecardceecheckoutpage/translations/de.php | 2 +- wirecardceecheckoutpage/translations/en.php | 2 +- wirecardceecheckoutpage/wirecardceecheckoutpage.php | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/wirecardceecheckoutpage/translations/de.php b/wirecardceecheckoutpage/translations/de.php index 0b9908f..07c368f 100644 --- a/wirecardceecheckoutpage/translations/de.php +++ b/wirecardceecheckoutpage/translations/de.php @@ -65,7 +65,7 @@ $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_e5532ed7b6c5ecb396dd70f0e4283f64'] = 'TrustPay'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_466eadd40b3c10580e3ab4e8061161ce'] = 'Kauf auf Rechnung'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_459f93c30d7bc374abe95e0d8a1c66b0'] = 'Kauf auf Raten'; -$_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_46794af42524fa65bce0ff7acdc7b753'] = 'Bancontact/Mister Cash'; +$_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_870cf6bc77bbadd038aeb8d942c9cb18'] = 'Bancontact'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_b02f3d1095fbd0490caa31090d2aac19'] = 'Przelewy24'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_1badcb6bf3c9f9a61b9221344ccdc53c'] = 'moneta.ru'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_d822a505bd8d5faef8f7fd081c9517e0'] = 'POLi'; diff --git a/wirecardceecheckoutpage/translations/en.php b/wirecardceecheckoutpage/translations/en.php index 2fc7bd5..f9e17f0 100644 --- a/wirecardceecheckoutpage/translations/en.php +++ b/wirecardceecheckoutpage/translations/en.php @@ -65,7 +65,7 @@ $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_e5532ed7b6c5ecb396dd70f0e4283f64'] = 'TrustPay'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_466eadd40b3c10580e3ab4e8061161ce'] = 'Invoice'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_459f93c30d7bc374abe95e0d8a1c66b0'] = 'Installment'; -$_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_46794af42524fa65bce0ff7acdc7b753'] = 'Bancontact/Mister Cash'; +$_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_870cf6bc77bbadd038aeb8d942c9cb18'] = 'Bancontact'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_b02f3d1095fbd0490caa31090d2aac19'] = 'Przelewy24'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_1badcb6bf3c9f9a61b9221344ccdc53c'] = 'moneta.ru'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_d822a505bd8d5faef8f7fd081c9517e0'] = 'POLi'; diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index 7ce602a..d162124 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -1130,7 +1130,7 @@ private function getPaymentTypeInfo($type) return array('title' => $this->l('Installment'), 'value' => Wirecard_CEE_QPay_PaymentType::INSTALLMENT); case self::WCP_PT_BANCONTACT_MISTERCASH: - return array('title' => $this->l('Bancontact/Mister Cash'), + return array('title' => $this->l('Bancontact'), 'value' => Wirecard_CEE_QPay_PaymentType::BANCONTACT_MISTERCASH); case self::WCP_PT_P24: return array('title' => $this->l('Przelewy24'), From 6b4158cee0c389d9b7b3a230cb67aae183170b9d Mon Sep 17 00:00:00 2001 From: jakubpolomsky Date: Tue, 13 Jun 2017 15:44:00 +0200 Subject: [PATCH 07/42] #6 update eps ideal bank list + add masterpass --- .../library/Wirecard/CEE/QPay/Initiation.php | 14 +++- .../library/Wirecard/CEE/QPay/PaymentType.php | 75 +++++++++++-------- wirecardceecheckoutpage/translations/de.php | 1 + wirecardceecheckoutpage/translations/en.php | 1 + .../wirecardceecheckoutpage.php | 18 +++-- 5 files changed, 72 insertions(+), 37 deletions(-) diff --git a/wirecardceecheckoutpage/library/Wirecard/CEE/QPay/Initiation.php b/wirecardceecheckoutpage/library/Wirecard/CEE/QPay/Initiation.php index 2543d02..6ccc343 100644 --- a/wirecardceecheckoutpage/library/Wirecard/CEE/QPay/Initiation.php +++ b/wirecardceecheckoutpage/library/Wirecard/CEE/QPay/Initiation.php @@ -67,6 +67,7 @@ final class Wirecard_CEE_QPay_Initiation private static $REQUEST_FINGERPRINT_ORDER = 'requestFingerprintOrder'; private static $PLUGIN_VERSION = 'pluginVersion'; private static $CONSUMER_MERCHANT_CRM_ID = 'consumerMerchantCrmId'; + private static $SHIPPING_PROFILE = 'shippingProfile'; /** * creates an instance of {@link Wirecard_CEE_QPay_Initiation} @@ -265,7 +266,7 @@ public function setOrderNumber($orderNumber) /** * sets the qpay parameter confirmMail - * @param type $confirmMail + * @param string $confirmMail * @return Wirecard_CEE_QPay_Initiation */ public function setConfirmMail($confirmMail) @@ -273,6 +274,17 @@ public function setConfirmMail($confirmMail) $this->__set(self::$CONFIRM_MAIL, $confirmMail); return $this; } + + /** + * sets the qpay parameter shippingProfile + * @param string $shippingProfile + * @return Wirecard_CEE_QPay_Initiation + */ + public function setShippingProfile($shippingProfile) + { + $this->__set(self::$SHIPPING_PROFILE, $shippingProfile); + return $this; + } /** * Getter for QPAY Client Library Versionstring diff --git a/wirecardceecheckoutpage/library/Wirecard/CEE/QPay/PaymentType.php b/wirecardceecheckoutpage/library/Wirecard/CEE/QPay/PaymentType.php index fec68e0..f938414 100644 --- a/wirecardceecheckoutpage/library/Wirecard/CEE/QPay/PaymentType.php +++ b/wirecardceecheckoutpage/library/Wirecard/CEE/QPay/PaymentType.php @@ -17,6 +17,7 @@ final class Wirecard_CEE_QPay_PaymentType const CCARD = 'CCARD'; const CCARD_MOTO = 'CCARD-MOTO'; const MAESTRO = 'MAESTRO'; + const MASTERPASS = 'MASTERPASS'; const PBX = 'PBX'; const PSC = 'PSC'; const EPS = 'EPS'; @@ -51,39 +52,51 @@ final class Wirecard_CEE_QPay_PaymentType const INVOICE_INSTALLMENT_MIN_AGE = 18; private static $_eps_financial_institutions = Array( - 'BA-CA' => 'Bank Austria', - 'Spardat|BB' => 'Bank Burgenland', - 'ARZ|BAF' => 'Bank fü Ärzte und Freie Berufe', - 'ARC|BCS' => 'Bankhaus Carl Spängler & Co. AG', - 'Bawag|B' => 'BAWAG', - 'ARZ|VB' => 'Die östereischischen Volksbanken', - 'Bawag|E' => 'easyBank', - 'Spardat|EBS' => 'Erste Bank und Sparkassen', - 'ARZ|GB' => 'Gärtnerbank', - 'ARZ|HAA' => 'Hypo Alpe-Adria Bank AG', - 'ARZ|HI' => 'Hypo Investmentbank AG', - 'Hypo-Racon|O' => 'Hypo Oberösterreich', - 'Hypo-Racon|S' => 'Hypo Salzburg', - 'Hypo-Racon|ST' => 'Hypo Steiermark', - 'ARZ|HTB' => 'Hypo Tirol Bank AG', - 'ARZ|IB' => 'Immo-Bank', - 'ARZ|IKB' => 'Investkredit Bank AG', - 'ARZ|NLH' => 'Niesterösterreichische Landes-Hypothekenbank AG', - 'ARZ|AB' => 'Österreichische Apothekerbank', - 'Bawag|P' => 'PSK Bank', - 'Racon' => 'Raiffeisen Bank', - 'Bawag|S' => 'Sparda Bank', - 'ARZ|VLH' => 'Vorarlberger Landes- und Hypothekerbank AG', + 'ARZ|AB' => 'Apothekerbank', + 'ARZ|AAB' => 'Austrian Anadi Bank AG', + 'ARZ|BAF' => 'Ärztebank', + 'BA-CA' => 'Bank Austria', + 'ARZ|BCS' => 'Bankhaus Carl Spängler & Co. AG', + 'ARZ|BSS' => 'Bankhaus Schelhammer & Schattera AG', + 'Bawag|BG' => 'BAWAG P.S.K. AG', + 'ARZ|BKS' => 'BKS Bank AG', + 'ARZ|BKB' => 'Brüll Kallmus Bank AG', + 'ARZ|BTV' => 'BTV VIER LÄNDER BANK', + 'ARZ|CBGG' => 'Capital Bank Grawe Gruppe AG', + 'ARZ|VB' => 'Volksbank Gruppe', + 'ARZ|DB' => 'Dolomitenbank', + 'Bawag|EB' => 'Easybank AG', + 'Spardat|EBS' => 'Erste Bank und Sparkassen', + 'ARZ|HAA' => 'Hypo Alpe-Adria-Bank International AG', + 'ARZ|VLH' => 'Hypo Landesbank Vorarlberg', + 'ARZ|HI' => 'HYPO NOE Gruppe Bank AG', + 'ARZ|NLH' => 'HYPO NOE Landesbank AG', + 'Hypo-Racon|O' => 'Hypo Oberösterreich', + 'Hypo-Racon|S' => 'Hypo Salzburg', + 'Hypo-Racon|St' => 'Hypo Steiermark', + 'ARZ|HTB' => 'Hypo Tirol Bank AG', + 'BB-Racon' => 'HYPO-BANK BURGENLAND Aktiengesellschaft', + 'ARZ|IB' => 'Immo-Bank', + 'ARZ|OB' => 'Oberbank AG', + 'Racon' => 'Raiffeisen Bankengruppe Österreich', + 'ARZ|SB' => 'Schoellerbank AG', + 'Bawag|SBW' => 'Sparda Bank Wien', + 'ARZ|SBA' => 'SPARDA-BANK AUSTRIA', + 'ARZ|VKB' => 'Volkskreditbank AG', + 'ARZ|VRB' => 'VR-Bank Braunau' ); + private static $_idl_financial_institutions = Array( - 'ABNAMROBANK' => 'ABN AMRO Bank', - 'POSTBANK' => 'Postbank', - 'RABOBANK' => 'Rabobank', - 'SNSBANK' => 'SNS Bank', - 'ASNBANK' => 'ASN Bank', - 'REGIOBANK' => 'SNS Regio Bank', - 'TRIDOSBANK' => 'Tridos Bank', - 'VANLANSCHOT' => 'Van Lanschot Bank', + 'ABNAMROBANK' =>'ABN AMRO Bank', + 'ASNBANK' =>'ASN Bank', + 'BUNQ' =>'Bunq Bank', + 'INGBANK' =>'ING', + 'KNAB' =>'knab', + 'RABOBANK' =>'Rabobank', + 'SNSBANK' =>'SNS Bank', + 'REGIOBANK' =>'RegioBank', + 'TRIODOSBANK' =>'Triodos Bank', + 'VANLANSCHOT' =>'Van Lanschot Bankiers' ); private $_name; diff --git a/wirecardceecheckoutpage/translations/de.php b/wirecardceecheckoutpage/translations/de.php index 07c368f..bc3ad3e 100644 --- a/wirecardceecheckoutpage/translations/de.php +++ b/wirecardceecheckoutpage/translations/de.php @@ -49,6 +49,7 @@ $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_3fb20ad24cbc5a57b91a57a396679fec'] = 'Zahlungsmittel nicht aktiviert.'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_27ea1853e76889e2bb5a34ba79e14d55'] = 'Ergebnisse des Bezahlprozesses konnten nicht verlässlich gespeichert werden. Bitte überprüfen Sie die Zahlungen im Wirecard Payment Center.'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_73a61696f100b3858511e212a3feea6b'] = 'Kreditkarte'; +$_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_0d2ecb55b0dcb203411b067ba3905803'] = 'Masterpass'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_677c0ab38809416b6b9cf96f0d563c77'] = 'Kreditkarte - Mail Order and Telephone Order'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_1f2bdd630c44333f17bb08ff1b862eec'] = 'MasterCard SecureCode'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_c09143333604374dfc935b1843553604'] = 'eps Online-Überweisung'; diff --git a/wirecardceecheckoutpage/translations/en.php b/wirecardceecheckoutpage/translations/en.php index f9e17f0..602645c 100644 --- a/wirecardceecheckoutpage/translations/en.php +++ b/wirecardceecheckoutpage/translations/en.php @@ -49,6 +49,7 @@ $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_3fb20ad24cbc5a57b91a57a396679fec'] = 'Payment method not enabled.'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_27ea1853e76889e2bb5a34ba79e14d55'] = 'Payment process results could not be saved reliably. Please check the payment in the Wirecard Payment Center.'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_73a61696f100b3858511e212a3feea6b'] = 'Credit Card'; +$_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_0d2ecb55b0dcb203411b067ba3905803'] = 'Masterpass'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_677c0ab38809416b6b9cf96f0d563c77'] = 'Credit Card - Mail Order and Telephone Order'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_1f2bdd630c44333f17bb08ff1b862eec'] = 'MasterCard SecureCode'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_c09143333604374dfc935b1843553604'] = 'eps Online-Überweisung'; diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index d162124..7638d38 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -81,6 +81,7 @@ class WirecardCEECheckoutPage extends PaymentModule const WCP_PT_CCARD = 'WCP_PT_CCARD'; const WCP_PT_CCARD_MOTO = 'WCP_PT_CCARD-MOTO'; const WCP_PT_MAESTRO = 'WCP_PT_MAESTRO'; + const WCP_PT_MASTERPASS = 'WCP_PT_MASTERPASS'; const WCP_PT_EPS = 'WCP_PT_EPS'; const WCP_PT_IDL = 'WCP_PT_IDL'; const WCP_PT_GIROPAY = 'WCP_PT_GIROPAY'; @@ -95,7 +96,7 @@ class WirecardCEECheckoutPage extends PaymentModule const WCP_PT_TRUSTPAY = 'WCP_PT_TRUSTPAY'; const WCP_PT_INVOICE = 'WCP_PT_INVOICE'; const WCP_PT_INSTALLMENT = 'WCP_PT_INSTALLMENT'; - const WCP_PT_BANCONTACT_MISTERCASH = 'WCP_PT_BANCONTACT_MISTERCASH'; + const WCP_PT_BANCONTACT = 'WCP_PT_BANCONTACT'; const WCP_PT_P24 = 'WCP_PT_PRZELEWY24'; const WCP_PT_MONETA = 'WCP_PT_MONETA'; const WCP_PT_POLI = 'WCP_PT_POLI'; @@ -124,7 +125,7 @@ public function __construct() $this->config = $this->config(); $this->name = 'wirecardceecheckoutpage'; $this->tab = 'payments_gateways'; - $this->version = '2.0.0'; + $this->version = '2.1.0'; $this->author = 'Wirecard'; $this->controllers = array('breakoutIFrame', 'confirm', 'payment', 'paymentIFrame'); $this->is_eu_compatible = 1; @@ -825,6 +826,10 @@ private function initiate($paymentType) $pluginVersion['pluginVersion'], array() ); + + if($paymentType == Wirecard_CEE_QPay_PaymentType::MASTERPASS){ + $request->setShippingProfile('NO_SHIPPING'); + } //additionally parameters can be added easily because of the magic method __set $request->psOrderNumber = $this->getOrder()->id; @@ -1067,10 +1072,10 @@ private function getAllConfigurationParameter() private function getPaymentTypes() { - return array(self::WCP_PT_CCARD, self::WCP_PT_CCARD_MOTO, self::WCP_PT_MAESTRO, self::WCP_PT_EPS, + return array(self::WCP_PT_CCARD, self::WCP_PT_CCARD_MOTO, self::WCP_PT_MAESTRO, self::WCP_PT_MASTERPASS, self::WCP_PT_EPS, self::WCP_PT_IDL, self::WCP_PT_GIROPAY, self::WCP_PT_TATRAPAY, self::WCP_PT_SOFORTUEBERWEISUNG, self::WCP_PT_PBX, self::WCP_PT_QUICK, self::WCP_PT_PAYPAL, self::WCP_PT_EPAY_BG, self::WCP_PT_SEPA_DD, - self::WCP_PT_TRUSTPAY, self::WCP_PT_INVOICE, self::WCP_PT_INSTALLMENT, self::WCP_PT_BANCONTACT_MISTERCASH, + self::WCP_PT_TRUSTPAY, self::WCP_PT_INVOICE, self::WCP_PT_INSTALLMENT, self::WCP_PT_BANCONTACT, self::WCP_PT_P24, self::WCP_PT_MONETA, self::WCP_PT_POLI, self::WCP_PT_EKONTO, self::WCP_PT_TRUSTLY, self::WCP_PT_SKRILLWALLET, self::WCP_PT_VOUCHER); } @@ -1087,6 +1092,9 @@ private function getPaymentTypeInfo($type) case self::WCP_PT_MAESTRO: return array('title' => $this->l('MasterCard SecureCode'), 'value' => Wirecard_CEE_QPay_PaymentType::MAESTRO); + case self::WCP_PT_MASTERPASS: + return array('title' => $this->l('Masterpass'), + 'value' => Wirecard_CEE_QPay_PaymentType::MASTERPASS); case self::WCP_PT_EPS: return array('title' => $this->l('eps Online-Überweisung'), 'value' => Wirecard_CEE_QPay_PaymentType::EPS); @@ -1129,7 +1137,7 @@ private function getPaymentTypeInfo($type) case self::WCP_PT_INSTALLMENT: return array('title' => $this->l('Installment'), 'value' => Wirecard_CEE_QPay_PaymentType::INSTALLMENT); - case self::WCP_PT_BANCONTACT_MISTERCASH: + case self::WCP_PT_BANCONTACT: return array('title' => $this->l('Bancontact'), 'value' => Wirecard_CEE_QPay_PaymentType::BANCONTACT_MISTERCASH); case self::WCP_PT_P24: From 8ff86e54dcf33ab562acc47d706677c279a3945c Mon Sep 17 00:00:00 2001 From: jakubpolomsky Date: Fri, 16 Jun 2017 12:03:18 +0200 Subject: [PATCH 08/42] #6 add eps and ideal dropdowns for financialInstitution - repair logo paths as well --- .../views/templates/hook/methods/eps.tpl | 15 +++++++ .../views/templates/hook/methods/idl.tpl | 1 + .../wirecardceecheckoutpage.php | 39 +++++++++++++++++-- 3 files changed, 52 insertions(+), 3 deletions(-) create mode 100644 wirecardceecheckoutpage/views/templates/hook/methods/eps.tpl create mode 100644 wirecardceecheckoutpage/views/templates/hook/methods/idl.tpl diff --git a/wirecardceecheckoutpage/views/templates/hook/methods/eps.tpl b/wirecardceecheckoutpage/views/templates/hook/methods/eps.tpl new file mode 100644 index 0000000..c7127ac --- /dev/null +++ b/wirecardceecheckoutpage/views/templates/hook/methods/eps.tpl @@ -0,0 +1,15 @@ +
+ +
+ + + +
+
+ +
+
diff --git a/wirecardceecheckoutpage/views/templates/hook/methods/idl.tpl b/wirecardceecheckoutpage/views/templates/hook/methods/idl.tpl new file mode 100644 index 0000000..ca0170a --- /dev/null +++ b/wirecardceecheckoutpage/views/templates/hook/methods/idl.tpl @@ -0,0 +1 @@ +{include 'module:wirecardceecheckoutpage/views/templates/hook/methods/eps.tpl'} \ No newline at end of file diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index 7638d38..943ebc9 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -638,11 +638,40 @@ public function hookPaymentOptions($params) unset($this->context->cookie->qpayRedirectUrl); $paymentTypes = $this->getEnabledPaymentTypes($params['cart']); + $logo = function ($payment_type) { + return ".." . Media::getMediaPath('/modules/wirecardceecheckoutpage/img/payment_types/' . strtolower($payment_type) . '.png'); + }; + foreach ($paymentTypes as $paymentType) { $payment = new PaymentOption(); - $payment->setLogo(Media::getMediaPath(dirname(__FILE__) . '/img/payment_types/' . strtolower($paymentType['value']) . '.png')) - ->setCallToActionText($this->l('Pay using') . ' ' . $this->l($paymentType['title'])) - ->setAction($this->context->link->getModuleLink($this->name, 'payment', array('paymentType' => $paymentType['value']), true)); + + $current_method = $paymentType['value']; + $payment->setLogo($logo(strtolower($current_method))) + ->setCallToActionText($this->l('Pay using') . ' ' . $this->l($paymentType['title'])); + + $action = $this->context->link->getModuleLink( + $this->name, + 'payment', + array('paymentType' => $current_method), + true); + $template = "module:wirecardceecheckoutpage/views/templates/hook/methods/" . strtolower($current_method) . ".tpl"; + $payment_class = new Wirecard_CEE_QPay_PaymentType($current_method); + + if ($this->context->smarty->templateExists($template)) { + $this->context->smarty->assign( + array( + "action" => $action, + "method" => $current_method, + "financialInstitutions" => $payment_class->getFinancialInstitutions(), + "submit_text" => $this->l('Pay using') . ' ' . $this->l($paymentType['title']) + ) + ); + + $payment->setBinary(true); + $payment->setForm($this->context->smarty->fetch($template)); + } else { + $payment->setAction($action); + } $result[] = $payment; } @@ -827,6 +856,10 @@ private function initiate($paymentType) array() ); + if( Tools::strlen(Tools::getValue('financialInstitution'))){ + $request->setFinancialInstitution(Tools::getValue('financialInstitution')); + } + if($paymentType == Wirecard_CEE_QPay_PaymentType::MASTERPASS){ $request->setShippingProfile('NO_SHIPPING'); } From ac802825958742616d865342026dbcf0a9836a29 Mon Sep 17 00:00:00 2001 From: jakubpolomsky Date: Fri, 16 Jun 2017 12:44:39 +0200 Subject: [PATCH 09/42] #6 update payment icons bmc, ccard, ccard-moto, eps, giropay, idl, masterpass, paypal, pbx --- .../payment_types/bancontact_mistercash.png | Bin 1644 -> 3277 bytes .../img/payment_types/ccard-moto.png | Bin 1401 -> 1237 bytes .../img/payment_types/ccard.png | Bin 1401 -> 1237 bytes .../img/payment_types/eps.png | Bin 1582 -> 4567 bytes .../img/payment_types/giropay.png | Bin 1582 -> 1067 bytes .../img/payment_types/idl.png | Bin 1582 -> 4046 bytes .../img/payment_types/masterpass.png | Bin 0 -> 4663 bytes .../img/payment_types/paypal.png | Bin 1262 -> 1462 bytes .../img/payment_types/pbx.png | Bin 1618 -> 1000 bytes 9 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 wirecardceecheckoutpage/img/payment_types/masterpass.png diff --git a/wirecardceecheckoutpage/img/payment_types/bancontact_mistercash.png b/wirecardceecheckoutpage/img/payment_types/bancontact_mistercash.png index be5e0c734d1778fb0c084c646ba09cb6a667daf0..af79cb25190241842c482abef956bf4d9358162b 100644 GIT binary patch literal 3277 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 LNkvXXu0mjf7ED@N literal 1644 zcmbVMeM}Q)7=KISBrx1`A?h^btjaQ!-d(@2l|pH+)haF6R;?eKmiB-Oy(`y~md;6? zx`0cZA#V_B%O%}FdRd10g5HWvkIbndFwEV{iGqsI8(A7-hefgE60~)-gQQq3A?Lv_e4E`SOTd&$ zu~bZ`#TvC*gySg!T&*Mo3A0oZiBKTILpEN770yx%69`NIkrEtNi&BKRKqXNLF||}G zQQ_(kR!g~93uPrkymrVtg2i8om8lrg!qSY1rgK9bke*Gmv@4r-A}XVpk0Xoil#O<~ zg5?>GmLM5>K55f1v;!H+ugv}e{sjD0aSvl{|0icCbOsGJ$A6k7bOk#wczoXaP8#a#e6+@!xBW@7T-@eBAe{GH?XrHY}p`>+YypPBoG70pWN-Nx>iv+YKY{;d8$ z_q$^@mPIZv|7Es z=vVm+9oYAon2TK67Zny8z4Jr=k9Bo7Cq<8+2sj7+28y;jH+%~_MuD_%jz%Ge`ndjS z3*rW9O{YFDo6^X=x)y-h1n1VRm9_bbA0opmF816n3^WN!h`Zy)r~(m1u{Gyx8!qb` zPRSK4PrB!AeSiPD1w_>b zQP`6D>2;G^k@A^f%I>XsU$kBs->_oTnn(;(woO{`(Dy7R`2W|c^+cs|OYAphamE&<7tK-yGu8H71$?6MuCYUkouM$Vb5RMTtPb zk2IKurh?UK6b&hYv}I|8O6Yc%9UpqPnNB~L)(vGo{>jbUxpU9tp8q}P+;is+ga{EL zM2HX}LIf0wUlh@Vu^3nmB!SgH9WV&IXA1qOuL#hDu@G1StN=F1QZ$3eeWuWVo9cn; z0c9gV1ZV`d0DsQ|F&CniZGt}lp7aa>nlPGymwp!GlmWHCO5kDO5un_q z_%FaIpbO|Qh2HH_?ga3VtSUX~&kqJJ4+0O$t}0qv&HPyUag?6(n6 z2OKLX0h%xr`3@Cm0A2xFT#8=@vT~`~1?)71e!377@O{(D$eou5)jh+h?@}e>M%Dyu zF9-peFq&jUehi4q*^SD`dv%6*a{<^b%LQP>6ndr*N+;X9q6gmJuqBa6zZ@StTc=

WdXNgSuX?uH4iD0bLiCDROQY;IE6ouqpy>@*c zm?{WX+U~1>i(Z*|Q|Q-h$xa+Vv8)L}HIW%1md%ijs?!o+4}>G8(69MwyK7k_vgtel z3p8O=nnLflyMW)20LVtwE178Qi_uv8%}g}*qwV=dXAJNahKouz@2zhwzNdSzw5ogH z*?;P;{_Ue`e21+|%e0A5^6bwg=WCaYctzQ}P7VG0hI8ZJ*>{A_kDXoj0&TW9H#Grk zdcQgCrP)p;i@6?AiRQ953YM2NVGIK$&Ri!lMP}%=;ugQl>jF&}<$ex=Gi|B!*c?Ox zzP8n04I%;dbU&#HBNiwEOrifRzdz(r8h9mIw$|~fZnc4Y>HZI0pwu(gomnGXwi8^@Pfmr#Hmg&xdJCqU-o zO}9$G2x2BUqXkrG!iaik{KF0xnMD%;LyjcEs~DZD3$*#fn%|v^kRq3+MxdRsqa&~3 qAE4C~`XNGu2oWMgh!7z{xW|8i;9l-^CC_&N0000C+an6?QA)&WCCo@HDDaC_EMn)G z8rH=!{`%)GvUvcgt2wtv@i-1qK9R?mxDFQKLl6x>UVbFR_=2p0RIxRjU`B5ZMp1zE+T_h#6h6OTlye8b^^8 z6(wj!SDo@WoQPGFSVV^rIX*&9B6=-GY6+9pv=`A3B!QC}oG|2&1f?@j1c|II6tYSF zYRY9RT;qb084V~(h{Ex3IE;mJF;S|)Nt4Nh6B=Bj$$=U4GZ#GqF~DK2ou6djKFz59@mPtthm@e-PllDcGrhk z+{Mabo#cb{sLo7)VebB&D6R;-p^7CA7KN#`iM~3X6%@P8jKUYp&-p0>VX^2;IvcGk zq-iZl7HCM?V$&FmR=qw~qa_nIHp0?Y+F&s1^bn~dNm^?$(bhsEX)+e(S}X?ZI@T`8 z3M2T~1TP19*RXNcf5uW)iDeW~a*JYZq63@(Q4!^U7(%QiI*dfhIKeN5<#>5kqqVUT z_dM$_ltdm`$uGriz;7V`EACaS|NrC+htA;f=J-pqB(7iw#*gc*4~6yNVFfrb5*&@o zDb4M0ta6=)-1LXhv4tP6H@37+Ui#wB-KFS-Ps6XaG`GHWva6?~x4-A(b3ff$yfPD; zotuCCbf?hRyu7^Z8xYJ8zD;ozl|b=t3q0QaW)%P`huv1-j>K-x%nIj``++mHCDhC; zFZX}2Wx+)Udv%TzSF^T{ALv$Dr;iiU>b#LTaB-|+DtQ;uz2{QLMB4<|GFANjjvw}e zpWoP5pR$xSngc344-Ckq-s=O|?7ie`W$)dYeAcn==++lOm#6dVz%R4eOWQHk;oaKt zjJDx-cMpGu0e+g?Rngs6`BYT3a}(N8`Q=&FZ+Yh)&5WJ$W)rQiWl#30++J-o5>WT6 zGEZ*J>Q|SieOB98+BY#YmV6`i_?1}G3;FM)FB;Dbl}~ogjc$&;yr6#Qm8X+F&(NdD zQ0xTg;vHam&+Ug@!C;2>?er&9Xus}0Z&$Y+#9B&|oHwR6FHWC1-<0z0*_p$G$NKt4 z+b1^dz5JL^GX9_(y?Rvr)hVp}2={yO$jGlqMUrpZH;u-$Yj+3VpURw{zgHP)d;UGMZufRx_~bOqIOYAphamE&<7tK-yGu8H71$?6MuCYUkouM$Vb5RMTtPb zk2IKurh?UK6b&hYv}I|8O6Yc%9UpqPnNB~L)(vGo{>jbUxpU9tp8q}P+;is+ga{EL zM2HX}LIf0wUlh@Vu^3nmB!SgH9WV&IXA1qOuL#hDu@G1StN=F1QZ$3eeWuWVo9cn; z0c9gV1ZV`d0DsQ|F&CniZGt}lp7aa>nlPGymwp!GlmWHCO5kDO5un_q z_%FaIpbO|Qh2HH_?ga3VtSUX~&kqJJ4+0O$t}0qv&HPyUag?6(n6 z2OKLX0h%xr`3@Cm0A2xFT#8=@vT~`~1?)71e!377@O{(D$eou5)jh+h?@}e>M%Dyu zF9-peFq&jUehi4q*^SD`dv%6*a{<^b%LQP>6ndr*N+;X9q6gmJuqBa6zZ@StTc=

WdXNgSuX?uH4iD0bLiCDROQY;IE6ouqpy>@*c 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 B-E;r| literal 1582 zcmbVLdr%a09RHp8zz0OaGzm_vOA;E~?wPfp}+54hqGj|;G9a@||tI&b&fUAzO7 zu8ffJF-+FrGY#=EPLehfO@yG~Bx936_5d+O@r61XX%Is8JK(547@O%gv-|sff4}eN z`}sc0(o&OxriD)f00fzmDGS_}_`bjZ_}^Xo&K&Qt6nZ)mg41O-j~V8~(L}+NVIJCr5po=JI(=~sYm1VF{l|@QwMA=z zi^VLg$ma_TtVd3y9}IK%WFns;^hUc>u*0Izt0IDiV;kPj!mLk;&B%xM7q>3PnO46Xj4HT|YYH)*^B1k{h z#EBBkF|4204tYnh#1pYvgTT@fFIahgmA?bh@_30C^LQ6xNLR@TB-75>c(>>)&q%Zs zE7;etwnTw9!QO-YXPfTW%r|s%hI;ScD|S3Qc3|*Y*Ugvl`x^^;D>e-L()OUL z;_m9~yZ7$zKU&k18Q*uJ##_G4y`jAO#;t~L&$j*CQT=6o*|t494^{us*MH{R4;L|ygR3R3#6MPSyI!X_{0VFoNSo`fb5isO0ar5IxB7q>yeO>Nhj-~ z!bL~Kl}GVxMN|Uvl5G2}s*BHWFS}YCb0cO#bJ(orMc}K?erz>0UJrk|2sCxS=|1MY z9aNs3ae6PP_-OK=2+l4niN2lh-L)~PW$h$n>-GzuAMUVjIDX|rO+g^Cb$RWK4Bh;$ z?;_F+#Yb8#E&7b6wKD6uDZ1kMvSo)}^ai#fq4JV5gCM)=(DjnMAz*cdwIt6=|F{9* z(KUKmH>*6(;dF?s6d);e%r5m!2KUulmuEEpUQsg0?*8~OVSAxjor z&FzZGoUWQYA(|qWhnBZRY|VSs6xb+u7iUzpFAD~$`Df1W_-S4H;rI2Rvt{oxaHRUz zc_{G)Laljf@U1^rM2dY0j^xQ;Xi?I`{U^?sz1Ark*jHIx|IBP}C5>f9Mv9%Xp0}Sn zfjt}kX?s?s?DVO==7`3?N1;0%52nr?*!19g@5R-jQ~GxucqI%3e^VOWm@}}jzIJ-= z(REv7v#*sfP1Q5k5B1C{a%6wqD=lS$X!n63v4#n`{2mz&Zl;|K07WUk8NiChy0!>h suH3A-?D)hPpiC|gY`v_(E?t^10|Waq!5&vv)r>cfSAhP0YF8G-kqsXYVfDe45<2^6&c(PsNlLZ8@{?z?G2Fg>%!&YzD@6vb0#f6{O7@==cPu zK&wXqS_tev61)j0#8?vK7tG-B>_!@hljQC0!qCAg>jC6&7I;J!Gca%qgD@k*tT_@u zLG}_)Usv{rYyw$3+Z}&jegq%ewLF)nhkea)UodFUn1_zIG(g_2d-B&`l?HCx4wK zef8Plm=)h982*iLpLsMrtXNBE>o4ON4KtaeGu9po-}vojjJ}+G*8LFo$y23Mr$*?X zTCr-=UbUd9!b@xRv#0jOS*-G27NvbnKZ&(<(G-(5q451KMa%E(x)xX=yiG@dt(E8V z+eZG-M`wFJAO4#BS!BxUx5}(v4MHxz{dDNf1jfMmj{`Js{de88X*myEkuM9+ZMwX_;+Up%D?g{|bLqw3&J?YgRg?YxPCCzJxha*ePg+-; zvM=R2-g3iOk>CB`g-kYUOFq_LHjkVe8?S$kxBL{J#Z@EOwq|)su(_HH%hgTiJQim3 z-nRN{Cbl%qBK4_dnxGZWQMDZLWsAjrthMF++oy5<)V=;D_XR&JuKZRGsFBHfB$h3c z^*}7UZsut_zwh_IKRx$1?2e-QmH!TZ16)K!0$JuKO>L21+Zxnb&9AUP>x1zVgEbBM xJ{PK36%>CYIem}gbQP8iOFEwa?M#3|{i~)Elj1)A2c{qf22WQ%mvv4FO#m#XW`_U( literal 1582 zcmbVLdr%a09RHp8zz0OaGzm_vOA;E~?wPfp}+54hqGj|;G9a@||tI&b&fUAzO7 zu8ffJF-+FrGY#=EPLehfO@yG~Bx936_5d+O@r61XX%Is8JK(547@O%gv-|sff4}eN z`}sc0(o&OxriD)f00fzmDGS_}_`bjZ_}^Xo&K&Qt6nZ)mg41O-j~V8~(L}+NVIJCr5po=JI(=~sYm1VF{l|@QwMA=z zi^VLg$ma_TtVd3y9}IK%WFns;^hUc>u*0Izt0IDiV;kPj!mLk;&B%xM7q>3PnO46Xj4HT|YYH)*^B1k{h z#EBBkF|4204tYnh#1pYvgTT@fFIahgmA?bh@_30C^LQ6xNLR@TB-75>c(>>)&q%Zs zE7;etwnTw9!QO-YXPfTW%r|s%hI;ScD|S3Qc3|*Y*Ugvl`x^^;D>e-L()OUL z;_m9~yZ7$zKU&k18Q*uJ##_G4y`jAO#;t~L&$j*CQT=6o*|t494^{us*MH{R4;L|ygR3R3#6MPSyI!X_{0VFoNSo`fb5isO0ar5IxB7q>yeO>Nhj-~ z!bL~Kl}GVxMN|Uvl5G2}s*BHWFS}YCb0cO#bJ(orMc}K?erz>0UJrk|2sCxS=|1MY z9aNs3ae6PP_-OK=2+l4niN2lh-L)~PW$h$n>-GzuAMUVjIDX|rO+g^Cb$RWK4Bh;$ z?;_F+#Yb8#E&7b6wKD6uDZ1kMvSo)}^ai#fq4JV5gCM)=(DjnMAz*cdwIt6=|F{9* z(KUKmH>*6(;dF?s6d);e%r5m!2KUulmuEEpUQsg0?*8~OVSAxjor z&FzZGoUWQYA(|qWhnBZRY|VSs6xb+u7iUzpFAD~$`Df1W_-S4H;rI2Rvt{oxaHRUz zc_{G)Laljf@U1^rM2dY0j^xQ;Xi?I`{U^?sz1Ark*jHIx|IBP}C5>f9Mv9%Xp0}Sn zfjt}kX?s?s?DVO==7`3?N1;0%52nr?*!19g@5R-jQ~GxucqI%3e^VOWm@}}jzIJ-= z(REv7v#*sfP1Q5k5B1C{a%6wqD=lS$X!n63v4#n`{2mz&Zl;|K07WUk8NiChy0!>h suH3A-?D)hPpiC|gY`v_(E?t^10|9nGP)i4R9BjQ&s}O?C@6MO=mbO-6+4E+q%}J2hON$Y546)^bfR`l2NTmKYBG7! ziME>2*lumRq&3SV(e%Uwji6ZsWfYAD1=pY=pe#aBvJ@pyb?e^KKMD#iyC!W1_@3wf zxaXXE&%JMb%lm!jo+2#EQS=efYPB$%eIN*~5`{uhtkr4@L{U8P#1rGbOHWU~8WtAT zw15A;MuWlV0)XYqSK#&6|M0!%C4C7bN+~FnKQ18z9LK@O$6F+XoYv{|r+J<`zIgGA zXXeeDTl7QB+owS43BVT6luD(*Fid4oP|%4fQ>Luhym`}E0NB5OKW5IH`Tap+7zPZ( z{AfXF(Wdqq)zvj>wHndU(I@B4n>%O0f(6&Uwv zQE>}(bv6_h7Q$+^qN>V*ii%29RNQKLC9o_j14@!an9aWM_V(U9VZ!(=+qZAO1^`7x z#Rv-v?Rj#R>To#dv17;Rm@#800Ln0|3@n!AD97>A zh!G<{q?D?ArN;dUr1o<9^l3VEY68`2brc{npm<(EhYShbyX3aklB5IW& zz}mHIVKf@Cdi9%VYH9)@1e8)(t=7jzkA8T2U0vNXiHS+BufFgMw7K=`f@QCkR9C?O>TU2MfY-AcVkKY(-t>C0KSGL2YUt9EBE8QG#Nyxl6Fd zjvb4D0Dl}h^aVsw1R811L&4W^@!tB|zJtk+f*^r-~|F^0ttG}^4e&WQ52Rhsu{Zxp8L;bOVM=T(}TFW5 b({I|}FQLg~wUJM`=II(+!y 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 V2imc-b1m@zwAFRhs$sS-{s-K2-xUA= literal 0 HcmV?d00001 diff --git a/wirecardceecheckoutpage/img/payment_types/paypal.png b/wirecardceecheckoutpage/img/payment_types/paypal.png index 883bfd0f9a00272507f68d8d0fcf4843a43b3052..faa0ec5ccc70f3cced74ca1e1fb509116b7e3621 100644 GIT binary patch literal 1462 zcmd6m`#aMM9LFb?yLm)7*;Nr8xfae)4w}1iFAq!Z3BzJ8ZOc%TTpqL|qm!hCGv(4b z61G+x8M>eh&82OK`bOloIqSbT@8@~HKhNv)D-a} zq=Kw86|XFYfIu?j)1Lk=D2vE|w%OqL+kJymHwQoW3fGG1okv~B-&TKo+Z2!Tgmc0# z#&>!6+(!4XQafL2HRA<_$+uxlHH-suD_f0i+>xb?==9p0lGYCPXvEV`$!yU-)2rmZ zg{pU7^p8iOtm2W@$$I6lq1V`m;2Tg13+04|r#8SYG7vUt`es<9dp3;R0rxF|Wwf9y zqV&zqqwFssk6l7URUxfYQRWwr$8iXo%ZRWt_@!EeOD@VX26=`8_b7k|-+~tP>s7pk z;h69+I`UW|;sgOor3T$Olcm4U4E=@8md?I0bxs! z-r@hCQ)cI-zW~YLeZBoaCxsuPf5HV1j5Fvu80snoMV#x|R1ipc-%rbcZqs$7OL@GT zmy7(&UUem7tD93-RzV=yW;bU?|JaYqRUMfVW-8=3w

C$=T>+xwKeBz22 zUT>>aD(4842z)H+|DXXk

t0BJQ+kMUS_pc^LotHkuGl%b?9nptoxWzSnZT$I)i; z=FRMNiTo%+a$e7K>`VxPbCkpXm(2Grv1`{1tDGu3!-J5X*S!PiSsO!)SL-$iHF2>! z{I{L-35p6aMIBPZnf=Jum9+Z_+vCPmeR_j-O~CW}4b?tok>PU9y+Vu#3l)&p&s-D%|{lB@WxIiyY`BFpy{sX(5orf-;N z)u35PSKHOKyCF?^TXZp8n-GY$Q>LWj*C&-7sLK3e@Ym>-@|c4kxWjENItEx1SbAqXviV+K`9yXXlnk{(T|2ti}nrf@vXzHxsnD zevR#i%34f3SLCa+Q+-H@JT2HC7?Y&7$HFwm2Xe?tAdl5=HZd<5A%&{hmL@p*<#30V z(bcCUOB$GPj~zjJ(W9Oj;qlgm2oJi(4pA~c1N0D2boQ2@2e`ZltZG;snQfx@_^Zs1 z^hsl4slECla~a6G&#Da)yq}6+1zVp5Gm;h1_gX}~KvH6+uI!O#{^*ttIo!i@W=0c)75j};CG%+l zOdj8NI)MYf0??j`v)sDihO{hBswwR&3eL*-4x1MdX@8L;`m$WSaKmuLcolxc0fF zadvyS8YhMrbXIA6qY&WA);yvGM9%FsT_jsixfX$Mbw!>O7Id&b`;p2$gB2lBQIfIw zrKpAb8ysUJ=ugeh@GC1y;Ww8#LgOOtG?xAk%01f+aS@!=llnIB7xoj literal 1262 zcmbVLduSX*7~duhNSZ=y!Kxrmx7C02_I0;+-A%5&$L=*Jy?9?6CA z?j|Uv3f8D#5XHXKS_!R`hA1`$MIuF0Z4jvs3aQvw10@jYL#d(u5oeQJR0tIu*q!-i ze!uVi_2-+nudThamLQ0=*(Rxg_eAjBQjPy_eza#6Z+9TMgj%dN( zVF4;yPuEwlkszwu^kNB>ayvxTGAJd$P`+VfHbFFQ^KC`#fC#k0cHNAVmp>UJfv&~L zoqUeT*=bnTn|dAC(%W2AdplG?Be!h@jlPH#7!WDIH#$vM^yB1$UJ;*zYnlWL5Y!PT z7o95Q@*r(F5bzWeQkf_Vq7jOXFhWGQA8-uI&@4wYu@K9Md`x6mu(U{Q&C%M#f|OaZ zg{3%IM#vUv+Vech3saWUPP2j_&2EJ9SgDJU1xMVzd%;^xaU)IFZ!;h~Y zJhWeW{@9bdzF&Q>y&>`5iyy@I#zkKxJ_2C;evv-xQUzw?^uhrI! z^wo7$t)F`uoc=J8cqOyyi`9pO$7edhW4o(1jG7yx!@nOnF)r86J)w?I4}Lb;ai(kC z>}})s4QD6X>(6d{WN+0E$A59`r--d*?tZ_1>b1ALiyl!^b71?bm#V&gC$Z)fb?s00 j!ocR=-njHk-(I4cX!5VxN9t~;a5O|#ZkC2pyPo|E!$QE( diff --git a/wirecardceecheckoutpage/img/payment_types/pbx.png b/wirecardceecheckoutpage/img/payment_types/pbx.png index 5dcc6fa6c19d2bc508112576d9b73f43377f040b..8d627ab4a796e75b8b4243b7da58d2f3d3d322d0 100644 GIT binary patch literal 1000 zcmV>P)*D_P@$PXp_rj?D&O`tF^8V6K^rU|O_~!3> zME~{K|Le2<--7nIn)~6@|L?&6=%@bGT>j#Y`OLTRkYWDIHtSs(|Ns9!MSPk70004W zQchCCH{77KmY&&{z*hZRA}Dqn(KDLAPj)fverwh)#{vQD}DdBT&uls2@o!I-P!WP z69crL0YU%?i6~7&7A?&~7K``Z43aI{fs1xyiC}!|rBdyD6|mq%Ze*ND_Dip(e3@J? zR5CY2CfRMek8E0$+|7;c8`DlC#t-3Js~0f{_W%kC5%SLi_@cV5Rj%RVZsWu#_F*CR zzv9L)C&DO>h)j>jB8Eh_crpQWIjq35?v6P6Jlwc(GcQ20Fhu3&t^Aj5GxhR z8Rx_A)fSz#6pPg=`ciQKpbiwUX6G#|?Vl5&O>P2#*3u1#rOeBiR zgjj_R#ff0+JQl%2M`Se>A@PT=otHUrJ!4QmEbuh#TK67nMj*h>d!|nZ?<= zIE_#3BQ;fW#hP$>7LU;daRnEY(4rX6jn>QPpO;_oSE6Ab+${ZnZT0dIyQF`PhkgT8 WY*Jx5R%^`w0000WQL=$37shjUEj9<`K++^x-GtSK^iV=lOqE3<#A@fyyu#KTcpb}=0J=_(j+aE@g{gV4Vzn|~t z`@De3`1<&4;K`;Xr2UpE+^x`eF|tuFD~q(*9Zg- ziSWe=XxOMcg9+5I91TigG~I?~U|@y>#w4g*BA*3{Q4B>eF@nm{F%*}|a1;Ya1|+a? zR3UCAvPZatlLE5yyc@7iajukYO&9N?UD89Jk5&SajNq!Gwss9r*L@)-47RP^zC3YoLV08Pi^o7I2=Ajv( zV>qETrgiMr3vI=j^cL-w>b-rzjRVb1U5cr{AFR1K5B;kze80Kr4rK_Jm!55D8@$xo zw=EDkS^H;aM{im2ZL89|v2yTI+pk@>x|c8R-xIuT&GJ`nJ5YBbux)2|Z}^LEYwtw{ zS}$Iy`tm@-ndZ>-jw20CooF)S4?GweCzDPM2<+2&voUx0<_R;fw{%TC0Ek+12$jWm z zHdfVz%$wt`9e34EzOe~-ag@6Uo$62dJ91CqJ9VKtUgEUuE(=cCTzlf$EFi!0>-OXX z`(U_Tq2Jfu9#_4;dTUD&UWzxCEG*l%qFp=S*If`f4-y}KQ|>DSmeg-4j??wu-C>HK zo0z%_OcbN$8^ENj@U(=9ZKe<6U?3^6WBurf1=}_2;?6$TJMPV|-bg3#3KFoBX~fmH zXFh9KI~mBUtVp14A3UUIM9+Zn=hR!*+20zw0a%(A`F?vyv@n<-4@^(_B^jL ziW%cH3wAhL(^Nk#pJCiI>8Z-oXZL-aJJnv3q7GZnWUIbKt>Oc`i~>UXuqRrepNio9ALyg4CdlzY#m^GC+#l^+%D zKfMT8HNz{?K`oJ>=;gZ$R$V^%^yIA1&oNW{B@g`XHtrN<>X9=&p6hj8_qB8HU;b{1 z-zVuQX5>Z$d&``smEqqOiC0HLO$k^3m^ql757fQ% V%9TF*B4hL~pQAMr2h{oR{R89Zg315@ From 6d3a3080a413c2cbf5af497616db4b3b33ab0d6d Mon Sep 17 00:00:00 2001 From: jakubpolomsky Date: Mon, 19 Jun 2017 08:54:28 +0200 Subject: [PATCH 10/42] #6 change order of payment methods, allow payment only when conditions are checked --- wirecardceecheckoutpage/scripts/script.js | 17 +++++++++++++++++ .../views/templates/hook/methods/eps.tpl | 2 +- .../wirecardceecheckoutpage.php | 12 ++++++++++-- 3 files changed, 28 insertions(+), 3 deletions(-) create mode 100644 wirecardceecheckoutpage/scripts/script.js diff --git a/wirecardceecheckoutpage/scripts/script.js b/wirecardceecheckoutpage/scripts/script.js new file mode 100644 index 0000000..53296cb --- /dev/null +++ b/wirecardceecheckoutpage/scripts/script.js @@ -0,0 +1,17 @@ +$(document).ready(function(){ + checkConditions(); + + function checkConditions() { + $("#conditions-to-approve input[type=checkbox]").each(function(){ + $(this).on("change",function(){ + if($(this).is(":checked")) { + $(".js-payment-option-form:visible button:visible").prop("disabled",false); + } + else { + $(".js-payment-option-form:visible button:visible").prop("disabled",true); + return false; + } + }); + }); + } +}); \ No newline at end of file diff --git a/wirecardceecheckoutpage/views/templates/hook/methods/eps.tpl b/wirecardceecheckoutpage/views/templates/hook/methods/eps.tpl index c7127ac..61aeabc 100644 --- a/wirecardceecheckoutpage/views/templates/hook/methods/eps.tpl +++ b/wirecardceecheckoutpage/views/templates/hook/methods/eps.tpl @@ -10,6 +10,6 @@

- +
diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index 943ebc9..20ee8d6 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -210,6 +210,14 @@ public function hookActionFrontControllerSetMedia($params){ 'priority' => 200, ] ); + $this->context->controller->registerJavascript( + 'module-' . $this->name . '-script', + 'modules/' . $this->name . '/scripts/script.js', + [ + 'media' => 'all', + 'priority' => 200, + ] + ); } } @@ -630,7 +638,7 @@ public function getConfigFieldsValues() public function hookPaymentOptions($params) { if (!$this->active) { - return; + return false; } $result = array(); @@ -1105,7 +1113,7 @@ private function getAllConfigurationParameter() private function getPaymentTypes() { - return array(self::WCP_PT_CCARD, self::WCP_PT_CCARD_MOTO, self::WCP_PT_MAESTRO, self::WCP_PT_MASTERPASS, self::WCP_PT_EPS, + return array(self::WCP_PT_CCARD, self::WCP_PT_MASTERPASS, self::WCP_PT_CCARD_MOTO, self::WCP_PT_MAESTRO, self::WCP_PT_EPS, self::WCP_PT_IDL, self::WCP_PT_GIROPAY, self::WCP_PT_TATRAPAY, self::WCP_PT_SOFORTUEBERWEISUNG, self::WCP_PT_PBX, self::WCP_PT_QUICK, self::WCP_PT_PAYPAL, self::WCP_PT_EPAY_BG, self::WCP_PT_SEPA_DD, self::WCP_PT_TRUSTPAY, self::WCP_PT_INVOICE, self::WCP_PT_INSTALLMENT, self::WCP_PT_BANCONTACT, From 24fcfcfbe3b7da77d92ec69775cb0eea06466e8a Mon Sep 17 00:00:00 2001 From: jakubpolomsky Date: Mon, 19 Jun 2017 09:18:55 +0200 Subject: [PATCH 11/42] #6 update payment icons --- .../img/payment_types/ekonto.png | Bin 1644 -> 5968 bytes .../img/payment_types/epay-bg.png | Bin 1262 -> 0 bytes .../img/payment_types/epay_bg.png | Bin 0 -> 5001 bytes .../img/payment_types/maestro.png | Bin 1401 -> 1237 bytes .../img/payment_types/moneta.png | Bin 1644 -> 1329 bytes .../img/payment_types/mpass.png | Bin 1262 -> 0 bytes .../img/payment_types/poli.png | Bin 1644 -> 4176 bytes .../img/payment_types/przelewy24.png | Bin 1644 -> 6044 bytes .../img/payment_types/psc.png | Bin 1401 -> 6101 bytes .../img/payment_types/sepa-dd.png | Bin 1556 -> 3976 bytes .../img/payment_types/skrilldirect.png | Bin 1582 -> 0 bytes .../img/payment_types/skrillwallet.png | Bin 1262 -> 4055 bytes .../img/payment_types/sofortueberweisung.png | Bin 1582 -> 7135 bytes .../img/payment_types/tatrapay.png | Bin 1582 -> 10284 bytes .../img/payment_types/trustly.png | Bin 1644 -> 4227 bytes .../img/payment_types/trustpay.png | Bin 1582 -> 6396 bytes .../img/payment_types/voucher.png | Bin 1803 -> 4342 bytes .../wirecardceecheckoutpage.php | 2 +- 18 files changed, 1 insertion(+), 1 deletion(-) delete mode 100644 wirecardceecheckoutpage/img/payment_types/epay-bg.png create mode 100644 wirecardceecheckoutpage/img/payment_types/epay_bg.png delete mode 100644 wirecardceecheckoutpage/img/payment_types/mpass.png delete mode 100644 wirecardceecheckoutpage/img/payment_types/skrilldirect.png diff --git a/wirecardceecheckoutpage/img/payment_types/ekonto.png b/wirecardceecheckoutpage/img/payment_types/ekonto.png index be5e0c734d1778fb0c084c646ba09cb6a667daf0..e173453c32ef21fe43cdbdfdc5d5e42cb6a8add8 100644 GIT binary patch delta 5370 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 diff --git a/wirecardceecheckoutpage/img/payment_types/epay-bg.png b/wirecardceecheckoutpage/img/payment_types/epay-bg.png deleted file mode 100644 index 883bfd0f9a00272507f68d8d0fcf4843a43b3052..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1262 zcmbVLduSX*7~duhNSZ=y!Kxrmx7C02_I0;+-A%5&$L=*Jy?9?6CA z?j|Uv3f8D#5XHXKS_!R`hA1`$MIuF0Z4jvs3aQvw10@jYL#d(u5oeQJR0tIu*q!-i ze!uVi_2-+nudThamLQ0=*(Rxg_eAjBQjPy_eza#6Z+9TMgj%dN( zVF4;yPuEwlkszwu^kNB>ayvxTGAJd$P`+VfHbFFQ^KC`#fC#k0cHNAVmp>UJfv&~L zoqUeT*=bnTn|dAC(%W2AdplG?Be!h@jlPH#7!WDIH#$vM^yB1$UJ;*zYnlWL5Y!PT z7o95Q@*r(F5bzWeQkf_Vq7jOXFhWGQA8-uI&@4wYu@K9Md`x6mu(U{Q&C%M#f|OaZ zg{3%IM#vUv+Vech3saWUPP2j_&2EJ9SgDJU1xMVzd%;^xaU)IFZ!;h~Y zJhWeW{@9bdzF&Q>y&>`5iyy@I#zkKxJ_2C;evv-xQUzw?^uhrI! z^wo7$t)F`uoc=J8cqOyyi`9pO$7edhW4o(1jG7yx!@nOnF)r86J)w?I4}Lb;ai(kC z>}})s4QD6X>(6d{WN+0E$A59`r--d*?tZ_1>b1ALiyl!^b71?bm#V&gC$Z)fb?s00 j!ocR=-njHk-(I4cX!5VxN9t~;a5O|#ZkC2pyPo|E!$QE( diff --git a/wirecardceecheckoutpage/img/payment_types/epay_bg.png b/wirecardceecheckoutpage/img/payment_types/epay_bg.png new file mode 100644 index 0000000000000000000000000000000000000000..86d158bf1ca105ce34344276f14da89d049ebfce GIT binary patch literal 5001 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 Tkr)T400000NkvXXu0mjfNqdCC literal 0 HcmV?d00001 diff --git a/wirecardceecheckoutpage/img/payment_types/maestro.png b/wirecardceecheckoutpage/img/payment_types/maestro.png index 3133fd0c130e6a8d3803c05bd7821ec3789760e4..cc93ae355114be2e4f5b97f78debbc106b19fe1f 100644 GIT binary patch delta 1228 zcmV;-1T*{j3e^da8Gi-<0063Kaozv`00v@9M??Vs0RI60puMM)00009a7bBm000XU z000XU0RWnu7ytkO2XskIMF-&q5C|C|7w;%W000DHNklOYAphamE&<7tK-yGu8H71$?6MuCYUkouM$Vb5RMTtPb zk2IKurh?UK6b&hYv}I|8O6Yc%9UpqPnNB~L)(vGo{>jbUxpU9tp8q}P+;is+ga{EL zM2HX}LIf0wUlh@Vu^3nmB!SgH9WV&IXA1qOuL#hDu@G1StN=F1QZ$3eeWuWVo9cn; z0c9gV1ZV`d0DsQ|F&CniZGt}lp7aa>nlPGymwp!GlmWHCO5kDO5un_q z_%FaIpbO|Qh2HH_?ga3VtSUX~&kqJJ4+0O$t}0qv&HPyUag?6(n6 z2OKLX0h%xr`3@Cm0A2xFT#8=@vT~`~1?)71e!377@O{(D$eou5)jh+h?@}e>M%Dyu zF9-peFq&jUehi4q*^SD`dv%6*a{<^b%LQP>6ndr*N+;X9q6gmJuqBa6zZ@StTc=

WdXNgSuX?uH4iD0bLiCDROQY;IE6ouqpy>@*c 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 literal 1644 zcmbVMeM}Q)7=KISBrx1`A?h^btjaQ!-d(@2l|pH+)haF6R;?eKmiB-Oy(`y~md;6? zx`0cZA#V_B%O%}FdRd10g5HWvkIbndFwEV{iGqsI8(A7-hefgE60~)-gQQq3A?Lv_e4E`SOTd&$ zu~bZ`#TvC*gySg!T&*Mo3A0oZiBKTILpEN770yx%69`NIkrEtNi&BKRKqXNLF||}G zQQ_(kR!g~93uPrkymrVtg2i8om8lrg!qSY1rgK9bke*Gmv@4r-A}XVpk0Xoil#O<~ zg5?>GmLM5>K55f1v;!H+ugv}e{sjD0aSvl{|0icCbOsGJ$A6k7bOk#wczoXaP8#a#e6+@!xBW@7T-@eBAe{GH?XrHY}p`>+YypPBoG70pWN-Nx>iv+YKY{;d8$ z_q$^@mPIZv|7Es z=vVm+9oYAon2TK67Zny8z4Jr=k9Bo7Cq<8+2sj7+28y;jH+%~_MuD_%jz%Ge`ndjS z3*rW9O{YFDo6^X=x)y-h1n1VRm9_bbA0opmF816n3^WN!h`Zy)r~(m1u{Gyx8!qb` zPRSK4PrB!AeSiPD1w_>b zQP`6D>2;G^k@A^f%I>XsU$kBs->_oTnn(;(woO{`(Dy7R`2W|c^+cs|?6CA z?j|Uv3f8D#5XHXKS_!R`hA1`$MIuF0Z4jvs3aQvw10@jYL#d(u5oeQJR0tIu*q!-i ze!uVi_2-+nudThamLQ0=*(Rxg_eAjBQjPy_eza#6Z+9TMgj%dN( zVF4;yPuEwlkszwu^kNB>ayvxTGAJd$P`+VfHbFFQ^KC`#fC#k0cHNAVmp>UJfv&~L zoqUeT*=bnTn|dAC(%W2AdplG?Be!h@jlPH#7!WDIH#$vM^yB1$UJ;*zYnlWL5Y!PT z7o95Q@*r(F5bzWeQkf_Vq7jOXFhWGQA8-uI&@4wYu@K9Md`x6mu(U{Q&C%M#f|OaZ zg{3%IM#vUv+Vech3saWUPP2j_&2EJ9SgDJU1xMVzd%;^xaU)IFZ!;h~Y zJhWeW{@9bdzF&Q>y&>`5iyy@I#zkKxJ_2C;evv-xQUzw?^uhrI! z^wo7$t)F`uoc=J8cqOyyi`9pO$7edhW4o(1jG7yx!@nOnF)r86J)w?I4}Lb;ai(kC z>}})s4QD6X>(6d{WN+0E$A59`r--d*?tZ_1>b1ALiyl!^b71?bm#V&gC$Z)fb?s00 j!ocR=-njHk-(I4cX!5VxN9t~;a5O|#ZkC2pyPo|E!$QE( diff --git a/wirecardceecheckoutpage/img/payment_types/poli.png b/wirecardceecheckoutpage/img/payment_types/poli.png index be5e0c734d1778fb0c084c646ba09cb6a667daf0..36ae7c115a1aa7a1eb032247e51c4d8253bfa6bc 100644 GIT binary patch delta 3591 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 delta 1035 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 ZJv+2IT;NL^V6S*d6f{y(LUKh6LE delta 1012 zcmbQE|At4gGr-TCmrII^fq{Y7)59eQNIQTq2Q!eIyS?$vL`4n8w25AQN(Q>g24;o| zW+r-uCI*%!mO2VX28IUuhDQ1Z=DLOkR;K0~f2lCWm>W1bnOd5Q~4UL@5oQ(}!EiKKQ4P7VKG07-E6&d1Gw2MiFC)iZaP$4`sFD1Xcc=9_Y0|j$K z{LY$e$1I~j$nBG>n4Ri>Roh$#hE0BePl)Tb{YU=)|Nkb%w_(DJx9>lkIDh%l^;_S* z|0wU6aQptl&KdKcJb$@#!`5{>_CB{&{CWDw*Nw|&uUPlKF8f1w)&AqBKh5a;zHjT7 zCDZ?Y`taxJ!%x#Ye%-kAZ{km~^(t_nr4TSOHt*xqODiGvfzy5pj zS;iKx({CDny8ZWE^U$cuXXBNxtoOtjE-{|ra$qQUy{90u{uE;;Z$Z75Q|teu_5GKv zJp>KeEBG2t#lJb?zPHHxOvFou9~BHyc3GkhCnFM=WfroX(q^#T{>Grr;Xov#N|=Me zJcb29%7&YmBxe4N_-VZIvXkY5`tu*;jy(^q@H^(W;)5n%>pbq5qY-@}>$RRA4pj?g zoV4=c=MB6D^IqQ+&1iUOvr;08QKsxN@DwpCB=@=bq}~;6@MU;aR-cul!|v+Z+;P!X+m~U{6jNq}D~sxR znbbsQ*B;n%;=~34-4ObcmBD}24qk-~KbQ}w1Zw>{5^`wTJjL_O zH|iJ|tX&xI-c2}C=CGNYW98XTFY4c1GMeP_K#0%z4OfTS{^KbvSN%>OvUSk9Gqu6y z{yqDgn5bDfJM(656h09BeumIzwJc@_xwAE~xwdl|yzQP;J&s%680fOG#e^yHlDEEu8cCy7=jM)*5aDhILP+<6k%Yl>;Ui22WQ%mvv4FO#slixl{lE diff --git a/wirecardceecheckoutpage/img/payment_types/psc.png b/wirecardceecheckoutpage/img/payment_types/psc.png index 3133fd0c130e6a8d3803c05bd7821ec3789760e4..09feb36ee935f6b36ba6c79fb80c825f46ceeced 100644 GIT binary patch delta 5523 zcmZ`-Wjx&h_rI8~tC?opVd~<#n7BG7W~Sq6X1WK-S1foq|GF0OfmI^w zQw+95)p#}-uce?6oJCZOPf$b*4i$dJ0u>O1@e7FY3kvfJ2#O1c)n4OaBq?H2vdAMu zMW7-IvQS|~Q9(fkQMjC-EJ9XTP)t!s2mx1sCi!79{QnZ-e=ap)B8`Q_M8#lYLShO~ zG1-4e!m=Xr0*Zogd8hy!4uvTq*jU^>w5@H#t(+}A9j%=_ROBVud>mc)tn97C|L+#@ zziyM714E+YtO`)LM+u5f1x{&3kZ zr_ueWg1;BCOPIQj(~_;>`?Fxrn^t=8fiYfX0|z4w3pv)xV?k-mc4gHqkN?=Rj|Q#A zVF@TYk$w`;ck*><<~41q2pDOb!8eX}%_63_U|!&+^PlI^PV$Hs%CKa#ome-Q4uodb z8=1V&P*j|nl78o3Z8zD)9Aa~{Tp%JAx%)8Pa`htHzGZO;OcK#wSMcL?W=V-8o>@JD z(36iELT~0+Ls~kCyPShX7;Ds|0jU8KB>~!5eq#>KTr_v{hQ`IS1WVxf8QaqRv`Rx~ z39o0__V#&8Iq&S<&+`G&ZoD2cVf*#un6bHNcdz8YS0(k_Pbh=Q^2jTNV>aPcB!(z& zF2~xni`)C*3H(@d>*Js60c*t-9F)}P#ZKySQ=dZveq>?KdnJ-(ipGZ#1_LK2GT;5(m(zdAkg{)ZO`5f(_g$>M>nvIwFEfa@ zlq*gqxg-;i8zoZ^VsJIVmF%~(WqaxE+G?8FO&7~m;+Q*H$1E0zi>iU|R=-9)6^o6H znTs3^uxqy3S_rjDZzZCL`2yUR%Oy*@|D1>;+;np(S0I`QpEDl>()LZ4e!W^f0t-fGFcQH4yYs|;c8gr9 zCP^Lh^y|G|y$5cZ#B}V#(N^Byef5RgG~SQs8947+YU~%kjX2JDPycenn*>!2X2wf0*|&Ua-+O?3>zmJ?83sdvimCw;ZmQ!gI{ zi(6{yL|3D*xP#=j)f@OOcb=P&T22xTp zsvLh(6RDY8;Ey9A7p|%-*`L8nrvA$2)J4}+YlDw2(tD;_A1F~n2!j(IY;((h)U2i%qJVRx-{5SpdFIuPo}r^b=WJ%3TwicE@j&;t zuM6UJEkn>ilbl^|JH8c=tKGPaKkc)}!Z1N~lkHXNSgPp5vM!7uk(xx6VHhj=7Oi{{ z2}qb;)`YnMSfggOz0a2EVASt&Wo#bdM8gRuu;&QuUOy4*(pdCYHG-Vxh}vawzHl3# zFUl9BwjVptO*dDg#X;R7 z$CmD^{UiNxsjl<{hq_u3dh^vKJR?-f?w3Ay1^wx+z0x#KsYij#7qNdh?E6l0oO~8> zx)e76^12|GX{|(US^=Jzj)1yAbh3x16uiWN1B8Sd(_y~ETR^m@0}vYlf0hXs2;ty9~AhG(gcGwPc!+*^tgPoIQl^CAutDF-*Ax{uEr2?KT|!Ge}4YdH%R`8W8fezkEY zD~dh_`I3fwt~AQ4VjCm8b75=bd3qOr5uA}RToMa2{zSJwP9PAnK{}|`y2)K>wTkMF zG0mrE2Z3~Jj8?7dy)A2@PGou>b2@-k8;Sbi&W+nKV|!ep{2M_DDo;fvRF;Xzg7(Jh zoWxd2#qC{_<^S29S z`gm}+U$w7=V!%`5-v!9jPk#R8z=O>hAEgdO@EFXQi5!Lw@O*kn&}hx$JuPK)mAudA@tkAytK!2r#)0;lp*wPzZNd=%(h z7+JLY&BziHzmu>npjR?cDY9U_&scWa61iwELpyRYzLIwE#d7bcrCnNs%jt3Em!;C= z1giVPVIq0A`hKxZoT12;?_J04A%5CY{BL}BXa4Y7vhC<>#L6*Wh$?bbA%dSwylIgL zrNF4r4y#!^Fa)+8Q5DOm(@&XV`9Rog3U}xN>qUy3-nxJoEhctRfC*Sgh(*wJ!3<6C zUM`^*Yhk4U*A+`uq9j7?;?gz@APnBTwZFPA zQjGz1!{i{!xFX3btxM-7L)t16&KJW1-%4{3eD@(0*!~8B+Z~1ALfJJOZyN1&XhF$A zmr=^?mVzkk3S2v*sR4?M3Yfb3n4AgE8{rRj!eS~pB4is{ty=Kf7RamV%$?0)K41MM z3tMA@4+-__eLzd)YR+I19yOT`U6_okynNvov z{z4lGfAkJzbc(P6l+3=s>)0y-DVY;Boxrs@JwW9RY3HO#^y(|vuaKj<=31T*nb;ru zmYMx!#2#8;H8z720bq6iP#RRJHI-sow(|-Dc%E2MeNp}1%;x39-7;nPgi|8d28+4@ z!{;lgmYXM;@dHU*po87p!OI?T>G=#!DpAAVeOB{o(!fdHD`-yNfsA92Z)44o)YYiT znZb7)|73w*;)dov3=4izod|5?E;uhyjvy39-)q56PPqrNJH^Y*e$2{yS5)JRGq3gz zhzMCb!0P=l#>kKYXsYg;(i*v&eOBBTddxR=;RXgAg4^hYLOI)3HD3LwZ0cUDWsPfR zt+9G%#sJZToL8Ueo@LMA?Qe*B4LUKVjXYm8&loy4&j?V4a4R%K`{U>4d8-6HqNotiOyIc4)Ray;j1 z?)G>_m!ZthhbN*@&|fytwHCaxk^Xpdk>aXeDY5jY z9VFP>%A;?CL-Vv!pShG$8aNoy10z_>7OrI;P%}M6rIKfumToopgJ&DgCe5X*W6G+e zD$}bVuJq*;f+ByYqJDtBmSOa2Wp(p(5YCEfqRLtE_;5K+7 zpFkyO$EIHBmCuLuIYl+@eNm&9*hBboerlp_#1HX0j6BHaEk*YTU{W1@>^R<=P^+4l z_~0iK_C;&(uxz}T+F`mejGxKHpTWc3Cx7nwpjj))MYgR5E}>8!`OnSzpT=rMS#AV+ zPjrZNt93x4c1->+Oj zwWFSvPQJd&rt$b-tvE!0-`|5~ZuO#LB$3Md0Q{MS*<(3QI9E@R<;hp_ z#D_Wd^r*vB2wQJqJxLbnW=X2{D4{oGho6zIS@!Cp0f_yjUcL7QDw^w*UQs{E8p|K> zA=NN_vi8&Du==Z4wsJ1E;Ai#&-lfHozfm1j%kg^6>l!oJub-Yo<7&waqHV+l#jg}R zSXXq&KblJBuN%4)kzV<46fKR-Oz-k8n_YbP$f-8$X}O0Yorw58e73dF7dIK$=Az$K zv+ssmd;>o>V z(@tlZ1?p2Nguj?LCRj#JVm;^6->xM8s&}6*&4D3wpO#8WY!71y9CuMs*V4tV>)+qZ z3EFP3J;7r$Ahk5gY#nOgt`5>Uo!=R3<7OvDa?)Zosb8 zL=ps=ae&y*;eCJ>pfI)%u9cMe`+55J?j#A*_1ufUmjqi25OXTWdJjZU^le$==^#P? zBn~i541y7Hnqeg|bK`l4>Bpbyd$)VB4!@>9CTg;iKMEH8Bm7h^E;vk8x>Q7y2wa2t zXEWt-V*_=_n1ytZw#l1XA}7I_M1knq7H`u}ee^O?DFaXCvthbH(cd8svGw*7eT6BT zd?0GOTU}|GD*ycA)|dt-b}_rF^qm55sl>_cg|DalEhu0*uNn&!`-_OLD5)^?L!7D( z!y`!``%y3w{r6wy68y_4u6Y0#RZUA?3NKB)Uh4?+9kVuWYo87^aphjZD~Byu@@kZH z{$fN@NG^1qH|;0XBRT6OD7r38G)(ZE`Xp-!67NO}Sn(|g=FLT`H<)mK`={w@uC~OX;`gmP^3Z29Yxk=?WOkzLNsT7pEvcx|Px!1#o2aaJl$NbCQ^jr}x-uzKJ zt?^ekPC<`Ol5ws$NUM#s)?WZDD%0%NbM5zs6aNKitB{=pbLHhav5u*?0j!9XQ4Com z2jW!e4sRz2Zv&h#_ckl*H|C>Kz0k?4<1{Jar^mwdo^^A=F@N9oM5$zb6;eTG4Ax8d z2ocE7S@Me*ITN1unkF-nkR>+CZOLk=hWgz+sG~oCut2S(PF-qOB#qnua#oOvf`)vR HEHdOjw4{b< delta 801 zcmcbr|C39xGr-TCmrII^fq{Y7)59eQNIQTq2Q!eIyS?$vL`4n8w25AQN(Q>g24;o| zW+r-uCI*%!mO2VX28IUuhDQ1Z=DLOkR;K0~e{nF{_!niSXXYj5xa237=BDPAc)Hjs zRpb`vrDUd9nHxAcnOd5}FwTY2jw<_r1AIbUx9vajC)oH2j)igimjY+biw@7wnuE?vKM`~Jg83zp|KbpHSUKY3@KEl|5)NswPK zkc$EsRM*Z-VqjqO^>lFzskrs#`t7{K3Ooz}91{vU6aW9;x|#b)P`zvR22We(A9}#~8Rz`9GC-X2es63lreJgV$ z*O{D#ur0^-9ASCIG5yl5#v1!&ydNwU?}KTWwF6#oD8oE(n<^DeSp5i(y5s zFT)kBPvSw@*+K~mc{Lf8wwiJ#tXS*GaBD&sQ^2cJ>>sWyKHSLqVCD7d-P5*gIW*Vf z7@N*TmAv4i!o~X^^)O$Xrx)3j`N#jjfv*ZNOv!@x8Z5Y8eBZt4l=8!eKjSJI;u-d_ bN-)^gf7-D8_^t)OfM@V@^>bP0l+XkKoB})Y diff --git a/wirecardceecheckoutpage/img/payment_types/sepa-dd.png b/wirecardceecheckoutpage/img/payment_types/sepa-dd.png index 08c38c897f7533877b866cccebd48d11b4325068..e55d4ad3ea697c98e1dd626b883e5b3d6fc0b4e5 100644 GIT binary patch delta 3362 zcmZ{nX*ARi`^IN%W1H+`-v-GxGsZCXF=mjZ6cHK>W8Z$s+VVw2wq#$zFIi$5CHpSB zjBF((OG0HEB82$&Kj%5;dG)-w?(5CrI2t0S`Cg-L!eaP2yHl~ z<`4#ksgp2hIKo|B1?fg2sh}|^4Hc3m2Bo47*F=&u5M+$ImR5#7gP0T&L(o9Mu>>TF zfI%Seniw1$jnlvz8R6B@1Y;aLBl5o?{QnF!Fu=HR|9^?5)Hyrv0QbPKV8x6T2DlSJ z9g9`h(8Lh5jM0DBqqVRoO#)m)9c!eHM{1%8GE%`eFOxmA-2>f1{K)|~&5ZSA!u^9( z-M!tl|HESc7n^Z|(FjO4tmy=SI9{3=V{O7et&4cu@O!@UY{Fugc?5c;?#mKki4fwm zKon85k8xLc^xAcSJGxihve(JFCGv@hIugAzDcgo4lh~BRM0PM&8~4)~cGmMU@tdV{%$tu^-y$3R2^aCJX5HF5rOZAZ)_TXG- zxX{+Qr?v`kC^(BCyp+ZNdE|G*>C{!`A{9&X4U3fX)H&N+LBXtoZ@MZkJ99EOLSdo7 zOJr>4uPsjMH?Oj&K+qMC8z_u%o(?<6XBuT>8T-tMS~0ghpODL=D+|g2=c5cQ;z1Q= zNXLSRzV*!cV;uzzFpPe{ zAIxx!ax;3l8=jsCVcU1)^>cGE;IvV|;l9PSKtfGtshd0>Mn64&=d$P>K^<-&(mUz# zvC_c{^cHz;)o$OefUf=EA{XoN8{iFS={WP@ydVV*u#nJOXM7n5_oAmRoc*3^a}V(( z_)p9oRY@^=*5^mgMc3V*>J*=B&o+_;EAh)7FZkIDE88P#3R*YTBp5$SOe+d#_fP5% ztj}OgJZ;wa38K7=J9*_`$fp_~VjiH!lmutLWYoktDLO_2$-HNnQDTt=Uo<8 zge7FsP*HHl;?uWZ>kl{VOxZp-mSmjSy6ArF+`W+16{{#7ssqwV+Wi6Rdu`YV$sf{x zpmC>2Xxg^AqiVuf4(h~ON9j9+5nkLb9E2wUMfcy%7C)lDq+F;_o(Y}-L~ZVjgYcc_Kax3mbn(JaPZM=NdDNHp=W3IyxIfoF8?$_wERzXzL zVnI@@eEbM!-t3>Tpg+JCOK$y#`~D9d?z(hH$N#K>I`W2ad`qc?tI|hRV=u_Q-xUYm z4J2d^7)tK)qs?}G&G#Dgd~to!iGo8{E>)K@f0UDVQeqRKrbm=WYBJk z6#jtBkWH_hwQr=h?$nOKPbYz%-4we%N~-=)V12tjqr1RIqF<(cbC*lDMN%VjZ%=se zTvi~z+@}(=Yp{1tv6WGtzE&gm!F#jp$()!{vhae_%fYBh$!8Do|I8&OxGChVfQ7i1 zEU|ga+a7X_cahyG0>>tEnu&EstoDn^8f2DiVotswA%91o2K!~XmZ7!h7dPN{Z`3^R-g5^p6SgI%R~q$kM_*PK9vtXA$%XEe!|kLm&)j%< z%jdvr)NwNdfVu;zjHnGW~Z~;D81umWlP#P@cVwAHM#!XbIBEq z9)?Faq(+!I>G-02%xVXcdRQFk-~^vVpb#bR#-)SD*Mg zbL&TKE5=}!Jzn^zv$luh>37FF>Qf4wY`lkq>6I06J1p(z1M)&c23Bd>>)-U)pj0MW zh07wt0yZ?h3MI_~z)DvcWq)^Py|JOVy0|Zj6x2ni+3yOSD!T>y;&0yyJPOn=Gz+9a>M_M#-WuuEKa@i{77LprfG;1e|jLMV6#jnB}4yL{b~So&__d# z)APCkwS_(I$gqSb;I}z!?2!AS5JI*^>mhS+ntL0=tsn6vCjNeYHU_LuTr&;P?k_XR=zC%}( zC(TE`$Hw|=f49oG6O+V?0(5yj5$T^;X}x^%M4aCI@@~c}b{x5wZLX6lN)ORHe*bJP zY`7|U{wlD>U*51Hw{b@t*!%ep4N10Jr{aRAXZ4XQ{_?ct1X}kwMS%q=SCK`y(JdBe z*sER9<=_H_OE=>(|+{|OKXr^&}0%%tcctz4Dj0(2BwZWYA$aB7 zM0MFtD@AU331u$uC_HyN8xA3D9WPAqCP?<2NjX&|H4PL-Tz^~y+_zg>=@;13F6?#! z2F|f_43FGEa%^lWc(xX4zaj?bx~gi{w{J-CJ?IxPmCJtAaUwEwESb->YqyqL-<{Mm z$*%+Hxz!1#sLiG(Ek^$Id-s;bE2oHMGt)i0aRrps&*RmZS=s0whVEJClkZ&y$=2~~ z_0t9KlCG;|vCJl2Oz<-Q>6sMmCA};L_zfwVB$LEF0)pB~Z@qb{mu!h!<&!+05~HE! z5CT5#cej%6Sx)jF?47O=R;FrSiDe;5`21U}PHq+(T&|Tdm`%7HD)$Fn_AmDJibYe> z`-XQW&JQEfg*d~;TX;Tk%6)q4H+}l0?1vD)jO=K9&BPMhZX1QkWBI^Hdtw5sh zVt!N2_97x`L>5jn0Cfs(!S4b66Tmz--g?e{Z_6#$bguxqNz?8x55#(B@gq|i+e{q> z!{XlDrUg-QwaVm;Y;;O+`fOdhHK?jy(p^g@YGcewD`-a?(Xb0IBGZB4ka$6rOnotrd`Da{(1;ebip(64_N)6F-6v%Gak5wzcwXCP?yWKvMac$wor| z^T4VJm$&=|-={6m*2Qv@fD4ZiCHk(Pu6HEZF*WpRnK0gQjeovOAhuhsj+ts|p6L7C z_kC-0zZ+6off=P7acZ4=@Q=wE^Z4Ol_sJ!m6C=mF2(}Q!wi`Sb6)sxuI79&q1H~lO zW5W|pxm_4MQ8brx#_|nF0Q1gV)gdV=uyxYM%t-}jfn2+ mKlV?izVe?2z6O}ig2pTeWq8Q|y6%O%Cdz`(%k>ERLtq#Zz*gBeK9-QM_SqM`<4+C;BDB?H}L12aPf zGZQ^S69Y>VOC1Fx149FSLnD0yb6rCND^v50zf>4w%nh8JOf5}aTut3vT}=!P9gPfK zom`B}Eu78FjEzhTl@uy+3w(X8T=J7kb5rw5JY8&+fFgP+nJHFI76z6UE^g*Pou-C{ zt|pGoF6Pc=&PJAQ1_l;R24<7%m}C^7ip+2-+Qp>86Ktwys1Tl+my%yzJoz1yfr7aq zerHX#W0p}Ml5pHmWaREu3tMHb-poL zeV&+Tt9|Hp2k(K$4;dz8c9bP6ul`Wup}mb!qwD$IzNaDVO{tpJu#fjDvlP=mwG8!~6*H}+ooTSzK>RQznPs6LxPv4vm*(F&TtdY*J z{@B_!rNwr)Q+zK-Hi-3xMa{BzkD4o0=bfBkxb0F%rMavV+gdK={h6<$jOP02I_Z9$ zzCerng%LkD@2r_K=9@JJ3)|b~KDui!@_EOk&-!m!<}}oE{t!!G_#Hp1msQN}EHJ_u NJYD@<);T3K0RY?aemnpG diff --git a/wirecardceecheckoutpage/img/payment_types/skrilldirect.png b/wirecardceecheckoutpage/img/payment_types/skrilldirect.png deleted file mode 100644 index 8cc140ded77c817f7e16feaf6153a526fa4a2423..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1582 zcmbVLdr%a09RHp8zz0OaGzm_vOA;E~?wPfp}+54hqGj|;G9a@||tI&b&fUAzO7 zu8ffJF-+FrGY#=EPLehfO@yG~Bx936_5d+O@r61XX%Is8JK(547@O%gv-|sff4}eN z`}sc0(o&OxriD)f00fzmDGS_}_`bjZ_}^Xo&K&Qt6nZ)mg41O-j~V8~(L}+NVIJCr5po=JI(=~sYm1VF{l|@QwMA=z zi^VLg$ma_TtVd3y9}IK%WFns;^hUc>u*0Izt0IDiV;kPj!mLk;&B%xM7q>3PnO46Xj4HT|YYH)*^B1k{h z#EBBkF|4204tYnh#1pYvgTT@fFIahgmA?bh@_30C^LQ6xNLR@TB-75>c(>>)&q%Zs zE7;etwnTw9!QO-YXPfTW%r|s%hI;ScD|S3Qc3|*Y*Ugvl`x^^;D>e-L()OUL z;_m9~yZ7$zKU&k18Q*uJ##_G4y`jAO#;t~L&$j*CQT=6o*|t494^{us*MH{R4;L|ygR3R3#6MPSyI!X_{0VFoNSo`fb5isO0ar5IxB7q>yeO>Nhj-~ z!bL~Kl}GVxMN|Uvl5G2}s*BHWFS}YCb0cO#bJ(orMc}K?erz>0UJrk|2sCxS=|1MY z9aNs3ae6PP_-OK=2+l4niN2lh-L)~PW$h$n>-GzuAMUVjIDX|rO+g^Cb$RWK4Bh;$ z?;_F+#Yb8#E&7b6wKD6uDZ1kMvSo)}^ai#fq4JV5gCM)=(DjnMAz*cdwIt6=|F{9* z(KUKmH>*6(;dF?s6d);e%r5m!2KUulmuEEpUQsg0?*8~OVSAxjor z&FzZGoUWQYA(|qWhnBZRY|VSs6xb+u7iUzpFAD~$`Df1W_-S4H;rI2Rvt{oxaHRUz zc_{G)Laljf@U1^rM2dY0j^xQ;Xi?I`{U^?sz1Ark*jHIx|IBP}C5>f9Mv9%Xp0}Sn zfjt}kX?s?s?DVO==7`3?N1;0%52nr?*!19g@5R-jQ~GxucqI%3e^VOWm@}}jzIJ-= z(REv7v#*sfP1Q5k5B1C{a%6wqD=lS$X!n63v4#n`{2mz&Zl;|K07WUk8NiChy0!>h suH3A-?D)hPpiC|gY`v_(E?t^10|Sp2)t9Y8Ww1 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 delta 661 zcmcaE|Bh3!Gr-TCmrII^fq{Y7)59eQNIQTq2Q!eIyS?$vL`4n8w25AQN(Q>g24;o| zW+r-uCI*%!mO2VX28IUuhDQ1Z=DLOkR;K0~e{nF{_!niSXXYj5xa237=BDPAc)Hjs zRpb`vrDUd9nHxAcnOd5c03OPQ|V|J=vd|US-F!YQAd_r8e?LV^r_~|FlUtYR?Yw3oq z4HIUZIDdK4g5|SUto!!;N9Th=uAP|#lsx3=;uunK>&^AkLd^<1tO55FG9LWjzwJRu)YjGYPj+Qk-#w5NYPtk0{mqlxjxpMu8OFs5w>496>rwWDMh#k}3 z;CVV-;G$w!JJZ$GkBbUw7;NlL$!`>RFlAo(qjCmT)>-b1-Arc}I&dG-`}Di`{sfiJ g)1TKjv@cvO5WSi~ct2lNkvr>mdKI;Vst0IGre2><{9 diff --git a/wirecardceecheckoutpage/img/payment_types/sofortueberweisung.png b/wirecardceecheckoutpage/img/payment_types/sofortueberweisung.png index 8cc140ded77c817f7e16feaf6153a526fa4a2423..13094af7ceae5c28660dbe30459497d77f9c4f9d 100644 GIT binary patch delta 6589 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 GM*IhzRYq$7 delta 988 zcmca_zK%z+Gr-TCmrII^fq{Y7)59eQNIQTq2Q!eIyS?$vL`4n8w25AQN(Q>g24;o| zW+r-uCI*%!mO2VX28IUuhDQ1Z=DLOkR;K0?f0a+3#h5ZVi&4{|z}MHxzbG?3GcPg6 zB|o_|H#M)s)5TV)BDX*p%>PanSUGWgJ4^=W#?uN#-XESdhcFy`(14@);}eHCv1ec#rG z2{Xz&COmoma{uwum#*Jhw_|VTjQO)yto!!;$BFZoZ{L5oZU2#{210oao&W#;pPTli z4``iYNswPKko&(LMBoAp^ABE7WME)CR_oyz=>X@t zwHJdfIE5XlVGKFXZd<3t7`Q^cf#afruwLtlKMXNTRy=FX_{$JdAacP&GkD&91_O<) zPK;0T+@G;*(Ct}te(UnRv!dNRID0SdX1HQx)6TNE{Z)tvAHx=b?K)fED%XEj5pb}6 zoc>TJoZFO*NyEi5Qh358>B$+Po*V~?8tlTB+zjMnFx5J7W!AOYo2%NK817tH5Xi80 z-91eu!&n8EGX6hVKNFOTzdL4ourd6#cK^C`-<8g&JB+^;FRI%sCeyGeQ9oQ+x%dv_ zt9rS8`VvxWZbmF(JbLK+N$CR|zlCSlWq;vR{nhj3T*KW$VfG($mU)XX@EvZ~IFR%l;N`O%{02VkyP&BH$o1L$%LG zXNH6WyDv!_=$Z7IKgeE~%WUE?f#c!>bN&1GnRpnA{@uEn{f18o82t>Mu6{1-oD!M< DpLCvs diff --git a/wirecardceecheckoutpage/img/payment_types/tatrapay.png b/wirecardceecheckoutpage/img/payment_types/tatrapay.png index 8cc140ded77c817f7e16feaf6153a526fa4a2423..795ad86b83d891dfa604f64d9878e9ed4ccc378a 100644 GIT binary patch delta 9739 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 F@;~ji#FYR5 delta 983 zcmZ1zu#QKuGr-TCmrII^fq{Y7)59eQNIQTq2Q!eIyS?$vL`4n8w25AQN(Q>g24;o| zW+r-uCI*%!mO2VX28IUuhDQ1Z=DLOkR;K0~e{nF{_!niSXXYj5xa237=BDPAc)Hjs zRpb`vrDUd9nHxAcnOd5c03OPQ|V|J>4sA{7I487z4pAgqc3zq*ledJAw?{izlzn?z5 zugm_raoL}z4_|m0eCV$FG`-{3jZ0saOn+M#^Y;CRr5m=s3b+5hZ)?MZ8RZ=lo;-iK z|M=-k*Ke)cvA1)^{Mjqkef$37#QDp&??2qO|HxAVp}dC9|NsBbO?%P@v`(=k$S)Yk z{a+6vZ~=z-2QMfxFfbnSba4!+xOHdx>!M}_fmYUoyVazMv!x&Xwojd|=BS{}IP>L_ zyYe$TAJ^$T*I_y-B6-r9Vb}Vr7d;O=lM<|EIPxUEd}G6F-U%^bM;99nBlZV ztH$fnhB@`!?iXrU6(-NTy=m30kd7^nrkGc9C`^vr&J$*<_3(^zfOFm2i$NEh!j9B1 zhMZ@&t|(QY1`y%%>gTrsj~XIb3-Dnx{jVT-_aovm+`>p!aqI9NYUf2b4AZOX=^ z;bIvnJmHe`ssy2Rc%fTcP=alWLUfIo~Dvvtb$7! z|DUX%3ChLa9kV^y82(zje_guoN@vs^#$SsU)$J9NX;_q~AFixie24K>z1%*138^(V zBNj0pJ@oyg^Z}0F!n5nLzi_Jl>iKf6;clTY`;R%xyhRxJ4!3I@Nc&~6cRTl|4YhrY zGEZBRkE|1F{`*R@Iy+|1rxO2U-o)}{e~Y&!3p{AClwx=haFCgy+UKJ)L&AaGm!u8! uOnS{9WG~ERHu0Fiaq)q<{{8z*JPbwuZr#j&!>0s{eg;ohKbLh*2~7aZCY`MS diff --git a/wirecardceecheckoutpage/img/payment_types/trustly.png b/wirecardceecheckoutpage/img/payment_types/trustly.png index be5e0c734d1778fb0c084c646ba09cb6a667daf0..9b0ffe3869b3a035418e5d5027b5069d9484c4ef 100644 GIT binary patch delta 3634 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 delta 1046 zcmZoxe8Z#I8Q|y6%O%Cdz`(%k>ERLtq#Zz*gBeK9-QM_SqM`<4+C;BDB?H}L12aPf zGZQ^S69Y>VOC1Fx149FSLnD0yb6rCND^v50zc?6e{EITvGxHL2T=J7kb5rw5JY8&+ zDsl_-QZiGl%nh8JOf5}aTut3vT}=!P9gPfKom`B}Eu78FjEzhTC;wuUi7~ctH8yuK zFajzuGcl4e`4|NujtTC^gM0g&ZH~F+0`&s$kpr|54sC;r9K9oipY?dH!L1|#5Z$oQjU)8vPtOAld58Mm1~)uXTU%An zR3ON|e*O34vy3fXr{6UEbo=kS=AluQ&&DfXS?`H6Tw*-K<-kzzdQU-Q{VB#y-hz59 zr`G>R>-#TTdk7k`SMW8Qihpy&eQ%NXnTVGRKPnia?6O21PDUg!%PeF&rOjZw{f$AL z!+}Ufl`sc`c?=7JlnpmANzD8k@zZ$aWhcuA_2)mx9eW;J;djh$#RpBk)_L49M&l`9R=Doftn$hsmW~D?FqfFte-}~O0X-zUa&v9Vp#w8z17L++0 zPU_muxO3J7H-@W9Vaz^Sa^LRk;3;BONbYmzI6S?7yCL)?D}(>49lQz~elQj)D+f$444$rjF6*2UngC+l B#?1f# diff --git a/wirecardceecheckoutpage/img/payment_types/trustpay.png b/wirecardceecheckoutpage/img/payment_types/trustpay.png index 8cc140ded77c817f7e16feaf6153a526fa4a2423..c313451269647a44bf37d3f027241ce492a83446 100644 GIT binary patch delta 5840 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 My85}Sb4q9e0Fp=qy#N3J diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index 20ee8d6..f2e71c0 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -1131,7 +1131,7 @@ private function getPaymentTypeInfo($type) return array('title' => $this->l('Credit Card - Mail Order and Telephone Order'), 'value' => Wirecard_CEE_QPay_PaymentType::CCARD_MOTO); case self::WCP_PT_MAESTRO: - return array('title' => $this->l('MasterCard SecureCode'), + return array('title' => $this->l('Maestro SecureCode'), 'value' => Wirecard_CEE_QPay_PaymentType::MAESTRO); case self::WCP_PT_MASTERPASS: return array('title' => $this->l('Masterpass'), From ae3dac346f2085127c0d84c8706bbed44708ce86 Mon Sep 17 00:00:00 2001 From: jakubpolomsky Date: Mon, 19 Jun 2017 15:25:00 +0200 Subject: [PATCH 12/42] #6 add birthday fields and payolution terms to the invoice and installment --- wirecardceecheckoutpage/scripts/script.js | 15 + .../templates/hook/methods/installment.tpl | 1 + .../views/templates/hook/methods/invoice.tpl | 96 +++++ .../wirecardceecheckoutpage.php | 376 ++++++++++++++++-- 4 files changed, 444 insertions(+), 44 deletions(-) create mode 100644 wirecardceecheckoutpage/views/templates/hook/methods/installment.tpl create mode 100644 wirecardceecheckoutpage/views/templates/hook/methods/invoice.tpl diff --git a/wirecardceecheckoutpage/scripts/script.js b/wirecardceecheckoutpage/scripts/script.js index 53296cb..e333aa7 100644 --- a/wirecardceecheckoutpage/scripts/script.js +++ b/wirecardceecheckoutpage/scripts/script.js @@ -14,4 +14,19 @@ $(document).ready(function(){ }); }); } + + function wcpValidateMinAge(dob, minage) { + if (!minage) + return true; + + var birthdate = new Date(dob); + var year = birthdate.getFullYear(); + var today = new Date(); + if (year <= 1899 || year >= today.getFullYear() + 1) { + return false; + } + + var limit = new Date((today.getFullYear() - minage), today.getMonth(), today.getDate()); + return birthdate < limit; + }; }); \ No newline at end of file diff --git a/wirecardceecheckoutpage/views/templates/hook/methods/installment.tpl b/wirecardceecheckoutpage/views/templates/hook/methods/installment.tpl new file mode 100644 index 0000000..41afb15 --- /dev/null +++ b/wirecardceecheckoutpage/views/templates/hook/methods/installment.tpl @@ -0,0 +1 @@ +{include 'module:wirecardceecheckoutpage/views/templates/hook/methods/invoice.tpl'} \ No newline at end of file diff --git a/wirecardceecheckoutpage/views/templates/hook/methods/invoice.tpl b/wirecardceecheckoutpage/views/templates/hook/methods/invoice.tpl new file mode 100644 index 0000000..5b2f6c1 --- /dev/null +++ b/wirecardceecheckoutpage/views/templates/hook/methods/invoice.tpl @@ -0,0 +1,96 @@ +

+ + + + {if $show_birthdate} +
+ +
+ +
+ +
+
+ +
+
+ +
+
+
+ {/if} + + {if $has_consent} +
    +
  • +
    + + + + +
    +
    + +
    +
  • +
+ {/if} + + + \ No newline at end of file diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index f2e71c0..569cc8d 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -70,8 +70,20 @@ class WirecardCEECheckoutPage extends PaymentModule const WCP_MAX_RETRIES = 'WCP_MAX_RETRIES'; const WCP_INVOICE_MIN = 'WCP_INVOICE_MIN'; const WCP_INVOICE_MAX = 'WCP_INVOICE_MAX'; + const WCP_INVOICE_PROVIDER = 'WCP_INVOICE_PROVIDER'; + const WCP_INVOICE_ADDRESS_EQUAL = 'WCP_INVOICE_ADDRESS_EQUAL'; + const WCP_INVOICE_BILLING_COUNTRIES = 'WCP_INVOICE_BILLING_COUNTRIES'; + const WCP_INVOICE_SHIPPING_COUNTRIES = 'WCP_INVOICE_SHIPPING_COUNTRIES'; + const WCP_INVOICE_CURRENCIES = 'WCP_INVOICE_CURRENCIES'; const WCP_INSTALLMENT_MIN = 'WCP_INSTALLMENT_MIN'; const WCP_INSTALLMENT_MAX = 'WCP_INSTALLMENT_MAX'; + const WCP_INSTALLMENT_PROVIDER = 'WCP_INSTALLMENT_PROVIDER'; + const WCP_INSTALLMENT_ADDRESS_EQUAL = 'WCP_INSTALLMENT_ADDRESS_EQUAL'; + const WCP_INSTALLMENT_BILLING_COUNTRIES = 'WCP_INSTALLMENT_BILLING_COUNTRIES'; + const WCP_INSTALLMENT_SHIPPING_COUNTRIES = 'WCP_INSTALLMENT_SHIPPING_COUNTRIES'; + const WCP_INSTALLMENT_CURRENCIES = 'WCP_INSTALLMENT_CURRENCIES'; + const WCP_PAYOLUTION_TERMS = 'WCP_PAYOLUTION_TERMS'; + const WCP_PAYOLUTION_MID = 'WCP_PAYOLUTION_MID'; const WCP_TRANSACTION_ID = 'WCP_TRANSACTION_ID'; const WCP_AUTO_DEPOSIT = 'WCP_AUTO_DEPOSIT'; const WCP_SEND_ADDITIONAL_DATA = 'WCP_SEND_ADDITIONAL_DATA'; @@ -300,6 +312,73 @@ public function getContent() return $this->html; } + /** + * return available currency iso codes + * + * @return array + */ + protected function getCurrencies() + { + $currencies = Currency::getCurrencies(); + $ret = array(); + foreach ($currencies as $currency) { + $ret[] = array( + 'key' => $currency['iso_code'], + 'value' => $currency['name'] + ); + } + + return $ret; + } + + /** + * return available country iso codes + * + * @return array + */ + protected function getCountries() + { + $cookie = $this->context->cookie; + $countries = Country::getCountries($cookie->id_lang); + $ret = array(); + foreach ($countries as $country) { + $ret[] = array( + 'key' => $country['iso_code'], + 'value' => $country['name'] + ); + } + + return $ret; + } + + /** + * return available usergroups iso codes + * + * @return array + */ + protected function getUserGroups() + { + $cookie = $this->context->cookie; + $groups = Group::getGroups($cookie->id_lang); + $visitor_group = Configuration::get('PS_UNIDENTIFIED_GROUP'); + $guest_group = Configuration::get('PS_GUEST_GROUP'); + $cust_group = Configuration::get('PS_CUSTOMER_GROUP'); + $ret = array(); + foreach ($groups as $g) { + // exclude standard groups + if (in_array( + $g['id_group'], + array($visitor_group, $guest_group, $cust_group) + )) { + continue; + } + + $ret[] = array('key' => $g['id_group'], 'value' => $g['name']); + } + + return $ret; + } + private function config() { $radio_type = 'onoff'; @@ -368,34 +447,6 @@ private function config() 'required' => true, 'desc' => $this->l('Maximum number of payment attempts regarding a certain order.').' '.$this->l('More information').' ' ), - array( - 'type' => 'text', - 'label' => $this->l('Invoice minimum amount'), - 'name' => self::WCP_INVOICE_MIN, - 'class' => 'fixed-width-md', - 'suffix' => 'EUR' - ), - array( - 'type' => 'text', - 'label' => $this->l('Invoice maximum amount'), - 'name' => self::WCP_INVOICE_MAX, - 'class' => 'fixed-width-md', - 'suffix' => 'EUR' - ), - array( - 'type' => 'text', - 'label' => $this->l('Installment minimum amount'), - 'name' => self::WCP_INSTALLMENT_MIN, - 'class' => 'fixed-width-md', - 'suffix' => 'EUR' - ), - array( - 'type' => 'text', - 'label' => $this->l('Installment maximum amount'), - 'name' => self::WCP_INSTALLMENT_MAX, - 'class' => 'fixed-width-md', - 'suffix' => 'EUR' - ), array( 'type' => 'select', 'label' => $this->l('Transaction ID'), @@ -428,9 +479,23 @@ private function config() 'is_bool' => true, 'class' => 't', 'values' => $radio_options - ) + ), + array( + 'name' => self::WCP_PAYOLUTION_TERMS, + 'label' => $this->l('payolution terms'), + 'type' => 'onoff', + 'default' => 1, + 'doc' => $this->l('Consumer must accept payolution terms during the checkout process.'), + 'docref' => 'https://guides.wirecard.at/payment_methods:invoice:payolution' + ), + array( + 'name' => self::WCP_PAYOLUTION_MID, + 'label' => $this->l('payolution mID'), + 'type' => 'text', + 'doc' => $this->l('Your payolution merchant ID, non-base64-encoded.') + ), ) - ), + ) ); $paymentTypeSwitches = array(); @@ -453,7 +518,170 @@ private function config() ), ); - $settings = array_merge($fields_form_settings,$fields_form_payment); + $invoice_options = array( + 'invoiceoptions' => array( + 'tab' => $this->l('Invoice'), + 'fields' => array( + array( + 'name' => self::WCP_INVOICE_PROVIDER, + 'label' => $this->l('Invoice provider'), + 'type' => 'select', + 'group' => 'pt', + 'default' => 'payolution', + 'required' => true, + 'options' => array( + array( + 'key' => 'payolution', + 'value' => 'payolution' + ), + array('key' => 'ratepay', 'value' => 'RatePay'), + ) + ), + array( + 'name' => self::WCP_INVOICE_ADDRESS_EQUAL, + 'label' => $this->l('Billing/shipping address must be identical'), + 'type' => 'onoff', + 'default' => 1, + 'group' => 'pt' + ), + array( + 'name' => self::WCP_INVOICE_BILLING_COUNTRIES, + 'label' => $this->l('Allowed billing countries'), + 'type' => 'select', + 'multiple' => true, + 'size' => 10, + 'default' => array('AT', 'DE', 'CH'), + 'options' => 'getCountries', + 'group' => 'pt', + ), + array( + 'name' => self::WCP_INVOICE_SHIPPING_COUNTRIES, + 'label' => $this->l('Allowed shipping countries'), + 'type' => 'select', + 'multiple' => true, + 'size' => 10, + 'default' => array('AT', 'DE', 'CH'), + 'options' => 'getCountries', + 'group' => 'pt', + ), + array( + 'name' => self::WCP_INVOICE_CURRENCIES, + 'label' => $this->l('Accepted currencies'), + 'type' => 'select', + 'multiple' => true, + 'default' => array('EUR'), + 'options' => 'getCurrencies', + 'group' => 'pt', + ), + array( + 'name' => self::WCP_INVOICE_MIN, + 'label' => $this->l('Minimum amount'), + 'type' => 'text', + 'group' => 'pt', + 'validator' => 'numeric', + 'default' => 150, + 'cssclass' => 'fixed-width-md', + 'suffix' => 'EUR' + ), + array( + 'name' => self::WCP_INVOICE_MAX, + 'label' => $this->l('Maximum amount'), + 'type' => 'text', + 'group' => 'pt', + 'default' => 3500, + 'validator' => 'numeric', + 'cssclass' => 'fixed-width-md', + 'suffix' => 'EUR' + ) + ) + ) + ); + + $installment_options = array( + 'installmentoptions' => array( + 'tab' => $this->l('Installment'), + 'fields' => array( + array( + 'name' => self::WCP_INSTALLMENT_PROVIDER, + 'label' => $this->l('Installment provider'), + 'type' => 'select', + 'group' => 'pt', + 'default' => 'payolution', + 'required' => true, + 'options' => array( + array( + 'key' => 'payolution', + 'value' => 'payolution' + ), + array('key' => 'ratepay', 'value' => 'RatePay'), + ) + ), + array( + 'name' => self::WCP_INSTALLMENT_ADDRESS_EQUAL, + 'label' => $this->l('Billing/shipping address must be identical'), + 'type' => 'onoff', + 'default' => 1, + 'group' => 'pt' + ), + array( + 'name' => self::WCP_INSTALLMENT_BILLING_COUNTRIES, + 'label' => $this->l('Allowed billing countries'), + 'type' => 'select', + 'multiple' => true, + 'size' => 10, + 'default' => array('AT', 'DE', 'CH'), + 'options' => 'getCountries', + 'group' => 'pt', + ), + array( + 'name' => self::WCP_INSTALLMENT_SHIPPING_COUNTRIES, + 'label' => $this->l('Allowed shipping countries'), + 'type' => 'select', + 'multiple' => true, + 'size' => 10, + 'default' => array('AT', 'DE', 'CH'), + 'options' => 'getCountries', + 'group' => 'pt', + ), + array( + 'name' => self::WCP_INSTALLMENT_CURRENCIES, + 'label' => $this->l('Accepted currencies'), + 'type' => 'select', + 'multiple' => true, + 'default' => array('EUR'), + 'options' => 'getCurrencies', + 'group' => 'pt', + ), + array( + 'name' => self::WCP_INSTALLMENT_MIN, + 'label' => $this->l('Minimum amount'), + 'type' => 'text', + 'group' => 'pt', + 'validator' => 'numeric', + 'default' => 150, + 'cssclass' => 'fixed-width-md', + 'suffix' => 'EUR' + ), + array( + 'name' => self::WCP_INSTALLMENT_MAX, + 'label' => $this->l('Maximum amount'), + 'type' => 'text', + 'group' => 'pt', + 'default' => 3500, + 'validator' => 'numeric', + 'cssclass' => 'fixed-width-md', + 'suffix' => 'EUR' + ) + ) + ) + ); + + $settings = array_merge( + $fields_form_settings, + $fields_form_payment, + $invoice_options, + $installment_options + ); return $settings; } @@ -480,11 +708,6 @@ private function renderForm() foreach ($this->config as $groupKey => $group) { $tabs[$groupKey] = $this->l($group['tab']); foreach ($group['fields'] as $f) { - $configGroup = isset($f['group']) ? $f['group'] : $groupKey; - if (isset($f['class'])) { - $configGroup = 'pt'; - } - $elem = array( 'name' => $f['name'], 'label' => $this->l($f['label']), @@ -641,6 +864,10 @@ public function hookPaymentOptions($params) return false; } + $customer_id = $params['cookie']->id_customer; + $customer = new Customer($customer_id); + $age = (new DateTime())->diff(DateTime::createFromFormat("Y-m-d",$customer->birthday))->y; + $result = array(); unset($this->context->cookie->qpayRedirectUrl); @@ -669,9 +896,19 @@ public function hookPaymentOptions($params) $this->context->smarty->assign( array( "action" => $action, + 'days' => Tools::dateDays(), + 'months' => Tools::dateMonths(), + 'years' => Tools::dateYears(), "method" => $current_method, "financialInstitutions" => $payment_class->getFinancialInstitutions(), - "submit_text" => $this->l('Pay using') . ' ' . $this->l($paymentType['title']) + "min_age_message" => $this->l("You have to be 18 years or older to use this payment."), + "show_birthdate" => $age < 18, + "consent_error_message" => $this->l("Please accept the consent terms!"), + "consent_text" => $this->l("I agree that the data which are necessary for the liquidation of invoice payments and which are used to complete the identity and credit check are transmitted to payolution. My %s can be revoked at any time with future effect."), + "consent" => $this->l("consent"), + "submit_text" => $this->l('Pay using') . ' ' . $this->l($paymentType['title']), + "has_consent" => Configuration::get(self::WCP_PAYOLUTION_TERMS) + && (($current_method == Wirecard_CEE_QPay_PaymentType::INVOICE && Configuration::get(self::WCP_INVOICE_PROVIDER) == 'payolution') || ($current_method === Wirecard_CEE_QPay_PaymentType::INSTALLMENT && Configuration::get(self::WCP_INSTALLMENT_PROVIDER) == 'payolution')) ) ); @@ -1104,11 +1341,14 @@ private function isPaymentTypeEnabled($paymentType) private function getAllConfigurationParameter() { - return array_merge(array(self::WCP_CONFIGURATION_MODE, self::WCP_CUSTOMER_ID, self::WCP_SHOP_ID, - self::WCP_SECRET, self::WCP_DISPLAY_TEXT, self::WCP_MAX_RETRIES, self::WCP_INVOICE_MIN, - self::WCP_INVOICE_MAX, self::WCP_INSTALLMENT_MIN, self::WCP_INSTALLMENT_MAX, self::WCP_TRANSACTION_ID, - self::WCP_AUTO_DEPOSIT, self::WCP_SEND_ADDITIONAL_DATA, self::WCP_USE_IFRAME, self::WCP_OS_AWAITING), - $this->getPaymentTypes()); + $params = array(); + + foreach($this->config as $groupKey => $group){ + foreach($group['fields'] as $f){ + $params[] = $f['name']; + } + } + return $params; } private function getPaymentTypes() @@ -1233,10 +1473,28 @@ private function getOrder() return $this->myOrder; } + private function getMultiSelectArray($key){ + $val = Configuration::get($key); + + if(!Tools::strlen($val)){ + return array(); + } + + $ret = json_decode($val); + if( !is_array($ret)){ + return array(); + } + return $ret; + } + private function isInvoiceAllowed(Cart $cart) { + $chosen_currencies = $this->getMultiSelectArray(self::WCP_INVOICE_CURRENCIES); + $chosen_shipping_countries = $this->getMultiSelectArray(self::WCP_INVOICE_SHIPPING_COUNTRIES); + $chosen_billing_countries = $this->getMultiSelectArray(self::WCP_INVOICE_BILLING_COUNTRIES); + $currency = new Currency($cart->id_currency); - if ($currency->iso_code != 'EUR') { + if (!in_array($currency->iso_code, $chosen_currencies)) { return false; } @@ -1244,6 +1502,18 @@ private function isInvoiceAllowed(Cart $cart) $billingAddress = new Address($cart->id_address_invoice); $shippingAddress = new Address($cart->id_address_delivery); + if (!in_array((new Country($billingAddress->id_country))->iso_code, + $chosen_billing_countries) + ) { + return false; + } + + if (!in_array((new Country($shippingAddress->id_country))->iso_code, + $chosen_shipping_countries) + ) { + return false; + } + $d1 = new DateTime($customer->birthday); $diff = $d1->diff(new DateTime); $customerAge = $diff->format('%y'); @@ -1276,8 +1546,12 @@ private function isInvoiceAllowed(Cart $cart) private function isInstallmentAllowed(Cart $cart) { + $chosen_currencies = $this->getMultiSelectArray(self::WCP_INSTALLMENT_CURRENCIES); + $chosen_shipping_countries = $this->getMultiSelectArray(self::WCP_INSTALLMENT_SHIPPING_COUNTRIES); + $chosen_billing_countries = $this->getMultiSelectArray(self::WCP_INSTALLMENT_BILLING_COUNTRIES); + $currency = new Currency($cart->id_currency); - if ($currency->iso_code != 'EUR') { + if (!in_array($currency->iso_code,$chosen_currencies)) { return false; } @@ -1286,6 +1560,20 @@ private function isInstallmentAllowed(Cart $cart) $billingAddress = new Address($cart->id_address_invoice); $shippingAddress = new Address($cart->id_address_delivery); + if (!in_array( + (new Country($billingAddress->id_country))->iso_code, + $chosen_billing_countries) + ) { + return false; + } + + if (!in_array( + (new Country($shippingAddress->id_country))->iso_code, + $chosen_shipping_countries) + ) { + return false; + } + $d1 = new DateTime($customer->birthday); $diff = $d1->diff(new DateTime()); $customerAge = $diff->format('%y'); From ff439681d3c8e4870464714cd916cb06b9cd538e Mon Sep 17 00:00:00 2001 From: jakubpolomsky Date: Tue, 20 Jun 2017 14:41:03 +0200 Subject: [PATCH 13/42] #6 update installment and quick icon, store and set default settings --- .../img/payment_types/installment.png | Bin 1577 -> 2703 bytes .../img/payment_types/quick.png | Bin 1478 -> 5395 bytes .../wirecardceecheckoutpage.php | 175 ++++++++++-------- 3 files changed, 99 insertions(+), 76 deletions(-) diff --git a/wirecardceecheckoutpage/img/payment_types/installment.png b/wirecardceecheckoutpage/img/payment_types/installment.png index ba8d04a966691434ff71a446f037d65cbf7d8c77..cb1167e78bdffd60a8703368d86df7ee72da9186 100644 GIT binary patch delta 2079 zcmZ`)dpOez1D?B$x#b=jg@$dv%{Jzi%^DjykxSA=8l^PL{kSw4Vs06ceeSo&Et3iz z&3u%KI>)7@axLWK?nG2h=Xt*8`Tjb8yzl$Z`@YZn-&-f2t)`!L)YTCR(T0FPASl&| z?EX_>|3FsyCx^wvY~<)46l3JjvJCKub7*r*m<0ie#t|$rSTh&~K;uyW0fojQ0JIfA zXxTm>cEH@9fCtcYa|Gs`zdr&`z~T`876dH99I(Lns~l}z-A9&0E72YYy`ro4=8ji{;CHK``SUy1wsK%^v< zhfk;z$tpqvT7u?D*>1918U#!h=ica$JR;E4fQh9gxvTjEEBkQnsj9+{dbOxt`(qF& z{ywmNs7DKq@4Bw{hXxuL{I5_Q+dCIU)s$A#YeD-QxumK-nd*+k#*Yp}S z^6-XMDkU~tQL_13+LhDA5*NEU(FQM+{xZU_mO!xrnMp(vtN1yOH1b}WYdD#m5hVGM zD;6Strs&sbUzy%?`xe>RCMkB?q-pX7?L!>k2jm2zxkEhd(GtChsgW|hxbDKemEa{) zPGrJnY+w;J`tZ8a*nm#tbzG*rekMkjb7Zv*!03SQeA3O-0&6O>I{Fepe)c0_0yQ>{k_wl&{> zbkw<}Hdl=hjWrV4IpP2|WX?)El2yZDRMiOYHd=273fs@#X?neSeC3#FTS9NF!UiWM zzmYcnC2eLElT^avE@GGFk=j=~I158VZwhTR5$x3m=stKrzHw<()Z%DQ$5Dp!2CwQ& z_@5W@exq_eZE2xOHg9o-q}Zx2u=g(1{I&XK?phJbl+T8&v{<_Db@$}6w&L@q!<;LE zKHv(Up66rNbUv$QU#newXRQ{VdSx=HsrD*LCwgtmbz$-m6$%eB(%i@Hy273NN-8W; zYnD*_rD!2CXM$eccJ6dljjDA-a0g|kKFTd{XylhfX{kXI?TY%X%zPzlCWW-8U*B%z z3t#YpR|*;Q&V8ckdN%71R$TviWSin$VqNf#6m2cG|7`2fT;=Smx&|Bmwyov;uus{a z?S?l)2g<7w=9JRM#y^+k;ADiWK1#=K9M|v`#%h9ZYTJDjiFPL8E4o|mn2&>9p+?6g z7-Lv}tKz3ij&Gm^EoQpqUdH;oN|RXmQK7GWhw^TS4bQwb5xOhOdg0brXb5z<9fLB( zcd~@+@BAsBmW=-(jjJ_WKs(V{H@YVk;YQjSwYtyYut6C0Wq*EIi2B3UXC4n)Rq9Ta z)8b#|Y|QIFmb3guR4rY*nk?cdIkL@Xqy*2l#Wo7~1LdW{4uOAIyr^m1+tn>)-RjCJ zH zo?d2X*zJEvuWT#u$hI9u{;9Im$iFj>*U_7u$V$w4wyoiIqV>AVi3AddPxcyEI0VW{ zfc3ph>2~hdLoI3@O>({j(Q5Pipx~EXxNE_*<Jjlthho`dEBfzSm7S|cnB0c0 zz>7|c_J4gDyw~c7Eq3Udh^p6bh$E*q&!Kt=duRb~e?%AuOD`wtqP=~`J2ROTra!Ji z0y=Hg_cpSEr6JTk)t!uK<}=yS)W9lD)6#mAJ{0R_h1xP>mE!SxXRFkKh~f~F{nK&Q z8B&U8{dI+*qHlVRvN&Oovz%OJeX)<6jS~k0jmw)v)~4wx+zUsXF>CV+EduvJ%*I-Q zlNTYMH{Yl1lH8M3+THRt#Xah;gQ?F8!A1*kde0UE9C6!gNxZ1z`P=QFS#I|A zn|>9U?H2B?CU4hzcd|hepf{t@Ex_o`=FiUuQ4hP4n@E0%e*@Ojr;`8x delta 944 zcmeAdUCE=^8Q|y6%O%Cdz`(%k>ERLtq#Zz*gBeK9-QM_SqM`<4+C;BDB?H}L12aPf zGZQ^S69Y>VOC1Fx149FSLnD0yb6rCND^v50zf>4w%nh8JOf5}aTut3vT}=!P9gPfK zom`B}Eu78FjEzhTl@uy+3w(X8T=J7kb5rw5JY8&+fFgP+nJHGzrj8a)24;>xou-C{ zt|k_iMrIa{j;86Ktwys1Tl+my%yzJoz1yfr7aq zerHX#W0p}M$3lT`tbJs zhbPZpuG_Kqxvk>2?>{bGzxAQJ>d(`MvsbKZm@wmom%*!W`(HOMeciaMbH@Dr$4|d4 zj9I#2>#rM^f1Ez@X-4PweOq6J+kIIwecS#cx9>lEY9N%?&M3G%Bv6Zc6ySoyD>H*vd|!IA$@ zKg~N5&h+Wt|K=d8Cy(~=O(^lx+gmWb>h9-CMui|F&nuDTAFWF(D;C$9q&2*6ShQlA z_=4?*{b>h0zqapUm(iQ@`2ybohHiz8%r2X?r_}OEIRzhnZ^!=7N$9VGXVRX9T>ZsM zz8u_Hy(jO@5yS49uR1B(>5XSManv83v%#j9N$$v%+JbLl-yJ`4G%UF5vFGEtNq3Tz zkNPuMOj})+^vkEAHsIGcZ&SSzq4i(lG`xhzE~~{tH#NqLDUR9yOeEX2402bC9QJqNcKspUo026OC@{AvbC$=;7nh$@ zZedmyP_~%lut9l)xyZp?{5cF6EPZv#C%0eWNSIN7ox|{=cG#*1uU8A~y)Zp%<@{Df z?=vPE&obYHv2Dw{RJD_T&T@T`TFKttkO+ov%fh||9x&l%QWRKNx!1em&%g6u*v@=W bKES|pgL~E&&)+e?2xstg^>bP0l+XkKN~oHP diff --git a/wirecardceecheckoutpage/img/payment_types/quick.png b/wirecardceecheckoutpage/img/payment_types/quick.png index 1a68a0b578d7220da2d0e4a849f9219f406b3f6f..f644e9c3e85a4b570f46ed2a208906c52cedd284 100644 GIT binary patch literal 5395 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 diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index 569cc8d..f33890e 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -42,7 +42,6 @@ class WirecardCEECheckoutPage extends PaymentModule { - const WCP_CONFIGURATION_MODE_DEFAULT = 'production'; const WCP_CUSTOMER_ID_DEMO = 'D200001'; const WCP_SHOP_ID_DEMO = ''; const WCP_SECRET_DEMO = 'B8AKTPWBRMNBV455FG6M2DANE99WU2'; @@ -52,14 +51,7 @@ class WirecardCEECheckoutPage extends PaymentModule const WCP_CUSTOMER_ID_TEST3D = 'D200411'; const WCP_SHOP_ID_TEST3D = '3D'; const WCP_SECRET_TEST3D = 'DP4TMTPQQWFJW34647RM798E9A5X7E8ATP462Z4VGZK53YEJ3JWXS98B9P4F'; - const WCP_DISPLAY_TEXT_DEFAULT = ''; - const WCP_MAX_RETRIES_DEFAULT = '-1'; - const WCP_TRANSACTION_ID_DEFAULT = 'orderNumber'; - const WCP_AUTO_DEPOSIT_DEFAULT = 0; - const WCP_SEND_ADDITIONAL_DATA_DEFAULT = 1; - const WCP_USE_IFRAME_DEFAULT = 1; const WCP_PT_DEFAULT = 0; - const WCP_AMOUNT_DEFAULT = ''; const WINDOW_NAME = 'Checkout_Page_Frame'; const WCP_CONFIGURATION_MODE = 'WCP_CONFIGURATION_MODE'; @@ -159,25 +151,25 @@ public function install() || !$this->registerHook('paymentOptions') || !$this->registerHook('paymentReturn') || !$this->registerHook('actionFrontControllerSetMedia') - || !Configuration::updateValue(self::WCP_CONFIGURATION_MODE, self::WCP_CONFIGURATION_MODE_DEFAULT) - || !Configuration::updateValue(self::WCP_CUSTOMER_ID, self::WCP_CUSTOMER_ID_DEMO) - || !Configuration::updateValue(self::WCP_SHOP_ID, self::WCP_SHOP_ID_DEMO) - || !Configuration::updateValue(self::WCP_SECRET, self::WCP_SECRET_DEMO) - || !Configuration::updateValue(self::WCP_DISPLAY_TEXT, self::WCP_DISPLAY_TEXT_DEFAULT) - || !Configuration::updateValue(self::WCP_MAX_RETRIES, self::WCP_MAX_RETRIES_DEFAULT) - || !Configuration::updateValue(self::WCP_INVOICE_MIN, self::WCP_AMOUNT_DEFAULT) - || !Configuration::updateValue(self::WCP_INVOICE_MAX, self::WCP_AMOUNT_DEFAULT) - || !Configuration::updateValue(self::WCP_INSTALLMENT_MIN, self::WCP_AMOUNT_DEFAULT) - || !Configuration::updateValue(self::WCP_INSTALLMENT_MAX, self::WCP_AMOUNT_DEFAULT) - || !Configuration::updateValue(self::WCP_TRANSACTION_ID, self::WCP_TRANSACTION_ID_DEFAULT) - || !Configuration::updateValue(self::WCP_AUTO_DEPOSIT, self::WCP_AUTO_DEPOSIT_DEFAULT) - || !Configuration::updateValue(self::WCP_SEND_ADDITIONAL_DATA, self::WCP_SEND_ADDITIONAL_DATA_DEFAULT) - || !Configuration::updateValue(self::WCP_USE_IFRAME, self::WCP_USE_IFRAME_DEFAULT) || !$this->installPaymentTypes() ) { return false; } + foreach ($this->getAllConfigurationParameter() as $parameter) { + if (isset($parameter['default'])) { + $default = $parameter['default']; + if (is_array($default)) { + $default = json_encode($default); + } + if (!Configuration::updateGlobalValue($parameter['name'], + $default) + ) { + return false; + } + } + } + // http://forge.prestashop.com/browse/PSCFV-1712 if ($this->registerHook('displayPDFInvoice') === false) { return false; @@ -245,7 +237,7 @@ private function installPaymentTypes() public function uninstall() { foreach ($this->getAllConfigurationParameter() as $parameter) { - Configuration::deleteByName($parameter); + Configuration::deleteByName($parameter['name']); } return parent::uninstall(); @@ -282,10 +274,16 @@ private function postProcess() { if (Tools::isSubmit('btnSubmit')) { foreach ($this->getAllConfigurationParameter() as $parameter) { + $parameter = $parameter['name']; if ($parameter == self::WCP_OS_AWAITING) { continue; } - Configuration::updateValue($parameter, Tools::getValue($parameter)); + $val = Tools::getValue($parameter); + + if (is_array($val)) { + $val = json_encode($val); + } + Configuration::updateValue($parameter, $val); } } $this->html .= $this->displayConfirmation($this->l('Settings updated')); @@ -379,6 +377,28 @@ protected function getUserGroups() return $ret; } + protected function getProvider($which){ + $ret = array( + array( + 'key' => 'payolution', + 'value' => 'payolution' + ), + array( + 'key' => 'ratepay', + 'value' => 'RatePay' + ) + ); + + if($which==self::WCP_INVOICE_PROVIDER){ + $ret[] = array( + 'key' => 'wirecard', + 'value' => 'virecard' + ); + } + + return $ret; + } + private function config() { $radio_type = 'onoff'; @@ -395,6 +415,19 @@ private function config() ) ); + $paymentTypeSwitches = array(); + foreach ($this->getPaymentTypes() as $paymentType) { + $info = $this->getPaymentTypeInfo($paymentType); + array_push($paymentTypeSwitches, array( + 'type' => $radio_type, + 'label' => $info['title'], + 'name' => $paymentType, + 'is_bool' => true, + 'class' => 't', + 'values' => $radio_options + )); + } + $fields_form_settings = array( 'settings' => array( 'tab' => $this->l('Settings'), @@ -410,6 +443,7 @@ private function config() 'type' => 'text', 'label' => $this->l('Customer ID'), 'name' => self::WCP_CUSTOMER_ID, + 'default' => 'D200001', 'required' => true, 'class' => 'fixed-width-xl', 'maxchar' => 7, @@ -421,11 +455,13 @@ private function config() 'name' => self::WCP_SHOP_ID, 'class' => 'fixed-width-xl', 'maxchar' => 16, + 'default' => '', 'desc' => $this->l('Shop identifier in case of more than one shop.').' '.$this->l('More information').' ' ), array( 'type' => 'text', 'label' => $this->l('Secret'), + 'default' => 'B8AKTPWBRMNBV455FG6M2DANE99WU2', 'name' => self::WCP_SECRET, 'class' => 'fixed-width-xxl', 'required' => true, @@ -437,6 +473,7 @@ private function config() 'name' => self::WCP_DISPLAY_TEXT, 'class' => 'fixed-width-xl', 'required' => true, + 'default' => '', 'desc' => $this->l('Text displayed during the payment process, i.e. "Thank you for ordering in xy-shop".').' '.$this->l('More information').' ' ), array( @@ -444,6 +481,7 @@ private function config() 'label' => $this->l('Max. retries'), 'name' => self::WCP_MAX_RETRIES, 'class' => 'fixed-width-xs', + 'default' => '-1', 'required' => true, 'desc' => $this->l('Maximum number of payment attempts regarding a certain order.').' '.$this->l('More information').' ' ), @@ -451,6 +489,7 @@ private function config() 'type' => 'select', 'label' => $this->l('Transaction ID'), 'name' => self::WCP_TRANSACTION_ID, + 'default' => 'orderNumber', 'options' => 'getTransactionIdOptions', 'desc' => $this->l('Wirecard order number: Unique number defined by Wirecard identifying the payment.') . '
' . $this->l('Gateway reference number: Reference number defined by the processor or acquirer.') ), @@ -459,6 +498,7 @@ private function config() 'label' => $this->l('Automated deposit'), 'name' => self::WCP_AUTO_DEPOSIT, 'is_bool' => true, + 'default' => 0, 'class' => 't', 'values' => $radio_options, 'desc' => $this->l('Enabling an automated deposit of payments.').' '.$this->l('More information').' ' @@ -469,6 +509,7 @@ private function config() 'name' => self::WCP_SEND_ADDITIONAL_DATA, 'is_bool' => true, 'class' => 't', + 'default' => 1, 'values' => $radio_options, 'desc' => $this->l('Forwarding shipping and billing data about your consumer to the respective financial service provider.') ), @@ -476,6 +517,7 @@ private function config() 'type' => $radio_type, 'label' => $this->l('Display as iframe'), 'name' => self::WCP_USE_IFRAME, + 'default' => 1, 'is_bool' => true, 'class' => 't', 'values' => $radio_options @@ -484,7 +526,7 @@ private function config() 'name' => self::WCP_PAYOLUTION_TERMS, 'label' => $this->l('payolution terms'), 'type' => 'onoff', - 'default' => 1, + 'default' => 0, 'doc' => $this->l('Consumer must accept payolution terms during the checkout process.'), 'docref' => 'https://guides.wirecard.at/payment_methods:invoice:payolution' ), @@ -493,32 +535,13 @@ private function config() 'label' => $this->l('payolution mID'), 'type' => 'text', 'doc' => $this->l('Your payolution merchant ID, non-base64-encoded.') - ), + ) ) - ) - ); - - $paymentTypeSwitches = array(); - foreach ($this->getPaymentTypes() as $paymentType) { - $info = $this->getPaymentTypeInfo($paymentType); - array_push($paymentTypeSwitches, array( - 'type' => $radio_type, - 'label' => $info['title'], - 'name' => $paymentType, - 'is_bool' => true, - 'class' => 't', - 'values' => $radio_options - )); - } - - $fields_form_payment = array( + ), 'paymentmethods' => array( 'tab' => $this->l('Payment methods'), 'fields' => $paymentTypeSwitches ), - ); - - $invoice_options = array( 'invoiceoptions' => array( 'tab' => $this->l('Invoice'), 'fields' => array( @@ -529,13 +552,7 @@ private function config() 'group' => 'pt', 'default' => 'payolution', 'required' => true, - 'options' => array( - array( - 'key' => 'payolution', - 'value' => 'payolution' - ), - array('key' => 'ratepay', 'value' => 'RatePay'), - ) + 'options' => 'getProvider', ), array( 'name' => self::WCP_INVOICE_ADDRESS_EQUAL, @@ -594,10 +611,7 @@ private function config() 'suffix' => 'EUR' ) ) - ) - ); - - $installment_options = array( + ), 'installmentoptions' => array( 'tab' => $this->l('Installment'), 'fields' => array( @@ -608,14 +622,9 @@ private function config() 'group' => 'pt', 'default' => 'payolution', 'required' => true, - 'options' => array( - array( - 'key' => 'payolution', - 'value' => 'payolution' - ), - array('key' => 'ratepay', 'value' => 'RatePay'), - ) - ), + 'options' => 'getProvider' + ) + , array( 'name' => self::WCP_INSTALLMENT_ADDRESS_EQUAL, 'label' => $this->l('Billing/shipping address must be identical'), @@ -676,14 +685,7 @@ private function config() ) ); - $settings = array_merge( - $fields_form_settings, - $fields_form_payment, - $invoice_options, - $installment_options - ); - - return $settings; + return $fields_form_settings; } private function renderForm() @@ -779,7 +781,7 @@ private function renderForm() } if (method_exists($this, $optfunc)) { - $options = $this->$optfunc(); + $options = $this->$optfunc($f['name']); } $elem['options'] = array( @@ -853,7 +855,28 @@ public function getConfigFieldsValues() { $values = array(); foreach ($this->getAllConfigurationParameter() as $parameter) { - $values[$parameter] = Tools::getValue($parameter, Configuration::get($parameter)); + $val = Configuration::get($parameter['name']); + + foreach ($this->config as $groupKey => $group) { + foreach ($group['fields'] as $f) { + $params[] = $f['name']; + } + } + if (isset($parameter['multiple']) && $parameter['multiple']) { + if (!is_array($val)) { + $val = Tools::strlen($val) ? (json_decode($val) != null) ? json_decode($val) : $val : array(); + } + + if (is_array($val)) { + $x = array(); + foreach ($val as $v) { + $x[$v] = $v; + } + } + $values[$parameter['name'] . '[]'] = $val; + } else { + $values[$parameter['name']] = $val; + } } return $values; } @@ -1345,7 +1368,7 @@ private function getAllConfigurationParameter() foreach($this->config as $groupKey => $group){ foreach($group['fields'] as $f){ - $params[] = $f['name']; + $params[] = $f; } } return $params; From 3e8086bc001a88a5631c32e5f1b3a760b74f9b6f Mon Sep 17 00:00:00 2001 From: jakubpolomsky Date: Wed, 21 Jun 2017 09:22:32 +0200 Subject: [PATCH 14/42] #6 invoice / installment validation finished --- wirecardceecheckoutpage/scripts/script.js | 25 ++++++++--------- .../views/templates/hook/methods/invoice.tpl | 28 +++++++++++++------ 2 files changed, 30 insertions(+), 23 deletions(-) diff --git a/wirecardceecheckoutpage/scripts/script.js b/wirecardceecheckoutpage/scripts/script.js index e333aa7..ea55074 100644 --- a/wirecardceecheckoutpage/scripts/script.js +++ b/wirecardceecheckoutpage/scripts/script.js @@ -14,19 +14,16 @@ $(document).ready(function(){ }); }); } +}); - function wcpValidateMinAge(dob, minage) { - if (!minage) - return true; - - var birthdate = new Date(dob); - var year = birthdate.getFullYear(); - var today = new Date(); - if (year <= 1899 || year >= today.getFullYear() + 1) { - return false; - } +function wcpValidateMinAge(dob) { + var birthdate = new Date(dob); + var year = birthdate.getFullYear(); + var today = new Date(); + if (year <= 1899 || year >= today.getFullYear() + 1) { + return false; + } - var limit = new Date((today.getFullYear() - minage), today.getMonth(), today.getDate()); - return birthdate < limit; - }; -}); \ No newline at end of file + var limit = new Date((today.getFullYear() - 18), today.getMonth(), today.getDate()); + return birthdate < limit; +}; \ No newline at end of file diff --git a/wirecardceecheckoutpage/views/templates/hook/methods/invoice.tpl b/wirecardceecheckoutpage/views/templates/hook/methods/invoice.tpl index 5b2f6c1..301d589 100644 --- a/wirecardceecheckoutpage/views/templates/hook/methods/invoice.tpl +++ b/wirecardceecheckoutpage/views/templates/hook/methods/invoice.tpl @@ -1,4 +1,4 @@ -
+ @@ -6,9 +6,9 @@
- +
- {foreach from=$days item=v} @@ -16,7 +16,7 @@
- {foreach from=$months key=k item=v}
- {foreach from=$years item=v} @@ -42,23 +42,33 @@
  • - +
    -
  • {/if} + +
    + +
    '; + $ratepay .= ''; + $ratepay .= ''; + $ratepay .= ''; + + echo $ratepay; + foreach ($paymentTypes as $paymentType) { $payment = new PaymentOption(); @@ -946,7 +963,7 @@ public function hookPaymentOptions($params) : $this->l('consent')) ); - if ($this->context->smarty->templateExists($template)) { + if ($this->context->smarty->templateExists($template)) { $this->context->smarty->assign( array( "action" => $action, @@ -1216,6 +1233,11 @@ private function initiate($paymentType, $additionalData) $init->setConsumerData($consumerData); + if ($this->context->cookie->wcpConsumerDeviceId){ + $init->consumerDeviceId = $this->context->cookie->wcpConsumerDeviceId; + unset($this->context->cookie->wcpConsumerDeviceId); + } + if (isset($additionalData['financialinstitution'])) { $init->setFinancialInstitution($additionalData['financialinstitution']); } From 4311000d95eac6f434facbaa4d328f9c9ebcce87 Mon Sep 17 00:00:00 2001 From: Jacqueline Rinnhofer Date: Mon, 21 Aug 2017 12:41:02 +0200 Subject: [PATCH 27/42] #9 Update README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 29fa08a..b84e3e4 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,10 @@ # Wirecard Checkout Page plugin for PrestaShop [![License](https://img.shields.io/badge/license-GPLv2-blue.svg)](https://raw.githubusercontent.com/wirecard/prestashop-wcp/master/LICENSE) -[![PrestaShop](https://img.shields.io/badge/PrestaShop-v1.7.1.4-green.svg)](https://www.prestashop.com/) +[![PrestaShop](https://img.shields.io/badge/PrestaShop-v1.7.2.0-green.svg)](https://www.prestashop.com/) [![PHP v5.6](https://img.shields.io/badge/php-v5.6-yellow.svg)](http://www.php.net) [![PHP v7.0](https://img.shields.io/badge/php-v7.0-yellow.svg)](http://www.php.net) +[![PHP v7.1](https://img.shields.io/badge/php-v7.1-yellow.svg)](http://www.php.net) Wirecard Checkout Page plugin for PrestaShop. From 98a18f1f7c7e17171df69955c14a1876f6708bcd Mon Sep 17 00:00:00 2001 From: Jacqueline Rinnhofer Date: Mon, 21 Aug 2017 13:05:24 +0200 Subject: [PATCH 28/42] #9 Update coding standard --- .../controllers/front/payment.php | 10 ++-- .../wirecardceecheckoutpage.php | 56 +++++++++---------- 2 files changed, 33 insertions(+), 33 deletions(-) diff --git a/wirecardceecheckoutpage/controllers/front/payment.php b/wirecardceecheckoutpage/controllers/front/payment.php index eb744e4..4e1fe2b 100644 --- a/wirecardceecheckoutpage/controllers/front/payment.php +++ b/wirecardceecheckoutpage/controllers/front/payment.php @@ -64,11 +64,11 @@ public function postProcess() } try { - $additionalData = array(); - if (Tools::strlen(Tools::getValue('financialInstitution', ''))) { - $additionalData['financialinstitution'] = Tools::getValue('financialInstitution'); - } - $this->module->initiatePayment(Tools::getValue('paymentType'), $additionalData); + $additionalData = array(); + if (Tools::strlen(Tools::getValue('financialInstitution', ''))) { + $additionalData['financialinstitution'] = Tools::getValue('financialInstitution'); + } + $this->module->initiatePayment(Tools::getValue('paymentType'), $additionalData); } catch (Zend_Exception $e) { echo $this->module->displayError($e->getMessage()); } diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index 1dad5c8..14d10ff 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -923,22 +923,22 @@ public function hookPaymentOptions($params) return ".." . Media::getMediaPath('/modules/wirecardceecheckoutpage/views/img/payment_types/' . Tools::strtolower($payment_type) . '.png'); }; - if ($this->context->cookie->wcpConsumerDeviceId) { - $consumerDeviceId = $this->context->cookie->wcpConsumerDeviceId; - } else { - $timestamp = microtime(); - $customerId = $this->getCustomerId(); - $consumerDeviceId = md5($customerId . "_" . $timestamp); - $this->context->cookie->wcpConsumerDeviceId = $consumerDeviceId; - $this->context->cookie->write(); - } - - $ratepay = ''; - $ratepay .= ''; - $ratepay .= ''; - $ratepay .= ''; - - echo $ratepay; + if ($this->context->cookie->wcpConsumerDeviceId) { + $consumerDeviceId = $this->context->cookie->wcpConsumerDeviceId; + } else { + $timestamp = microtime(); + $customerId = $this->getCustomerId(); + $consumerDeviceId = md5($customerId . "_" . $timestamp); + $this->context->cookie->wcpConsumerDeviceId = $consumerDeviceId; + $this->context->cookie->write(); + } + + $ratepay = ''; + $ratepay .= ''; + $ratepay .= ''; + $ratepay .= ''; + + echo $ratepay; foreach ($paymentTypes as $paymentType) { $payment = new PaymentOption(); @@ -963,7 +963,7 @@ public function hookPaymentOptions($params) : $this->l('consent')) ); - if ($this->context->smarty->templateExists($template)) { + if ($this->context->smarty->templateExists($template)) { $this->context->smarty->assign( array( "action" => $action, @@ -1227,20 +1227,20 @@ private function initiate($paymentType, $additionalData) ->setCustomerStatement($this->getCustomerStatement()) ->createConsumerMerchantCrmId($customer->email); - $consumerData = new WirecardCEE_Stdlib_ConsumerData(); - $consumerData->setIpAddress($_SERVER['REMOTE_ADDR']); - $consumerData->setUserAgent($_SERVER['HTTP_USER_AGENT']); + $consumerData = new WirecardCEE_Stdlib_ConsumerData(); + $consumerData->setIpAddress($_SERVER['REMOTE_ADDR']); + $consumerData->setUserAgent($_SERVER['HTTP_USER_AGENT']); - $init->setConsumerData($consumerData); + $init->setConsumerData($consumerData); - if ($this->context->cookie->wcpConsumerDeviceId){ - $init->consumerDeviceId = $this->context->cookie->wcpConsumerDeviceId; - unset($this->context->cookie->wcpConsumerDeviceId); - } + if ($this->context->cookie->wcpConsumerDeviceId){ + $init->consumerDeviceId = $this->context->cookie->wcpConsumerDeviceId; + unset($this->context->cookie->wcpConsumerDeviceId); + } - if (isset($additionalData['financialinstitution'])) { - $init->setFinancialInstitution($additionalData['financialinstitution']); - } + if (isset($additionalData['financialinstitution'])) { + $init->setFinancialInstitution($additionalData['financialinstitution']); + } if (Tools::strlen(Configuration::get(self::WCP_DISPLAY_TEXT))) { $init->setDisplayText(Configuration::get(self::WCP_DISPLAY_TEXT)); } From b1c900cebacc94aef1a89a32d89074d441edf4a0 Mon Sep 17 00:00:00 2001 From: Jacqueline Rinnhofer Date: Mon, 21 Aug 2017 13:08:05 +0200 Subject: [PATCH 29/42] #9 Update coding standard --- wirecardceecheckoutpage/controllers/front/payment.php | 2 +- wirecardceecheckoutpage/wirecardceecheckoutpage.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/wirecardceecheckoutpage/controllers/front/payment.php b/wirecardceecheckoutpage/controllers/front/payment.php index 4e1fe2b..f78030a 100644 --- a/wirecardceecheckoutpage/controllers/front/payment.php +++ b/wirecardceecheckoutpage/controllers/front/payment.php @@ -66,7 +66,7 @@ public function postProcess() try { $additionalData = array(); if (Tools::strlen(Tools::getValue('financialInstitution', ''))) { - $additionalData['financialinstitution'] = Tools::getValue('financialInstitution'); + $additionalData['financialinstitution'] = Tools::getValue('financialInstitution'); } $this->module->initiatePayment(Tools::getValue('paymentType'), $additionalData); } catch (Zend_Exception $e) { diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index 14d10ff..7d8e80b 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -1233,7 +1233,7 @@ private function initiate($paymentType, $additionalData) $init->setConsumerData($consumerData); - if ($this->context->cookie->wcpConsumerDeviceId){ + if ($this->context->cookie->wcpConsumerDeviceId) { $init->consumerDeviceId = $this->context->cookie->wcpConsumerDeviceId; unset($this->context->cookie->wcpConsumerDeviceId); } From 3b5c20de3218b6c4d5ed3b033da1ab53bcc38fbc Mon Sep 17 00:00:00 2001 From: Jacqueline Rinnhofer Date: Mon, 21 Aug 2017 13:09:36 +0200 Subject: [PATCH 30/42] #9 Update pluginversion --- wirecardceecheckoutpage/config.xml | 2 +- wirecardceecheckoutpage/wirecardceecheckoutpage.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/wirecardceecheckoutpage/config.xml b/wirecardceecheckoutpage/config.xml index 6ef8941..dcf9e90 100644 --- a/wirecardceecheckoutpage/config.xml +++ b/wirecardceecheckoutpage/config.xml @@ -2,7 +2,7 @@ wirecardceecheckoutpage - 2.1.0 + 2.1.1 Wirecard diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index 7d8e80b..f1b3c5a 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -143,7 +143,7 @@ public function __construct() $this->config = $this->config(); $this->name = 'wirecardceecheckoutpage'; $this->tab = 'payments_gateways'; - $this->version = '2.1.0'; + $this->version = '2.1.1'; $this->author = 'Wirecard'; $this->controllers = array('breakoutIFrame', 'confirm', 'payment', 'paymentIFrame'); $this->is_eu_compatible = 1; From f242b8532b60df72b21e66ff9e60fe7b519664ae Mon Sep 17 00:00:00 2001 From: tomazpu <32056440+tomazpu@users.noreply.github.com> Date: Tue, 26 Sep 2017 13:46:06 +0200 Subject: [PATCH 31/42] #11 Version increase --- wirecardceecheckoutpage/config.xml | 2 +- wirecardceecheckoutpage/wirecardceecheckoutpage.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/wirecardceecheckoutpage/config.xml b/wirecardceecheckoutpage/config.xml index dcf9e90..df17c25 100644 --- a/wirecardceecheckoutpage/config.xml +++ b/wirecardceecheckoutpage/config.xml @@ -2,7 +2,7 @@ wirecardceecheckoutpage - 2.1.1 + 2.1.2 Wirecard diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index f1b3c5a..372cd61 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -143,7 +143,7 @@ public function __construct() $this->config = $this->config(); $this->name = 'wirecardceecheckoutpage'; $this->tab = 'payments_gateways'; - $this->version = '2.1.1'; + $this->version = '2.1.2'; $this->author = 'Wirecard'; $this->controllers = array('breakoutIFrame', 'confirm', 'payment', 'paymentIFrame'); $this->is_eu_compatible = 1; From eec380686b7ad14993c1fe33ea61759320eee30d Mon Sep 17 00:00:00 2001 From: tomazpu <32056440+tomazpu@users.noreply.github.com> Date: Tue, 26 Sep 2017 13:52:46 +0200 Subject: [PATCH 32/42] #11 Translation of Sofort banking --- wirecardceecheckoutpage/translations/de.php | 2 +- wirecardceecheckoutpage/translations/en.php | 2 +- wirecardceecheckoutpage/wirecardceecheckoutpage.php | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/wirecardceecheckoutpage/translations/de.php b/wirecardceecheckoutpage/translations/de.php index f550d26..a512060 100644 --- a/wirecardceecheckoutpage/translations/de.php +++ b/wirecardceecheckoutpage/translations/de.php @@ -67,7 +67,7 @@ $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_f91ab041fe9d6057740394b8b7903a0f'] = 'iDEAL'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_e0f764e23bc8c486ca18c6378291afe3'] = 'giropay'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_3ff2080bb62b70687276c50da9c9f2c4'] = 'TatraPay'; -$_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_8ad65eb3da9995173280649f090218c3'] = 'SOFORT Überweisung'; +$_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_842619a36f50f72dd86d00ba73a379c4'] = 'Sofort.'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_b642d33b12d1cb0f1b8667a9bcca9951'] = 'paybox'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_6abcd8eecb4f2abb6ccfe36ef7046ba0'] = 'paysafecard'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_a41cdeba95dd125a6efea489c114a4f9'] = '@Quick'; diff --git a/wirecardceecheckoutpage/translations/en.php b/wirecardceecheckoutpage/translations/en.php index 602645c..7d415ac 100644 --- a/wirecardceecheckoutpage/translations/en.php +++ b/wirecardceecheckoutpage/translations/en.php @@ -56,7 +56,7 @@ $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_f91ab041fe9d6057740394b8b7903a0f'] = 'iDEAL'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_e0f764e23bc8c486ca18c6378291afe3'] = 'giropay'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_3ff2080bb62b70687276c50da9c9f2c4'] = 'TatraPay'; -$_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_8ad65eb3da9995173280649f090218c3'] = 'SOFORT Banking'; +$_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_842619a36f50f72dd86d00ba73a379c4'] = 'Online bank transfer.'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_b642d33b12d1cb0f1b8667a9bcca9951'] = 'paybox'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_6abcd8eecb4f2abb6ccfe36ef7046ba0'] = 'paysafecard'; $_MODULE['<{wirecardceecheckoutpage}prestashop>wirecardceecheckoutpage_a41cdeba95dd125a6efea489c114a4f9'] = '@Quick'; diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index 372cd61..c0e609e 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -1549,7 +1549,7 @@ private function getPaymentTypeInfo($type) return array('title' => $this->l('TatraPay'), 'value' => WirecardCEE_QPay_PaymentType::TATRAPAY); case self::WCP_PT_SOFORTUEBERWEISUNG: - return array('title' => $this->l('SOFORT Banking'), + return array('title' => $this->l('Online bank transfer.'), 'value' => WirecardCEE_QPay_PaymentType::SOFORTUEBERWEISUNG); case self::WCP_PT_PBX: return array('title' => $this->l('paybox'), From fe46419167ba76e5c7a5a064e6f4353085565253 Mon Sep 17 00:00:00 2001 From: tomazpu <32056440+tomazpu@users.noreply.github.com> Date: Tue, 26 Sep 2017 13:54:57 +0200 Subject: [PATCH 33/42] #11 Logo change of Sofort Banking --- .../img/payment_types/sofortueberweisung.png | Bin 7135 -> 2591 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/wirecardceecheckoutpage/views/img/payment_types/sofortueberweisung.png b/wirecardceecheckoutpage/views/img/payment_types/sofortueberweisung.png index 13094af7ceae5c28660dbe30459497d77f9c4f9d..2d37c92fdddacc515616b7c908780580912da6ef 100644 GIT binary patch literal 2591 zcmV+)3gGpLP)PP5Pfj;%IAE5aJc}ar2wuON%=l; z%A!P(B8ME#Viz{%q?X!tTM}t)0}wB!J;!m^ea0TmX6bZglSsm;)-97~UA#KuC^D z9#_>yuXePl=>-9I)W6*BJNbGphCSKmDBAn6d2;yumE9u>7m_N708T580Kw&z2*fiA zaWGZp7*!!?h=>`na*71CI(4ad8Cj|lVurdA{55w8aCZ<$=7Ei{8?JWQq3IALG-8X4qr+-rJ}|Xj+T?eRmatLp+?K>IxEQHDIC`ilc~k#!Jky;n~C$F`*nRQ?9Qu{`4~vid?x& z9Rqe{6GIvQ=6Cq&fN<#&!Q;!eAx=}YRk_=IKRT!SGCkrq0?z9|gAcA3PsAoTJ zgCL$!Ibb5M@GPO#4peeX1@neh9Rte_A@nKm`xltn>1nIdlJ<{D`>ryZZ57gu54 z;L{o6hQB0j$rlsLbE(>KbyQr4mOV15qMqGDA-l{Mkft151$R30dkR zwbRrM@%DAvX+@a=VPzGW=bDAQC>GDG(b?j&pD}Wz5ZqDDOhGuEAZJ|XS<`1MSl)=> zf+0+LV8b3XE%l&BC59f)DEobU|A<1AxVnsuP7ui8<@_}k;5f%}TtfVPDS?yIvnvz^ z>QF_2Z{4E5vP`jYf!VyKOhUOg#y@*XaX7&Q!pea9;T}aglQF*HD}E(@gJT_~C{2i~ zLv-^3lmFSGC`x2~nR>Z|wty zEESZKn&!hT;$PfB|N4ETstIPKszn6a7??#^3K0J=2l4_|_@%%IVUg1}R)}w1r$Uf# z-eP=wgg+f)lNr^|Kg53Z3Gu-`R1KC|R=)iXc5#Iyj?4cukVPSlt;6yFNzU4003iWhCKRGK) z%cKWS7~Z)Kt9`6Zq}x}B-+3FYYr@C7lv_I-jZYYEZj!_){ur($AzJ(3qfs z(iIs^nH?Te{N+2;o;dvVN3`QP)o(sw@^A<0Id(8YrZezF=tXQg{n8Zv_d1azpJ#TL z3_=011rQ;bQ#cG7VY>B*c=tBL_wN#qPQVSF*DT+-Lc6s~d+!0ujbcFxGM^lp7*Xvp?&EtkCec;>>vozyX6O*sLGDh9YY=Ac3FtsUy| znEsUw^yYPJDI)V0pU#*)c#J+iq+eThU6HR`)n5uk9E#L&svy~wTqu$OLK4SBNSX`U zQVl9j14I|X-Wc6Gq3tR2rGO@5Fii~IvrEdN|L(HL*GW+vC%BM+=GJ9&d4TU@Vnon-ao{{9)s_FoBgLFWLgsuQV^syoSXmxki=<1zBB7u zTLGjs(1nbow31^o8W@JFz{|jN?QeY5fHvgzMI?X(sv@#&rBjU|thehPXg69O89N_0gvwP~N;kTwf)%HK}fp?R{i)k`s!^ zD|`9#$)`XoU@inB`vZaAt?LZly^ZZ1p!Xh;u3ZEZbkJw%{WoD_jnvE;ym5i*;E3ko z9xLy?O?fzFvh{#?_a;$YXc_JF_X5=?gFHZRrLBr4*v6(9Q@=1PPTXPWLc@KjrlKr zhkf#xh%)=%2ORwP-69rwu$jAc`T$>Ftk+ z6C;|?sFLP2F(`3$NEr4BF)%F@y>o+bGKEL`uar<@jyUNQku&ijnU0v`Kn;_IFq+ff zJ*KXHOaFWCv3~Og_1;sMROrr#6a9qsckbYKZXx|1v*QucCa4=)Z$Sm0H+Y+L6x5Vm`v%9X6JG#cQ}dMm(f4{aI0Unw_F@U zo&h56Gy;fr%rSR`NwXkRn9zz~UA<}52?&W?^h5wQ3}Ba7U7%mQ{5yf_v7O z+!4uO15TMTyLDaMP@b>mr!s9_K+>#s7T#HMLN|sp<_iNF6?#`Tj-uSy{O6|R@8^#X zH6`@h5RV8>R=AvMc^mCsX7MOxJW?xapjt~F0Ey5}N6PBW8) zj#)3B$t(m+|AGwFjSoejeB;udym{qc{#2g4@qgadGa7{VKKuXx002ovPDHLkV1im5 B>tO%@ literal 7135 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 From 289e51acc9dfc8d05100cdbac01498c584d37b5e Mon Sep 17 00:00:00 2001 From: tomazpu <32056440+tomazpu@users.noreply.github.com> Date: Wed, 7 Feb 2018 15:55:39 +0100 Subject: [PATCH 34/42] #14 Update when ratepay script is loaded --- .../wirecardceecheckoutpage.php | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index c0e609e..722ce6f 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -932,13 +932,15 @@ public function hookPaymentOptions($params) $this->context->cookie->wcpConsumerDeviceId = $consumerDeviceId; $this->context->cookie->write(); } + if ((Configuration::get(self::WCP_INVOICE_PROVIDER) == 'ratepay' && (bool)Configuration::get(self::WCP_PT_INVOICE)) || + (Configuration::get(self::WCP_INSTALLMENT_PROVIDER) == 'ratepay' && (bool)Configuration::get(self::WCP_PT_INSTALLMENT))) { + $ratepay = ''; + $ratepay .= ''; + $ratepay .= ''; + $ratepay .= ''; - $ratepay = ''; - $ratepay .= ''; - $ratepay .= ''; - $ratepay .= ''; - - echo $ratepay; + echo $ratepay; + } foreach ($paymentTypes as $paymentType) { $payment = new PaymentOption(); From 4e66ed5ded9ef3e2103138d937a39017e5ad0660 Mon Sep 17 00:00:00 2001 From: tomazpu <32056440+tomazpu@users.noreply.github.com> Date: Wed, 7 Feb 2018 15:57:05 +0100 Subject: [PATCH 35/42] #14 Update plugin version --- wirecardceecheckoutpage/config.xml | 2 +- wirecardceecheckoutpage/wirecardceecheckoutpage.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/wirecardceecheckoutpage/config.xml b/wirecardceecheckoutpage/config.xml index df17c25..f24eab3 100644 --- a/wirecardceecheckoutpage/config.xml +++ b/wirecardceecheckoutpage/config.xml @@ -2,7 +2,7 @@ wirecardceecheckoutpage - 2.1.2 + 2.1.3 Wirecard diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index 722ce6f..b103ed4 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -143,7 +143,7 @@ public function __construct() $this->config = $this->config(); $this->name = 'wirecardceecheckoutpage'; $this->tab = 'payments_gateways'; - $this->version = '2.1.2'; + $this->version = '2.1.3'; $this->author = 'Wirecard'; $this->controllers = array('breakoutIFrame', 'confirm', 'payment', 'paymentIFrame'); $this->is_eu_compatible = 1; From c4dd8a747ccfcf7520d22475f391fce55f7414ec Mon Sep 17 00:00:00 2001 From: Jacqueline Rinnhofer Date: Wed, 26 Sep 2018 10:18:37 +0200 Subject: [PATCH 36/42] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b84e3e4..eb28837 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # Wirecard Checkout Page plugin for PrestaShop [![License](https://img.shields.io/badge/license-GPLv2-blue.svg)](https://raw.githubusercontent.com/wirecard/prestashop-wcp/master/LICENSE) -[![PrestaShop](https://img.shields.io/badge/PrestaShop-v1.7.2.0-green.svg)](https://www.prestashop.com/) +[![PrestaShop](https://img.shields.io/badge/PrestaShop-v1.7.2.2-green.svg)](https://www.prestashop.com/) [![PHP v5.6](https://img.shields.io/badge/php-v5.6-yellow.svg)](http://www.php.net) [![PHP v7.0](https://img.shields.io/badge/php-v7.0-yellow.svg)](http://www.php.net) [![PHP v7.1](https://img.shields.io/badge/php-v7.1-yellow.svg)](http://www.php.net) From 214ca6f613ef91dcc12ef4d576dc7a2d863d499c Mon Sep 17 00:00:00 2001 From: serucee Date: Fri, 9 Nov 2018 11:24:02 +0100 Subject: [PATCH 37/42] #16 Update bancontact naming and birthdate validation --- .../wirecardceecheckoutpage.php | 37 ++++++++++++++++--- 1 file changed, 31 insertions(+), 6 deletions(-) diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index b103ed4..e18d18f 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -102,7 +102,7 @@ class WirecardCEECheckoutPage extends PaymentModule const WCP_PT_TRUSTPAY = 'WCP_PT_TRUSTPAY'; const WCP_PT_INVOICE = 'WCP_PT_INVOICE'; const WCP_PT_INSTALLMENT = 'WCP_PT_INSTALLMENT'; - const WCP_PT_BANCONTACT = 'WCP_PT_BANCONTACT'; + const WCP_PT_BANCONTACT_MISTERCASH = 'WCP_PT_BANCONTACT_MISTERCASH'; const WCP_PT_P24 = 'WCP_PT_PRZELEWY24'; const WCP_PT_MONETA = 'WCP_PT_MONETA'; const WCP_PT_POLI = 'WCP_PT_POLI'; @@ -1280,6 +1280,7 @@ private function initiate($paymentType, $additionalData) $init = $this->setConsumerInformation($init); } + return $init->initiate()->getRedirectUrl(); } @@ -1330,14 +1331,38 @@ private function setConsumerInformation(WirecardCEE_QPay_FrontendClient $request ->setIpAddress($this->getConsumerIpAddress()); $customer = new Customer($this->getOrder()->id_customer); - $consumerData->setBirthDate(DateTime::createFromFormat("Y-m-d", $customer->birthday)) - ->setEmail($customer->email); - $request->setConsumerData($consumerData); + $consumerData->setBirthDate($this->getValidDate($customer->birthday, "Y-m-d")) + ->setEmail($customer->email); return $request; } + /* + * Returns today's date if $date is invalid + */ + public function getValidDate($date, $format) + { + if (!empty($date) && strtotime($date) !== false) { + if ($this->isValidDateFormat($date)) { + return DateTime::createFromFormat($format, $date); + } + } + return new DateTime(); + } + + /* + * Checks if format is Y-m-d + */ + public function isValidDateFormat($date) + { + if (preg_match("/^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])$/", $date)) { + return true; + } else { + return false; + } + } + public function confirmResponse() { if (!$this->active) { @@ -1518,7 +1543,7 @@ private function getPaymentTypes() self::WCP_PT_EPS, self::WCP_PT_IDL, self::WCP_PT_GIROPAY, self::WCP_PT_TATRAPAY, self::WCP_PT_SOFORTUEBERWEISUNG, self::WCP_PT_PBX, self::WCP_PT_QUICK, self::WCP_PT_PAYPAL, self::WCP_PT_EPAY_BG, self::WCP_PT_SEPA_DD, self::WCP_PT_TRUSTPAY, self::WCP_PT_INVOICE, - self::WCP_PT_INSTALLMENT, self::WCP_PT_BANCONTACT, self::WCP_PT_P24, self::WCP_PT_MONETA, + self::WCP_PT_INSTALLMENT, self::WCP_PT_BANCONTACT_MISTERCASH, self::WCP_PT_P24, self::WCP_PT_MONETA, self::WCP_PT_POLI, self::WCP_PT_EKONTO, self::WCP_PT_TRUSTLY, self::WCP_PT_SKRILLWALLET, self::WCP_PT_VOUCHER); } @@ -1580,7 +1605,7 @@ private function getPaymentTypeInfo($type) case self::WCP_PT_INSTALLMENT: return array('title' => $this->l('Installment'), 'value' => WirecardCEE_QPay_PaymentType::INSTALLMENT); - case self::WCP_PT_BANCONTACT: + case self::WCP_PT_BANCONTACT_MISTERCASH: return array('title' => $this->l('Bancontact'), 'value' => WirecardCEE_QPay_PaymentType::BMC); case self::WCP_PT_P24: From b528010198df78d80a41ccf39becae28495ff95c Mon Sep 17 00:00:00 2001 From: serucee Date: Fri, 9 Nov 2018 11:26:03 +0100 Subject: [PATCH 38/42] #16 Update version --- wirecardceecheckoutpage/config.xml | 2 +- wirecardceecheckoutpage/wirecardceecheckoutpage.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/wirecardceecheckoutpage/config.xml b/wirecardceecheckoutpage/config.xml index f24eab3..a398224 100644 --- a/wirecardceecheckoutpage/config.xml +++ b/wirecardceecheckoutpage/config.xml @@ -2,7 +2,7 @@ wirecardceecheckoutpage - 2.1.3 + 2.1.4 Wirecard diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index e18d18f..a162e8e 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -143,7 +143,7 @@ public function __construct() $this->config = $this->config(); $this->name = 'wirecardceecheckoutpage'; $this->tab = 'payments_gateways'; - $this->version = '2.1.3'; + $this->version = '2.1.4'; $this->author = 'Wirecard'; $this->controllers = array('breakoutIFrame', 'confirm', 'payment', 'paymentIFrame'); $this->is_eu_compatible = 1; From 976502bf07658e77676f70f916fe7ae8dd82d538 Mon Sep 17 00:00:00 2001 From: serucee Date: Mon, 12 Nov 2018 09:58:20 +0100 Subject: [PATCH 39/42] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index eb28837..01d2020 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # Wirecard Checkout Page plugin for PrestaShop [![License](https://img.shields.io/badge/license-GPLv2-blue.svg)](https://raw.githubusercontent.com/wirecard/prestashop-wcp/master/LICENSE) -[![PrestaShop](https://img.shields.io/badge/PrestaShop-v1.7.2.2-green.svg)](https://www.prestashop.com/) +[![PrestaShop](https://img.shields.io/badge/PrestaShop-v1.7.4.3-green.svg)](https://www.prestashop.com/) [![PHP v5.6](https://img.shields.io/badge/php-v5.6-yellow.svg)](http://www.php.net) [![PHP v7.0](https://img.shields.io/badge/php-v7.0-yellow.svg)](http://www.php.net) [![PHP v7.1](https://img.shields.io/badge/php-v7.1-yellow.svg)](http://www.php.net) From a7c48a58e79d3a39877681f8da215cf50b51cfa7 Mon Sep 17 00:00:00 2001 From: Michael Bretterklieber Date: Thu, 28 Feb 2019 10:10:36 +0100 Subject: [PATCH 40/42] Fix issue with birthday field for invoice/installment Fix issue with Consumer data --- .../wirecardceecheckoutpage.php | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index a162e8e..6018879 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -41,6 +41,11 @@ require_once "library/wirecardcee_autoload.php"; +/** + * Class WirecardCEECheckoutPage + * + * @method string l() l($key) + */ class WirecardCEECheckoutPage extends PaymentModule { const WCP_CUSTOMER_ID_DEMO = 'D200001'; @@ -912,8 +917,10 @@ public function hookPaymentOptions($params) $customer_id = $params['cookie']->id_customer; $customer = new Customer($customer_id); + $age = 0; + if (Tools::strlen($customer->birthday) && $customer->birthday != '0000-00-00') { $age = (new DateTime())->diff(DateTime::createFromFormat("Y-m-d", $customer->birthday))->y; - + } $result = array(); unset($this->context->cookie->qpayRedirectUrl); @@ -1127,7 +1134,10 @@ public function initiatePayment($paymentType, $additionalData) /** @var int $age - age from customer object */ $customer = new Customer($this->context->customer->id); + $age = 0; + if (Tools::strlen($customer->birthday) && $customer->birthday != '0000-00-00') { $age = (new DateTime())->diff(DateTime::createFromFormat("Y-m-d", $customer->birthday))->y; + } if ($age < 18 && count(array_intersect(array_flip(Tools::getAllValues()), $keys_to_check)) < count($keys_to_check)) { // redirect back because some params are missing @@ -1151,6 +1161,9 @@ public function initiatePayment($paymentType, $additionalData) ); die(); } + + $customer->birthday = $birthdate->format('Y-m-d'); + $customer->save(); } } @@ -1335,6 +1348,8 @@ private function setConsumerInformation(WirecardCEE_QPay_FrontendClient $request $consumerData->setBirthDate($this->getValidDate($customer->birthday, "Y-m-d")) ->setEmail($customer->email); + $request->setConsumerData($consumerData); + return $request; } From e89690d517c368da08d8893b886e6eb83406b98e Mon Sep 17 00:00:00 2001 From: Michael Bretterklieber Date: Thu, 28 Feb 2019 10:11:16 +0100 Subject: [PATCH 41/42] bump prestashop version info --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 01d2020..f60026b 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # Wirecard Checkout Page plugin for PrestaShop [![License](https://img.shields.io/badge/license-GPLv2-blue.svg)](https://raw.githubusercontent.com/wirecard/prestashop-wcp/master/LICENSE) -[![PrestaShop](https://img.shields.io/badge/PrestaShop-v1.7.4.3-green.svg)](https://www.prestashop.com/) +[![PrestaShop](https://img.shields.io/badge/PrestaShop-v1.7.5.0-green.svg)](https://www.prestashop.com/) [![PHP v5.6](https://img.shields.io/badge/php-v5.6-yellow.svg)](http://www.php.net) [![PHP v7.0](https://img.shields.io/badge/php-v7.0-yellow.svg)](http://www.php.net) [![PHP v7.1](https://img.shields.io/badge/php-v7.1-yellow.svg)](http://www.php.net) From 61d20de3b112dfe35042bf8731ef42b056aefcd5 Mon Sep 17 00:00:00 2001 From: Jacqueline Rinnhofer Date: Mon, 4 Mar 2019 14:29:08 +0100 Subject: [PATCH 42/42] Update plugin version --- wirecardceecheckoutpage/config.xml | 2 +- wirecardceecheckoutpage/wirecardceecheckoutpage.php | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/wirecardceecheckoutpage/config.xml b/wirecardceecheckoutpage/config.xml index a398224..73edee7 100644 --- a/wirecardceecheckoutpage/config.xml +++ b/wirecardceecheckoutpage/config.xml @@ -2,7 +2,7 @@ wirecardceecheckoutpage - 2.1.4 + 2.1.5 Wirecard diff --git a/wirecardceecheckoutpage/wirecardceecheckoutpage.php b/wirecardceecheckoutpage/wirecardceecheckoutpage.php index 6018879..7f268e9 100644 --- a/wirecardceecheckoutpage/wirecardceecheckoutpage.php +++ b/wirecardceecheckoutpage/wirecardceecheckoutpage.php @@ -148,7 +148,7 @@ public function __construct() $this->config = $this->config(); $this->name = 'wirecardceecheckoutpage'; $this->tab = 'payments_gateways'; - $this->version = '2.1.4'; + $this->version = '2.1.5'; $this->author = 'Wirecard'; $this->controllers = array('breakoutIFrame', 'confirm', 'payment', 'paymentIFrame'); $this->is_eu_compatible = 1; @@ -919,7 +919,7 @@ public function hookPaymentOptions($params) $customer = new Customer($customer_id); $age = 0; if (Tools::strlen($customer->birthday) && $customer->birthday != '0000-00-00') { - $age = (new DateTime())->diff(DateTime::createFromFormat("Y-m-d", $customer->birthday))->y; + $age = (new DateTime())->diff(DateTime::createFromFormat("Y-m-d", $customer->birthday))->y; } $result = array(); @@ -1136,7 +1136,7 @@ public function initiatePayment($paymentType, $additionalData) $customer = new Customer($this->context->customer->id); $age = 0; if (Tools::strlen($customer->birthday) && $customer->birthday != '0000-00-00') { - $age = (new DateTime())->diff(DateTime::createFromFormat("Y-m-d", $customer->birthday))->y; + $age = (new DateTime())->diff(DateTime::createFromFormat("Y-m-d", $customer->birthday))->y; } if ($age < 18 && count(array_intersect(array_flip(Tools::getAllValues()), $keys_to_check)) < count($keys_to_check)) {