Version Notes
* OneStepCheckout now supported
* more logs during the checkout
* better log view
* no cvc for maestro now provided
Download this release
Release Info
| Developer | PayIntelligent |
| Extension | Paymill_Paymill |
| Version | 3.2.0 |
| Comparing to | |
| See all releases | |
Code changes from version 3.1.0 to 3.2.0
- app/code/community/Paymill/Paymill/Block/Adminhtml/Log/Grid.php +11 -9
- app/code/community/Paymill/Paymill/Block/Adminhtml/Log/View.php +46 -0
- app/code/community/Paymill/Paymill/Block/Adminhtml/Log/View/Plane.php +65 -0
- app/code/community/Paymill/Paymill/Block/Adminhtml/Log/View/Tabs.php +34 -0
- app/code/community/Paymill/Paymill/Block/Payment/Form/PaymentFormAbstract.php +48 -0
- app/code/community/Paymill/Paymill/Block/Payment/Form/PaymentFormCreditcard.php +20 -1
- app/code/community/Paymill/Paymill/Block/Payment/Form/PaymentFormDirectdebit.php +15 -2
- app/code/community/Paymill/Paymill/Helper/Data.php +0 -27
- app/code/community/Paymill/Paymill/Helper/FastCheckoutHelper.php +15 -1
- app/code/community/Paymill/Paymill/Helper/OptionHelper.php +2 -6
- app/code/community/Paymill/Paymill/Helper/PaymentHelper.php +3 -136
- app/code/community/Paymill/Paymill/Model/Log/Search.php +38 -0
- app/code/community/Paymill/Paymill/Model/Method/MethodModelAbstract.php +38 -34
- app/code/community/Paymill/Paymill/Model/Method/MethodModelCreditcard.php +18 -14
- app/code/community/Paymill/Paymill/controllers/Adminhtml/LogController.php +21 -2
- app/code/community/Paymill/Paymill/etc/config.xml +8 -1
- app/code/community/Paymill/Paymill/etc/system.xml +23 -35
- app/design/adminhtml/base/default/template/paymill/payment/info/creditcard.phtml +0 -14
- app/design/adminhtml/base/default/template/paymill/payment/info/directdebit.phtml +0 -14
- app/design/frontend/base/default/layout/paymill.xml +2 -1
- app/design/frontend/base/default/template/paymill/payment/form/creditcard.phtml +0 -65
- app/design/frontend/base/default/template/paymill/payment/form/directdebit.phtml +0 -42
- app/design/frontend/base/default/template/paymill/payment/info/creditcard.phtml +0 -6
- app/design/frontend/base/default/template/paymill/payment/info/directdebit.phtml +0 -6
- app/etc/modules/Paymill_Paymill.xml +0 -16
- app/locale/de_DE/Paymill_Paymill.csv +4 -3
- app/locale/en_GB/Paymill_Paymill.csv +1 -0
- app/locale/en_US/Paymill_Paymill.csv +1 -0
- app/locale/es_ES/Paymill_Paymill.csv +56 -0
- js/paymill/paymentForm.js +188 -121
- lib/Services/Paymill/PaymentProcessor.php +36 -16
- package.xml +9 -7
- skin/frontend/base/default/css/paymill/logo.css +63 -11
app/code/community/Paymill/Paymill/Block/Adminhtml/Log/Grid.php
CHANGED
|
@@ -84,7 +84,17 @@ class Paymill_Paymill_Block_Adminhtml_Log_Grid extends Mage_Adminhtml_Block_Widg
|
|
| 84 |
$this->setCollection($collection);
|
| 85 |
return parent::_prepareCollection();
|
| 86 |
}
|
| 87 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 88 |
/**
|
| 89 |
* Prepare Columns
|
| 90 |
*
|
|
@@ -104,14 +114,6 @@ class Paymill_Paymill_Block_Adminhtml_Log_Grid extends Mage_Adminhtml_Block_Widg
|
|
| 104 |
'header' => Mage::helper('paymill')->__('paymill_backend_log_merchant_info'),
|
| 105 |
'index' => 'merchant_info',
|
| 106 |
));
|
| 107 |
-
$this->addColumn('dev_info', array(
|
| 108 |
-
'header' => Mage::helper('paymill')->__('paymill_backend_log_dev_info'),
|
| 109 |
-
'index' => 'dev_info',
|
| 110 |
-
));
|
| 111 |
-
$this->addColumn('dev_info_additional', array(
|
| 112 |
-
'header' => Mage::helper('paymill')->__('paymill_backend_log_dev_info_additional'),
|
| 113 |
-
'index' => 'dev_info_additional',
|
| 114 |
-
));
|
| 115 |
|
| 116 |
return parent::_prepareColumns();
|
| 117 |
}
|
| 84 |
$this->setCollection($collection);
|
| 85 |
return parent::_prepareCollection();
|
| 86 |
}
|
| 87 |
+
|
| 88 |
+
/**
|
| 89 |
+
* Gets Row Url
|
| 90 |
+
*
|
| 91 |
+
* @return string
|
| 92 |
+
*/
|
| 93 |
+
public function getRowUrl($row)
|
| 94 |
+
{
|
| 95 |
+
return $this->getUrl('*/*/view', array('id' => $row->getId()));
|
| 96 |
+
}
|
| 97 |
+
|
| 98 |
/**
|
| 99 |
* Prepare Columns
|
| 100 |
*
|
| 114 |
'header' => Mage::helper('paymill')->__('paymill_backend_log_merchant_info'),
|
| 115 |
'index' => 'merchant_info',
|
| 116 |
));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 117 |
|
| 118 |
return parent::_prepareColumns();
|
| 119 |
}
|
app/code/community/Paymill/Paymill/Block/Adminhtml/Log/View.php
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
|
| 3 |
+
/**
|
| 4 |
+
* Magento
|
| 5 |
+
*
|
| 6 |
+
* NOTICE OF LICENSE
|
| 7 |
+
*
|
| 8 |
+
* This source file is subject to the Open Software License (OSL 3.0)
|
| 9 |
+
* that is bundled with this package in the file LICENSE.txt.
|
| 10 |
+
* It is also available through the world-wide-web at this URL:
|
| 11 |
+
* http://opensource.org/licenses/osl-3.0.php
|
| 12 |
+
* If you did not receive a copy of the license and are unable to
|
| 13 |
+
* obtain it through the world-wide-web, please send an email
|
| 14 |
+
* to license@magentocommerce.com so we can send you a copy immediately.
|
| 15 |
+
*
|
| 16 |
+
* @category Paymill
|
| 17 |
+
* @package Paymill_Paymill
|
| 18 |
+
* @copyright Copyright (c) 2013 PAYMILL GmbH (https://paymill.com/en-gb/)
|
| 19 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 20 |
+
*/
|
| 21 |
+
class Paymill_Paymill_Block_Adminhtml_Log_View extends Mage_Adminhtml_Block_Widget_View_Container
|
| 22 |
+
{
|
| 23 |
+
/**
|
| 24 |
+
* Construct
|
| 25 |
+
*/
|
| 26 |
+
public function __construct()
|
| 27 |
+
{
|
| 28 |
+
$this->_objectId = 'id';
|
| 29 |
+
$this->_controller = 'adminhtml_log';
|
| 30 |
+
$this->_mode = 'view';
|
| 31 |
+
$this->_headerText = Mage::helper('paymill')->__('Log Entry');
|
| 32 |
+
|
| 33 |
+
parent::__construct();
|
| 34 |
+
|
| 35 |
+
$this->_removeButton('edit');
|
| 36 |
+
}
|
| 37 |
+
|
| 38 |
+
/**
|
| 39 |
+
* @see Mage_Adminhtml_Block_Widget_View_Container::_prepareLayout()
|
| 40 |
+
*/
|
| 41 |
+
protected function _prepareLayout()
|
| 42 |
+
{
|
| 43 |
+
$this->setChild('plane', $this->getLayout()->createBlock('paymill/' . $this->_controller . '_view_plane'));
|
| 44 |
+
}
|
| 45 |
+
|
| 46 |
+
}
|
app/code/community/Paymill/Paymill/Block/Adminhtml/Log/View/Plane.php
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
|
| 3 |
+
/**
|
| 4 |
+
* Magento
|
| 5 |
+
*
|
| 6 |
+
* NOTICE OF LICENSE
|
| 7 |
+
*
|
| 8 |
+
* This source file is subject to the Open Software License (OSL 3.0)
|
| 9 |
+
* that is bundled with this package in the file LICENSE.txt.
|
| 10 |
+
* It is also available through the world-wide-web at this URL:
|
| 11 |
+
* http://opensource.org/licenses/osl-3.0.php
|
| 12 |
+
* If you did not receive a copy of the license and are unable to
|
| 13 |
+
* obtain it through the world-wide-web, please send an email
|
| 14 |
+
* to license@magentocommerce.com so we can send you a copy immediately.
|
| 15 |
+
*
|
| 16 |
+
* @category Paymill
|
| 17 |
+
* @package Paymill_Paymill
|
| 18 |
+
* @copyright Copyright (c) 2013 PAYMILL GmbH (https://paymill.com/en-gb/)
|
| 19 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 20 |
+
*/
|
| 21 |
+
class Paymill_Paymill_Block_Adminhtml_Log_View_Plane extends Mage_Adminhtml_Block_Widget_Form
|
| 22 |
+
{
|
| 23 |
+
|
| 24 |
+
/**
|
| 25 |
+
* Prepare form before rendering HTML
|
| 26 |
+
*
|
| 27 |
+
* @return Paymill_Paymill_Block_Adminhtml_Log_View_Plane
|
| 28 |
+
*/
|
| 29 |
+
protected function _prepareForm()
|
| 30 |
+
{
|
| 31 |
+
$this->setTemplate('paymill/log/view.phtml');
|
| 32 |
+
return parent::_prepareForm();
|
| 33 |
+
}
|
| 34 |
+
|
| 35 |
+
/**
|
| 36 |
+
* Returns Log Model
|
| 37 |
+
*
|
| 38 |
+
* @return Paymill_Paymill_Model_Log
|
| 39 |
+
*/
|
| 40 |
+
public function getEntry()
|
| 41 |
+
{
|
| 42 |
+
return Mage::registry('paymill_log_entry');
|
| 43 |
+
}
|
| 44 |
+
|
| 45 |
+
/**
|
| 46 |
+
* Gets the formatted Request Xml
|
| 47 |
+
*
|
| 48 |
+
* @return string
|
| 49 |
+
*/
|
| 50 |
+
public function getDevInfo()
|
| 51 |
+
{
|
| 52 |
+
return $this->getEntry()->getDevInfo();
|
| 53 |
+
}
|
| 54 |
+
|
| 55 |
+
/**
|
| 56 |
+
* Gets the formatted Response Xml
|
| 57 |
+
*
|
| 58 |
+
* @return string
|
| 59 |
+
*/
|
| 60 |
+
public function getDevInfoAdditional()
|
| 61 |
+
{
|
| 62 |
+
return $this->getEntry()->getDevInfoAdditional();
|
| 63 |
+
}
|
| 64 |
+
|
| 65 |
+
}
|
app/code/community/Paymill/Paymill/Block/Adminhtml/Log/View/Tabs.php
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
|
| 3 |
+
/**
|
| 4 |
+
* Magento
|
| 5 |
+
*
|
| 6 |
+
* NOTICE OF LICENSE
|
| 7 |
+
*
|
| 8 |
+
* This source file is subject to the Open Software License (OSL 3.0)
|
| 9 |
+
* that is bundled with this package in the file LICENSE.txt.
|
| 10 |
+
* It is also available through the world-wide-web at this URL:
|
| 11 |
+
* http://opensource.org/licenses/osl-3.0.php
|
| 12 |
+
* If you did not receive a copy of the license and are unable to
|
| 13 |
+
* obtain it through the world-wide-web, please send an email
|
| 14 |
+
* to license@magentocommerce.com so we can send you a copy immediately.
|
| 15 |
+
*
|
| 16 |
+
* @category Paymill
|
| 17 |
+
* @package Paymill_Paymill
|
| 18 |
+
* @copyright Copyright (c) 2013 PAYMILL GmbH (https://paymill.com/en-gb/)
|
| 19 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 20 |
+
*/
|
| 21 |
+
class Paymill_Paymill_Block_Adminhtml_Log_View_Tabs extends Mage_Adminhtml_Block_Widget_Tabs
|
| 22 |
+
{
|
| 23 |
+
/**
|
| 24 |
+
* Construct
|
| 25 |
+
*/
|
| 26 |
+
public function __construct()
|
| 27 |
+
{
|
| 28 |
+
parent::__construct();
|
| 29 |
+
$this->setId('log_view_tabs');
|
| 30 |
+
$this->setDestElementId('log_view');
|
| 31 |
+
$this->setTitle(Mage::helper('paymill')->__('Log Information View'));
|
| 32 |
+
}
|
| 33 |
+
|
| 34 |
+
}
|
app/code/community/Paymill/Paymill/Block/Payment/Form/PaymentFormAbstract.php
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
|
| 3 |
+
/**
|
| 4 |
+
* Magento
|
| 5 |
+
*
|
| 6 |
+
* NOTICE OF LICENSE
|
| 7 |
+
*
|
| 8 |
+
* This source file is subject to the Open Software License (OSL 3.0)
|
| 9 |
+
* that is bundled with this package in the file LICENSE.txt.
|
| 10 |
+
* It is also available through the world-wide-web at this URL:
|
| 11 |
+
* http://opensource.org/licenses/osl-3.0.php
|
| 12 |
+
* If you did not receive a copy of the license and are unable to
|
| 13 |
+
* obtain it through the world-wide-web, please send an email
|
| 14 |
+
* to license@magentocommerce.com so we can send you a copy immediately.
|
| 15 |
+
*
|
| 16 |
+
* @category Paymill
|
| 17 |
+
* @package Paymill_Paymill
|
| 18 |
+
* @copyright Copyright (c) 2013 PAYMILL GmbH (https://paymill.com/en-gb/)
|
| 19 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 20 |
+
*/
|
| 21 |
+
class Paymill_Paymill_Block_Payment_Form_PaymentFormAbstract extends Mage_Payment_Block_Form
|
| 22 |
+
{
|
| 23 |
+
public function getPaymentData($code)
|
| 24 |
+
{
|
| 25 |
+
return Mage::helper('paymill/fastCheckoutHelper')->getPaymentData($code);
|
| 26 |
+
}
|
| 27 |
+
|
| 28 |
+
public function getPaymentEntry($code, $key)
|
| 29 |
+
{
|
| 30 |
+
$data = $this->getPaymentData($code);
|
| 31 |
+
return array_key_exists($key, $data) ? $data[$key] : null;
|
| 32 |
+
}
|
| 33 |
+
|
| 34 |
+
public function isPaymentDataAvailable($code)
|
| 35 |
+
{
|
| 36 |
+
return Mage::helper('paymill/fastCheckoutHelper')->hasData($code);
|
| 37 |
+
}
|
| 38 |
+
|
| 39 |
+
/**
|
| 40 |
+
* Returns a boolean deciding if the template is going to be displayed of not
|
| 41 |
+
* @param String $code payment code
|
| 42 |
+
* @return boolean
|
| 43 |
+
*/
|
| 44 |
+
public function isNormalCheckout($code)
|
| 45 |
+
{
|
| 46 |
+
return !Mage::helper('paymill/fastCheckoutHelper')->hasData($code) ? 'false' : 'true';
|
| 47 |
+
}
|
| 48 |
+
}
|
app/code/community/Paymill/Paymill/Block/Payment/Form/PaymentFormCreditcard.php
CHANGED
|
@@ -18,7 +18,7 @@
|
|
| 18 |
* @copyright Copyright (c) 2013 PAYMILL GmbH (https://paymill.com/en-gb/)
|
| 19 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 20 |
*/
|
| 21 |
-
class Paymill_Paymill_Block_Payment_Form_PaymentFormCreditcard extends
|
| 22 |
{
|
| 23 |
|
| 24 |
/**
|
|
@@ -55,5 +55,24 @@ class Paymill_Paymill_Block_Payment_Form_PaymentFormCreditcard extends Mage_Paym
|
|
| 55 |
|
| 56 |
return $years;
|
| 57 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 58 |
|
| 59 |
}
|
| 18 |
* @copyright Copyright (c) 2013 PAYMILL GmbH (https://paymill.com/en-gb/)
|
| 19 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 20 |
*/
|
| 21 |
+
class Paymill_Paymill_Block_Payment_Form_PaymentFormCreditcard extends Paymill_Paymill_Block_Payment_Form_PaymentFormAbstract
|
| 22 |
{
|
| 23 |
|
| 24 |
/**
|
| 55 |
|
| 56 |
return $years;
|
| 57 |
}
|
| 58 |
+
|
| 59 |
+
public function getPaymentData($code)
|
| 60 |
+
{
|
| 61 |
+
$payment = parent::getPaymentData($code);
|
| 62 |
+
|
| 63 |
+
$data = array();
|
| 64 |
+
if (!is_null($payment)) {
|
| 65 |
+
$data['cc_number'] = '************' . $payment['last4'];
|
| 66 |
+
$data['expire_year'] = $payment['expire_year'];
|
| 67 |
+
$data['expire_month'] = $payment['expire_month'];
|
| 68 |
+
$data['cvc'] = '***';
|
| 69 |
+
$data['card_holder'] = $payment['card_holder'];
|
| 70 |
+
$data['card_type'] = $payment['card_type'];
|
| 71 |
+
}
|
| 72 |
+
|
| 73 |
+
return $data;
|
| 74 |
+
}
|
| 75 |
+
|
| 76 |
+
|
| 77 |
|
| 78 |
}
|
app/code/community/Paymill/Paymill/Block/Payment/Form/PaymentFormDirectdebit.php
CHANGED
|
@@ -18,7 +18,7 @@
|
|
| 18 |
* @copyright Copyright (c) 2013 PAYMILL GmbH (https://paymill.com/en-gb/)
|
| 19 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 20 |
*/
|
| 21 |
-
class Paymill_Paymill_Block_Payment_Form_PaymentFormDirectdebit extends
|
| 22 |
{
|
| 23 |
|
| 24 |
/**
|
|
@@ -29,5 +29,18 @@ class Paymill_Paymill_Block_Payment_Form_PaymentFormDirectdebit extends Mage_Pay
|
|
| 29 |
parent::_construct();
|
| 30 |
$this->setTemplate('paymill/payment/form/directdebit.phtml');
|
| 31 |
}
|
| 32 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 33 |
}
|
| 18 |
* @copyright Copyright (c) 2013 PAYMILL GmbH (https://paymill.com/en-gb/)
|
| 19 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 20 |
*/
|
| 21 |
+
class Paymill_Paymill_Block_Payment_Form_PaymentFormDirectdebit extends Paymill_Paymill_Block_Payment_Form_PaymentFormAbstract
|
| 22 |
{
|
| 23 |
|
| 24 |
/**
|
| 29 |
parent::_construct();
|
| 30 |
$this->setTemplate('paymill/payment/form/directdebit.phtml');
|
| 31 |
}
|
| 32 |
+
|
| 33 |
+
public function getPaymentData($code)
|
| 34 |
+
{
|
| 35 |
+
$payment = parent::getPaymentData($code);
|
| 36 |
+
|
| 37 |
+
$data = array();
|
| 38 |
+
if (!is_null($payment)) {
|
| 39 |
+
$data['code'] = $payment['code'];
|
| 40 |
+
$data['holder'] = $payment['holder'];
|
| 41 |
+
$data['account'] = $payment['account'];
|
| 42 |
+
}
|
| 43 |
+
|
| 44 |
+
return $data;
|
| 45 |
+
}
|
| 46 |
}
|
app/code/community/Paymill/Paymill/Helper/Data.php
CHANGED
|
@@ -62,33 +62,6 @@ class Paymill_Paymill_Helper_Data extends Mage_Core_Helper_Abstract
|
|
| 62 |
return (string) Mage::getConfig()->getNode()->modules->Paymill_Paymill->version;
|
| 63 |
}
|
| 64 |
|
| 65 |
-
/**
|
| 66 |
-
* Returns a boolean deciding if the template is going to be displayed of not
|
| 67 |
-
* @param String $code payment code
|
| 68 |
-
* @return boolean
|
| 69 |
-
*/
|
| 70 |
-
public function showTemplateForm($code)
|
| 71 |
-
{
|
| 72 |
-
$optionHelper = Mage::helper('paymill/optionHelper');
|
| 73 |
-
$fcHelper = Mage::helper('paymill/fastCheckoutHelper');
|
| 74 |
-
|
| 75 |
-
return !($optionHelper->isFastCheckoutEnabled() && $fcHelper->hasData($code));
|
| 76 |
-
}
|
| 77 |
-
|
| 78 |
-
/**
|
| 79 |
-
* Returns the div tag opening defining the visibility of the payment form
|
| 80 |
-
* @param String $code
|
| 81 |
-
* @return string
|
| 82 |
-
*/
|
| 83 |
-
public function getFormTypeForDisplay($code)
|
| 84 |
-
{
|
| 85 |
-
if ($this->showTemplateForm($code)) {
|
| 86 |
-
return "<div>";
|
| 87 |
-
} else {
|
| 88 |
-
return "<div style='display:none;'>";
|
| 89 |
-
}
|
| 90 |
-
}
|
| 91 |
-
|
| 92 |
/**
|
| 93 |
* Returns the Source string passt to every transaction
|
| 94 |
* @return String Source
|
| 62 |
return (string) Mage::getConfig()->getNode()->modules->Paymill_Paymill->version;
|
| 63 |
}
|
| 64 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 65 |
/**
|
| 66 |
* Returns the Source string passt to every transaction
|
| 67 |
* @return String Source
|
app/code/community/Paymill/Paymill/Helper/FastCheckoutHelper.php
CHANGED
|
@@ -71,8 +71,22 @@ class Paymill_Paymill_Helper_FastCheckoutHelper extends Mage_Core_Helper_Abstrac
|
|
| 71 |
if (Mage::getModel("paymill/fastcheckout")->hasFcData($userId, $code)) {
|
| 72 |
return true;
|
| 73 |
}
|
|
|
|
| 74 |
return false;
|
| 75 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 76 |
|
| 77 |
/**
|
| 78 |
* Saves the dataset into the database
|
|
@@ -80,7 +94,7 @@ class Paymill_Paymill_Helper_FastCheckoutHelper extends Mage_Core_Helper_Abstrac
|
|
| 80 |
* @param String $clientId Description
|
| 81 |
* @param String $name Description
|
| 82 |
*/
|
| 83 |
-
public function saveData($code, $clientId, $paymentId)
|
| 84 |
{
|
| 85 |
$userId = Mage::helper("paymill/customerHelper")->getUserId();
|
| 86 |
if (isset($userId)) {
|
| 71 |
if (Mage::getModel("paymill/fastcheckout")->hasFcData($userId, $code)) {
|
| 72 |
return true;
|
| 73 |
}
|
| 74 |
+
|
| 75 |
return false;
|
| 76 |
}
|
| 77 |
+
|
| 78 |
+
public function getPaymentData($code)
|
| 79 |
+
{
|
| 80 |
+
$privateKey = Mage::helper('paymill/optionHelper')->getPrivateKey();
|
| 81 |
+
$apiUrl = Mage::helper('paymill')->getApiUrl();
|
| 82 |
+
$payment = null;
|
| 83 |
+
if ($this->hasData($code)) {
|
| 84 |
+
$payments = new Services_Paymill_Payments($privateKey, $apiUrl);
|
| 85 |
+
$payment = $payments->getOne($this->getPaymentId($code));
|
| 86 |
+
}
|
| 87 |
+
|
| 88 |
+
return $payment;
|
| 89 |
+
}
|
| 90 |
|
| 91 |
/**
|
| 92 |
* Saves the dataset into the database
|
| 94 |
* @param String $clientId Description
|
| 95 |
* @param String $name Description
|
| 96 |
*/
|
| 97 |
+
public function saveData($code, $clientId, $paymentId = null)
|
| 98 |
{
|
| 99 |
$userId = Mage::helper("paymill/customerHelper")->getUserId();
|
| 100 |
if (isset($userId)) {
|
app/code/community/Paymill/Paymill/Helper/OptionHelper.php
CHANGED
|
@@ -89,11 +89,7 @@ class Paymill_Paymill_Helper_OptionHelper extends Mage_Core_Helper_Abstract
|
|
| 89 |
*/
|
| 90 |
private function _getBackendOption($choice, $optionName)
|
| 91 |
{
|
| 92 |
-
|
| 93 |
-
$value = Mage::getStoreConfig('payment/' . $choice . '/' . $optionName, Mage::app()->getStore()->getStoreId());
|
| 94 |
-
} catch (Exception $ex) {
|
| 95 |
-
$value = "An Error has occoured getting the config element";
|
| 96 |
-
}
|
| 97 |
|
| 98 |
return $value;
|
| 99 |
}
|
|
@@ -115,7 +111,7 @@ class Paymill_Paymill_Helper_OptionHelper extends Mage_Core_Helper_Abstract
|
|
| 115 |
*/
|
| 116 |
public function isPreAuthorizing()
|
| 117 |
{
|
| 118 |
-
return $this->
|
| 119 |
}
|
| 120 |
|
| 121 |
/**
|
| 89 |
*/
|
| 90 |
private function _getBackendOption($choice, $optionName)
|
| 91 |
{
|
| 92 |
+
$value = Mage::getStoreConfig('payment/' . $choice . '/' . $optionName, Mage::app()->getStore()->getStoreId());
|
|
|
|
|
|
|
|
|
|
|
|
|
| 93 |
|
| 94 |
return $value;
|
| 95 |
}
|
| 111 |
*/
|
| 112 |
public function isPreAuthorizing()
|
| 113 |
{
|
| 114 |
+
return $this->_getBackendOption("paymill_creditcard", "preAuth_active");
|
| 115 |
}
|
| 116 |
|
| 117 |
/**
|
app/code/community/Paymill/Paymill/Helper/PaymentHelper.php
CHANGED
|
@@ -39,7 +39,7 @@ class Paymill_Paymill_Helper_PaymentHelper extends Mage_Core_Helper_Abstract
|
|
| 39 |
}
|
| 40 |
$decimalTotal = $object->getGrandTotal();
|
| 41 |
$amountTotal = $decimalTotal * 100;
|
| 42 |
-
return $amountTotal;
|
| 43 |
}
|
| 44 |
|
| 45 |
/**
|
|
@@ -141,141 +141,8 @@ class Paymill_Paymill_Helper_PaymentHelper extends Mage_Core_Helper_Abstract
|
|
| 141 |
$params['email'] = Mage::helper("paymill/customerHelper")->getCustomerEmail($quote);
|
| 142 |
$params['description'] = $this->getDescription($quote);
|
| 143 |
$params['source'] = Mage::helper('paymill')->getSourceString();
|
| 144 |
-
|
| 145 |
-
|
| 146 |
-
return $paymentProcessor;
|
| 147 |
-
}
|
| 148 |
-
|
| 149 |
-
/**
|
| 150 |
-
* Creates a client object from the given data and returns the Id
|
| 151 |
-
* @param String $email
|
| 152 |
-
* @param String $description
|
| 153 |
-
* @return String ClientId
|
| 154 |
-
* @throws Exception "Invalid Result Exception: Invalid ResponseCode for Client"
|
| 155 |
-
*/
|
| 156 |
-
public function createClient($email, $description)
|
| 157 |
-
{
|
| 158 |
-
$privateKey = Mage::helper('paymill/optionHelper')->getPrivateKey();
|
| 159 |
-
$apiUrl = Mage::helper('paymill')->getApiUrl();
|
| 160 |
-
|
| 161 |
-
if (empty($privateKey)) {
|
| 162 |
-
Mage::helper('paymill/loggingHelper')->log("No private Key was set.");
|
| 163 |
-
Mage::throwException("No private Key was set.");
|
| 164 |
-
}
|
| 165 |
-
|
| 166 |
-
$clientsObject = new Services_Paymill_Clients($privateKey, $apiUrl);
|
| 167 |
-
|
| 168 |
-
$client = $clientsObject->create(
|
| 169 |
-
array(
|
| 170 |
-
'email' => $email,
|
| 171 |
-
'description' => $description
|
| 172 |
-
)
|
| 173 |
-
);
|
| 174 |
-
|
| 175 |
-
if (isset($client['data']['response_code']) && $client['data']['response_code'] !== 20000) {
|
| 176 |
-
$this->_log("An Error occured: " . $client['data']['response_code'], var_export($client, true));
|
| 177 |
-
throw new Exception("Invalid Result Exception: Invalid ResponseCode for Client");
|
| 178 |
-
}
|
| 179 |
-
|
| 180 |
-
$clientId = $client['id'];
|
| 181 |
-
Mage::helper('paymill/loggingHelper')->log("Client created.", $clientId);
|
| 182 |
-
return $clientId;
|
| 183 |
-
}
|
| 184 |
-
|
| 185 |
-
/**
|
| 186 |
-
* Creates a payment object from the given data and returns the Id
|
| 187 |
-
* @param String $token
|
| 188 |
-
* @param String $clientId
|
| 189 |
-
* @return String PaymentId
|
| 190 |
-
* @throws Exception "Invalid Result Exception: Invalid ResponseCode for Payment"
|
| 191 |
-
*/
|
| 192 |
-
public function createPayment($token, $clientId)
|
| 193 |
-
{
|
| 194 |
-
$privateKey = Mage::helper('paymill/optionHelper')->getPrivateKey();
|
| 195 |
-
$apiUrl = Mage::helper('paymill')->getApiUrl();
|
| 196 |
-
|
| 197 |
-
if (empty($privateKey)) {
|
| 198 |
-
Mage::helper('paymill/loggingHelper')->log("No private Key was set.");
|
| 199 |
-
Mage::throwException("No private Key was set.");
|
| 200 |
-
}
|
| 201 |
-
|
| 202 |
-
$paymentsObject = new Services_Paymill_Payments($privateKey, $apiUrl);
|
| 203 |
-
|
| 204 |
-
$payment = $paymentsObject->create(
|
| 205 |
-
array(
|
| 206 |
-
'token' => $token,
|
| 207 |
-
'client' => $clientId
|
| 208 |
-
)
|
| 209 |
-
);
|
| 210 |
-
|
| 211 |
-
if (isset($payment['data']['response_code']) && $payment['data']['response_code'] !== 20000) {
|
| 212 |
-
$this->_log("An Error occured: " . $payment['data']['response_code'], var_export($payment, true));
|
| 213 |
-
throw new Exception("Invalid Result Exception: Invalid ResponseCode for Payment");
|
| 214 |
-
}
|
| 215 |
-
|
| 216 |
-
$paymentId = $payment['id'];
|
| 217 |
-
Mage::helper('paymill/loggingHelper')->log("Payment created.", $paymentId);
|
| 218 |
-
return $paymentId;
|
| 219 |
-
}
|
| 220 |
-
|
| 221 |
-
/**
|
| 222 |
-
* Creates a preAuthorization with the given arguments
|
| 223 |
-
* @param String $token
|
| 224 |
-
* @param String $paymentId if given, this replaces the token to use fast checkout
|
| 225 |
-
* @return mixed Response
|
| 226 |
-
*/
|
| 227 |
-
public function createPreAuthorization($paymentId)
|
| 228 |
-
{
|
| 229 |
-
$privateKey = Mage::helper('paymill/optionHelper')->getPrivateKey();
|
| 230 |
-
$apiUrl = Mage::helper('paymill')->getApiUrl();
|
| 231 |
-
|
| 232 |
-
if (empty($privateKey)) {
|
| 233 |
-
Mage::helper('paymill/loggingHelper')->log("No private Key was set.");
|
| 234 |
-
Mage::throwException("No private Key was set.");
|
| 235 |
-
}
|
| 236 |
-
|
| 237 |
-
$preAuthObject = new Services_Paymill_Preauthorizations($privateKey, $apiUrl);
|
| 238 |
-
|
| 239 |
-
$amount = (int) $this->getAmount();
|
| 240 |
-
$currency = $this->getCurrency();
|
| 241 |
-
|
| 242 |
-
$params = array('payment' => $paymentId, 'source' => Mage::helper('paymill')->getSourceString(), 'amount' => $amount, 'currency' => $currency);
|
| 243 |
-
$preAuth = $preAuthObject->create($params);
|
| 244 |
-
|
| 245 |
-
Mage::helper('paymill/loggingHelper')->log("PreAuthorization created from Payment", $preAuth['preauthorization']['id'], print_r($params, true));
|
| 246 |
-
|
| 247 |
-
return $preAuth['preauthorization'];
|
| 248 |
-
}
|
| 249 |
-
|
| 250 |
-
/**
|
| 251 |
-
* Generates a transaction from the given arguments
|
| 252 |
-
* @param Mage_Sales_Model_Order $order
|
| 253 |
-
* @param String $preAuthorizationId
|
| 254 |
-
* @param float|double $amount
|
| 255 |
-
* @return Boolean Indicator of success
|
| 256 |
-
*/
|
| 257 |
-
public function createTransactionFromPreAuth($order, $preAuthorizationId, $amount)
|
| 258 |
-
{
|
| 259 |
-
$privateKey = Mage::helper('paymill/optionHelper')->getPrivateKey();
|
| 260 |
-
$apiUrl = Mage::helper('paymill')->getApiUrl();
|
| 261 |
-
if (empty($privateKey)) {
|
| 262 |
-
Mage::helper('paymill/loggingHelper')->log("No private Key was set.");
|
| 263 |
-
Mage::throwException("No private Key was set.");
|
| 264 |
-
}
|
| 265 |
-
|
| 266 |
-
$transactionsObject = new Services_Paymill_Transactions($privateKey, $apiUrl);
|
| 267 |
-
$params = array(
|
| 268 |
-
'amount' => (int) ($amount * 100),
|
| 269 |
-
'currency' => $this->getCurrency(),
|
| 270 |
-
'description' => $this->getDescription($order),
|
| 271 |
-
'source' => Mage::helper('paymill')->getSourceString(),
|
| 272 |
-
'preauthorization' => $preAuthorizationId
|
| 273 |
-
);
|
| 274 |
-
|
| 275 |
-
$transaction = $transactionsObject->create($params);
|
| 276 |
-
Mage::helper('paymill/loggingHelper')->log("Creating Transaction from PreAuthorization", print_r($params, true), var_export($transaction, true));
|
| 277 |
-
|
| 278 |
-
return $transaction;
|
| 279 |
}
|
| 280 |
|
| 281 |
}
|
| 39 |
}
|
| 40 |
$decimalTotal = $object->getGrandTotal();
|
| 41 |
$amountTotal = $decimalTotal * 100;
|
| 42 |
+
return round($amountTotal);
|
| 43 |
}
|
| 44 |
|
| 45 |
/**
|
| 141 |
$params['email'] = Mage::helper("paymill/customerHelper")->getCustomerEmail($quote);
|
| 142 |
$params['description'] = $this->getDescription($quote);
|
| 143 |
$params['source'] = Mage::helper('paymill')->getSourceString();
|
| 144 |
+
|
| 145 |
+
return new Services_Paymill_PaymentProcessor($privateKey, $apiUrl, $libBase, $params, Mage::helper('paymill/loggingHelper'));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 146 |
}
|
| 147 |
|
| 148 |
}
|
app/code/community/Paymill/Paymill/Model/Log/Search.php
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
|
| 3 |
+
class Paymill_Paymill_Model_Log_Search extends Varien_Object
|
| 4 |
+
{
|
| 5 |
+
|
| 6 |
+
/**
|
| 7 |
+
* Load search results
|
| 8 |
+
*
|
| 9 |
+
* @return Paymill_Paymill_Model_Log_Search
|
| 10 |
+
*/
|
| 11 |
+
public function load()
|
| 12 |
+
{
|
| 13 |
+
$arr = array();
|
| 14 |
+
$searchText = $this->getQuery();
|
| 15 |
+
$collection = Mage::getModel('paymill/log')->getCollection()
|
| 16 |
+
->addFieldToFilter(
|
| 17 |
+
array('dev_info', 'dev_info_additional'), array(
|
| 18 |
+
array('like' => '%' . $searchText . '%'),
|
| 19 |
+
array('like' => '%' . $searchText . '%')
|
| 20 |
+
)
|
| 21 |
+
)
|
| 22 |
+
->load();
|
| 23 |
+
|
| 24 |
+
foreach ($collection as $model) {
|
| 25 |
+
$arr[] = array(
|
| 26 |
+
'id' => 'paymill/search/' . $model->getId(),
|
| 27 |
+
'type' => Mage::helper('adminhtml')->__('Paymill Log Entry'),
|
| 28 |
+
'name' => $model->getMerchantInfo(),
|
| 29 |
+
'description' => $model->getEntryDate(),
|
| 30 |
+
'url' => Mage::helper('adminhtml')->getUrl('paymill/adminhtml_log/view', array('id' => $model->getId())),
|
| 31 |
+
);
|
| 32 |
+
}
|
| 33 |
+
|
| 34 |
+
$this->setResults($arr);
|
| 35 |
+
return $this;
|
| 36 |
+
}
|
| 37 |
+
|
| 38 |
+
}
|
app/code/community/Paymill/Paymill/Model/Method/MethodModelAbstract.php
CHANGED
|
@@ -99,10 +99,7 @@ abstract class Paymill_Paymill_Model_Method_MethodModelAbstract extends Mage_Pay
|
|
| 99 |
*/
|
| 100 |
public function canUseForCurrency($currencyCode)
|
| 101 |
{
|
| 102 |
-
$
|
| 103 |
-
$storeId = $quote ? $quote->getStoreId() : null;
|
| 104 |
-
|
| 105 |
-
$availableCurrencies = explode(',', $this->getConfigData('currency', $storeId));
|
| 106 |
if (!in_array($currencyCode, $availableCurrencies)) {
|
| 107 |
return false;
|
| 108 |
}
|
|
@@ -123,7 +120,7 @@ abstract class Paymill_Paymill_Model_Method_MethodModelAbstract extends Mage_Pay
|
|
| 123 |
/**
|
| 124 |
* Return Quote or Order Object depending on the type of the payment info
|
| 125 |
*
|
| 126 |
-
* @return Mage_Sales_Model_Order
|
| 127 |
*/
|
| 128 |
public function getOrder()
|
| 129 |
{
|
|
@@ -157,16 +154,20 @@ abstract class Paymill_Paymill_Model_Method_MethodModelAbstract extends Mage_Pay
|
|
| 157 |
public function assignData($data)
|
| 158 |
{
|
| 159 |
$post = $data->getData();
|
| 160 |
-
if (
|
| 161 |
-
|
| 162 |
-
|
| 163 |
-
Mage::
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 164 |
}
|
| 165 |
|
| 166 |
-
//Save Data into session
|
| 167 |
-
Mage::getSingleton('core/session')->setToken($post['paymill-payment-token']);
|
| 168 |
-
Mage::getSingleton('core/session')->setPaymentCode($this->getCode());
|
| 169 |
-
|
| 170 |
//Finish as usual
|
| 171 |
return parent::assignData($data);
|
| 172 |
}
|
|
@@ -193,6 +194,7 @@ abstract class Paymill_Paymill_Model_Method_MethodModelAbstract extends Mage_Pay
|
|
| 193 |
Mage::getSingleton('checkout/session')->setGotoSection('payment');
|
| 194 |
Mage::throwException("There was an error processing your payment.");
|
| 195 |
}
|
|
|
|
| 196 |
//Finish as usual
|
| 197 |
return parent::authorize($payment, $amount);
|
| 198 |
}
|
|
@@ -205,43 +207,45 @@ abstract class Paymill_Paymill_Model_Method_MethodModelAbstract extends Mage_Pay
|
|
| 205 |
{
|
| 206 |
//Gathering data from session
|
| 207 |
$token = Mage::getSingleton('core/session')->getToken();
|
| 208 |
-
$quote = Mage::getSingleton('checkout/session')->getQuote();
|
| 209 |
-
|
| 210 |
//Create Payment Processor
|
| 211 |
$paymentHelper = Mage::helper("paymill/paymentHelper");
|
| 212 |
$fcHelper = Mage::helper("paymill/fastCheckoutHelper");
|
| 213 |
$paymentProcessor = $paymentHelper->createPaymentProcessor($this->getCode(), $token);
|
| 214 |
-
|
|
|
|
|
|
|
|
|
|
| 215 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 216 |
//Loading Fast Checkout Data (if enabled and given)
|
| 217 |
-
if ($fcHelper->
|
| 218 |
-
$
|
| 219 |
-
if (isset($
|
| 220 |
-
$paymentProcessor->
|
| 221 |
-
$paymentId = $fcHelper->getPaymentId($this->_code);
|
| 222 |
-
if (isset($paymentId)) {
|
| 223 |
-
$paymentProcessor->setPaymentId($paymentId);
|
| 224 |
-
}
|
| 225 |
}
|
| 226 |
}
|
| 227 |
-
|
| 228 |
-
//Process Payment
|
| 229 |
$success = $paymentProcessor->processPayment();
|
| 230 |
|
| 231 |
-
|
| 232 |
If ($success) {
|
| 233 |
//Save Transaction Data
|
| 234 |
$transactionHelper = Mage::helper("paymill/transactionHelper");
|
| 235 |
$transactionModel = $transactionHelper->createTransactionModel($paymentProcessor->getTransactionId(), false);
|
| 236 |
$transactionHelper->setAdditionalInformation($payment, $transactionModel);
|
| 237 |
-
|
| 238 |
-
//
|
|
|
|
|
|
|
|
|
|
|
|
|
| 239 |
if ($fcHelper->isFastCheckoutEnabled()) { //Fast checkout enabled
|
| 240 |
-
|
| 241 |
-
|
| 242 |
-
$paymentId = $paymentProcessor->getPaymentId();
|
| 243 |
-
$fcHelper->saveData($this->_code, $clientId, $paymentId);
|
| 244 |
-
}
|
| 245 |
}
|
| 246 |
|
| 247 |
return true;
|
| 99 |
*/
|
| 100 |
public function canUseForCurrency($currencyCode)
|
| 101 |
{
|
| 102 |
+
$availableCurrencies = explode(',', $this->getConfigData('currency', Mage::app()->getStore()->getId()));
|
|
|
|
|
|
|
|
|
|
| 103 |
if (!in_array($currencyCode, $availableCurrencies)) {
|
| 104 |
return false;
|
| 105 |
}
|
| 120 |
/**
|
| 121 |
* Return Quote or Order Object depending on the type of the payment info
|
| 122 |
*
|
| 123 |
+
* @return Mage_Sales_Model_Order | Mage_Sales_Model_Order_Quote
|
| 124 |
*/
|
| 125 |
public function getOrder()
|
| 126 |
{
|
| 154 |
public function assignData($data)
|
| 155 |
{
|
| 156 |
$post = $data->getData();
|
| 157 |
+
if (array_key_exists('paymill-payment-token', $post)
|
| 158 |
+
&& !empty($post['paymill-payment-token'])) {
|
| 159 |
+
//Save Data into session
|
| 160 |
+
Mage::getSingleton('core/session')->setToken($post['paymill-payment-token']);
|
| 161 |
+
Mage::getSingleton('core/session')->setPaymentCode($this->getCode());
|
| 162 |
+
} else {
|
| 163 |
+
if (Mage::helper('paymill/fastCheckoutHelper')->hasData($this->_code)) {
|
| 164 |
+
Mage::getSingleton('core/session')->setToken('dummyToken');
|
| 165 |
+
} else {
|
| 166 |
+
Mage::helper('paymill/loggingHelper')->log("No token found.");
|
| 167 |
+
Mage::throwException("There was an error processing your payment.");
|
| 168 |
+
}
|
| 169 |
}
|
| 170 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 171 |
//Finish as usual
|
| 172 |
return parent::assignData($data);
|
| 173 |
}
|
| 194 |
Mage::getSingleton('checkout/session')->setGotoSection('payment');
|
| 195 |
Mage::throwException("There was an error processing your payment.");
|
| 196 |
}
|
| 197 |
+
|
| 198 |
//Finish as usual
|
| 199 |
return parent::authorize($payment, $amount);
|
| 200 |
}
|
| 207 |
{
|
| 208 |
//Gathering data from session
|
| 209 |
$token = Mage::getSingleton('core/session')->getToken();
|
|
|
|
|
|
|
| 210 |
//Create Payment Processor
|
| 211 |
$paymentHelper = Mage::helper("paymill/paymentHelper");
|
| 212 |
$fcHelper = Mage::helper("paymill/fastCheckoutHelper");
|
| 213 |
$paymentProcessor = $paymentHelper->createPaymentProcessor($this->getCode(), $token);
|
| 214 |
+
|
| 215 |
+
if ($this->getCode() === 'paymill_creditcard') {
|
| 216 |
+
$paymentProcessor->setPreAuthAmount(Mage::getSingleton('core/session')->getPreAuthAmount());
|
| 217 |
+
}
|
| 218 |
|
| 219 |
+
//Always load client if email doesn't change
|
| 220 |
+
$clientId = $fcHelper->getClientId();
|
| 221 |
+
if (isset($clientId)) {
|
| 222 |
+
$paymentProcessor->setClientId($clientId);
|
| 223 |
+
}
|
| 224 |
+
|
| 225 |
//Loading Fast Checkout Data (if enabled and given)
|
| 226 |
+
if ($fcHelper->hasData($this->_code) && $token === 'dummyToken') {
|
| 227 |
+
$paymentId = $fcHelper->getPaymentId($this->_code);
|
| 228 |
+
if (isset($paymentId)) {
|
| 229 |
+
$paymentProcessor->setPaymentId($paymentId);
|
|
|
|
|
|
|
|
|
|
|
|
|
| 230 |
}
|
| 231 |
}
|
| 232 |
+
|
|
|
|
| 233 |
$success = $paymentProcessor->processPayment();
|
| 234 |
|
|
|
|
| 235 |
If ($success) {
|
| 236 |
//Save Transaction Data
|
| 237 |
$transactionHelper = Mage::helper("paymill/transactionHelper");
|
| 238 |
$transactionModel = $transactionHelper->createTransactionModel($paymentProcessor->getTransactionId(), false);
|
| 239 |
$transactionHelper->setAdditionalInformation($payment, $transactionModel);
|
| 240 |
+
|
| 241 |
+
//Allways update the client
|
| 242 |
+
$clientId = $paymentProcessor->getClientId();
|
| 243 |
+
$fcHelper->saveData($this->_code, $clientId);
|
| 244 |
+
|
| 245 |
+
//Save payment data for FastCheckout (if enabled)
|
| 246 |
if ($fcHelper->isFastCheckoutEnabled()) { //Fast checkout enabled
|
| 247 |
+
$paymentId = $paymentProcessor->getPaymentId();
|
| 248 |
+
$fcHelper->saveData($this->_code, $clientId, $paymentId);
|
|
|
|
|
|
|
|
|
|
| 249 |
}
|
| 250 |
|
| 251 |
return true;
|
app/code/community/Paymill/Paymill/Model/Method/MethodModelCreditcard.php
CHANGED
|
@@ -56,15 +56,17 @@ class Paymill_Paymill_Model_Method_MethodModelCreditcard extends Paymill_Paymill
|
|
| 56 |
$paymentProcessor = $paymentHelper->createPaymentProcessor($this->getCode(), $token);
|
| 57 |
$paymentProcessor->setPreAuthAmount(Mage::getSingleton('core/session')->getPreAuthAmount());
|
| 58 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 59 |
//Loading Fast Checkout Data (if enabled and given)
|
| 60 |
-
if ($fcHelper->
|
| 61 |
-
$
|
| 62 |
-
if (isset($
|
| 63 |
-
$paymentProcessor->
|
| 64 |
-
$paymentId = $fcHelper->getPaymentId($this->_code);
|
| 65 |
-
if (isset($paymentId)) {
|
| 66 |
-
$paymentProcessor->setPaymentId($paymentId);
|
| 67 |
-
}
|
| 68 |
}
|
| 69 |
}
|
| 70 |
|
|
@@ -77,13 +79,15 @@ class Paymill_Paymill_Model_Method_MethodModelCreditcard extends Paymill_Paymill
|
|
| 77 |
$transactionModel = $transactionHelper->createTransactionModel($paymentProcessor->getPreauthId(), true);
|
| 78 |
$transactionHelper->setAdditionalInformation($payment, $transactionModel);
|
| 79 |
|
| 80 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 81 |
if ($fcHelper->isFastCheckoutEnabled()) { //Fast checkout enabled
|
| 82 |
-
|
| 83 |
-
|
| 84 |
-
$paymentId = $paymentProcessor->getPaymentId();
|
| 85 |
-
$fcHelper->saveData($this->_code, $clientId, $paymentId);
|
| 86 |
-
}
|
| 87 |
}
|
| 88 |
|
| 89 |
return true;
|
| 56 |
$paymentProcessor = $paymentHelper->createPaymentProcessor($this->getCode(), $token);
|
| 57 |
$paymentProcessor->setPreAuthAmount(Mage::getSingleton('core/session')->getPreAuthAmount());
|
| 58 |
|
| 59 |
+
//Always load client if email doesn't change
|
| 60 |
+
$clientId = $fcHelper->getClientId();
|
| 61 |
+
if (isset($clientId)) {
|
| 62 |
+
$paymentProcessor->setClientId($clientId);
|
| 63 |
+
}
|
| 64 |
+
|
| 65 |
//Loading Fast Checkout Data (if enabled and given)
|
| 66 |
+
if ($fcHelper->hasData($this->_code) && $token === 'dummyToken') {
|
| 67 |
+
$paymentId = $fcHelper->getPaymentId($this->_code);
|
| 68 |
+
if (isset($paymentId)) {
|
| 69 |
+
$paymentProcessor->setPaymentId($paymentId);
|
|
|
|
|
|
|
|
|
|
|
|
|
| 70 |
}
|
| 71 |
}
|
| 72 |
|
| 79 |
$transactionModel = $transactionHelper->createTransactionModel($paymentProcessor->getPreauthId(), true);
|
| 80 |
$transactionHelper->setAdditionalInformation($payment, $transactionModel);
|
| 81 |
|
| 82 |
+
|
| 83 |
+
//Allways update the client
|
| 84 |
+
$clientId = $paymentProcessor->getClientId();
|
| 85 |
+
$fcHelper->saveData($this->_code, $clientId);
|
| 86 |
+
|
| 87 |
+
//Save payment data for FastCheckout (if enabled)
|
| 88 |
if ($fcHelper->isFastCheckoutEnabled()) { //Fast checkout enabled
|
| 89 |
+
$paymentId = $paymentProcessor->getPaymentId();
|
| 90 |
+
$fcHelper->saveData($this->_code, $clientId, $paymentId);
|
|
|
|
|
|
|
|
|
|
| 91 |
}
|
| 92 |
|
| 93 |
return true;
|
app/code/community/Paymill/Paymill/controllers/Adminhtml/LogController.php
CHANGED
|
@@ -13,7 +13,8 @@
|
|
| 13 |
* obtain it through the world-wide-web, please send an email
|
| 14 |
* to license@magentocommerce.com so we can send you a copy immediately.
|
| 15 |
*
|
| 16 |
-
* @category Paymill
|
|
|
|
| 17 |
* @copyright Copyright (c) 2013 PAYMILL GmbH (https://paymill.com/en-gb/)
|
| 18 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 19 |
*/
|
|
@@ -40,7 +41,25 @@ class Paymill_Paymill_Adminhtml_LogController extends Mage_Adminhtml_Controller_
|
|
| 40 |
$this->_initAction()
|
| 41 |
->renderLayout();
|
| 42 |
}
|
| 43 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 44 |
/**
|
| 45 |
* Normal Magento delete mass action for selected entries
|
| 46 |
*/
|
| 13 |
* obtain it through the world-wide-web, please send an email
|
| 14 |
* to license@magentocommerce.com so we can send you a copy immediately.
|
| 15 |
*
|
| 16 |
+
* @category Paymill
|
| 17 |
+
* @package Paymill_Paymill
|
| 18 |
* @copyright Copyright (c) 2013 PAYMILL GmbH (https://paymill.com/en-gb/)
|
| 19 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 20 |
*/
|
| 41 |
$this->_initAction()
|
| 42 |
->renderLayout();
|
| 43 |
}
|
| 44 |
+
|
| 45 |
+
/**
|
| 46 |
+
* View single xml request or response
|
| 47 |
+
*/
|
| 48 |
+
public function viewAction()
|
| 49 |
+
{
|
| 50 |
+
$id = $this->getRequest()->getParam('id');
|
| 51 |
+
$model = Mage::getModel('paymill/log')->load($id);
|
| 52 |
+
if ($model->getId()) {
|
| 53 |
+
Mage::register('paymill_log_entry', $model);
|
| 54 |
+
$this->_initAction();
|
| 55 |
+
$this->_addContent($this->getLayout()->createBlock('paymill/adminhtml_log_view'));
|
| 56 |
+
$this->renderLayout();
|
| 57 |
+
} else {
|
| 58 |
+
Mage::getSingleton('adminhtml/session')->addError(Mage::helper('ratepay')->__('Item does not exist'));
|
| 59 |
+
$this->_redirect('*/*/');
|
| 60 |
+
}
|
| 61 |
+
}
|
| 62 |
+
|
| 63 |
/**
|
| 64 |
* Normal Magento delete mass action for selected entries
|
| 65 |
*/
|
app/code/community/Paymill/Paymill/etc/config.xml
CHANGED
|
@@ -2,7 +2,7 @@
|
|
| 2 |
<config>
|
| 3 |
<modules>
|
| 4 |
<Paymill_Paymill>
|
| 5 |
-
<version>3.
|
| 6 |
</Paymill_Paymill>
|
| 7 |
</modules>
|
| 8 |
|
|
@@ -145,6 +145,13 @@
|
|
| 145 |
</observers>
|
| 146 |
</sales_order_creditmemo_refund>
|
| 147 |
</events>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 148 |
</adminhtml>
|
| 149 |
|
| 150 |
<admin>
|
| 2 |
<config>
|
| 3 |
<modules>
|
| 4 |
<Paymill_Paymill>
|
| 5 |
+
<version>3.2.0</version>
|
| 6 |
</Paymill_Paymill>
|
| 7 |
</modules>
|
| 8 |
|
| 145 |
</observers>
|
| 146 |
</sales_order_creditmemo_refund>
|
| 147 |
</events>
|
| 148 |
+
|
| 149 |
+
<global_search>
|
| 150 |
+
<paymill_search>
|
| 151 |
+
<class>paymill/log_search</class>
|
| 152 |
+
<acl>paymill</acl>
|
| 153 |
+
</paymill_search>
|
| 154 |
+
</global_search>
|
| 155 |
</adminhtml>
|
| 156 |
|
| 157 |
<admin>
|
app/code/community/Paymill/Paymill/etc/system.xml
CHANGED
|
@@ -11,7 +11,7 @@
|
|
| 11 |
<sort_order>700</sort_order>
|
| 12 |
<fields>
|
| 13 |
<version>
|
| 14 |
-
<label>v3.
|
| 15 |
<sort_order>1</sort_order>
|
| 16 |
<frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
|
| 17 |
<frontend_type>label</frontend_type>
|
|
@@ -19,26 +19,26 @@
|
|
| 19 |
<show_in_website>1</show_in_website>
|
| 20 |
<show_in_store>1</show_in_store>
|
| 21 |
</version>
|
| 22 |
-
<
|
| 23 |
-
<label>
|
| 24 |
<sort_order>2</sort_order>
|
| 25 |
-
<tooltip>
|
| 26 |
-
<comment>
|
| 27 |
<frontend_type>text</frontend_type>
|
| 28 |
<show_in_default>1</show_in_default>
|
| 29 |
<show_in_website>1</show_in_website>
|
| 30 |
<show_in_store>1</show_in_store>
|
| 31 |
-
</
|
| 32 |
-
<
|
| 33 |
-
<label>
|
| 34 |
<sort_order>3</sort_order>
|
| 35 |
-
<tooltip>
|
| 36 |
-
<comment>
|
| 37 |
<frontend_type>text</frontend_type>
|
| 38 |
<show_in_default>1</show_in_default>
|
| 39 |
<show_in_website>1</show_in_website>
|
| 40 |
<show_in_store>1</show_in_store>
|
| 41 |
-
</
|
| 42 |
<debugging_active translate="label">
|
| 43 |
<label>paymill_Activate_Debugging</label>
|
| 44 |
<sort_order>6</sort_order>
|
|
@@ -75,15 +75,6 @@
|
|
| 75 |
<show_in_website>1</show_in_website>
|
| 76 |
<show_in_store>1</show_in_store>
|
| 77 |
</show_label>
|
| 78 |
-
<preAuth_active translate="label">
|
| 79 |
-
<label>paymill_preAuth_active</label>
|
| 80 |
-
<sort_order>10</sort_order>
|
| 81 |
-
<frontend_type>select</frontend_type>
|
| 82 |
-
<source_model>adminhtml/system_config_source_yesno</source_model>
|
| 83 |
-
<show_in_default>1</show_in_default>
|
| 84 |
-
<show_in_website>1</show_in_website>
|
| 85 |
-
<show_in_store>1</show_in_store>
|
| 86 |
-
</preAuth_active>
|
| 87 |
</fields>
|
| 88 |
</paymill>
|
| 89 |
|
|
@@ -95,7 +86,7 @@
|
|
| 95 |
<sort_order>800</sort_order>
|
| 96 |
<fields>
|
| 97 |
<version>
|
| 98 |
-
<label>v3.
|
| 99 |
<sort_order>100</sort_order>
|
| 100 |
<frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
|
| 101 |
<frontend_type>label</frontend_type>
|
|
@@ -151,7 +142,16 @@
|
|
| 151 |
<show_in_default>1</show_in_default>
|
| 152 |
<show_in_website>1</show_in_website>
|
| 153 |
<show_in_store>0</show_in_store>
|
| 154 |
-
</currency>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 155 |
<sort_order translate="label">
|
| 156 |
<label>paymill_opt_Sort</label>
|
| 157 |
<frontend_type>text</frontend_type>
|
|
@@ -171,7 +171,7 @@
|
|
| 171 |
<sort_order>800</sort_order>
|
| 172 |
<fields>
|
| 173 |
<version>
|
| 174 |
-
<label>v3.
|
| 175 |
<sort_order>100</sort_order>
|
| 176 |
<frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
|
| 177 |
<frontend_type>label</frontend_type>
|
|
@@ -179,7 +179,6 @@
|
|
| 179 |
<show_in_website>1</show_in_website>
|
| 180 |
<show_in_store>1</show_in_store>
|
| 181 |
</version>
|
| 182 |
-
|
| 183 |
<active translate="label">
|
| 184 |
<label>paymill_opt_Enabled</label>
|
| 185 |
<sort_order>200</sort_order>
|
|
@@ -189,17 +188,6 @@
|
|
| 189 |
<show_in_website>1</show_in_website>
|
| 190 |
<show_in_store>1</show_in_store>
|
| 191 |
</active>
|
| 192 |
-
|
| 193 |
-
<tokenTolerance translate="label, tooltip, comment">
|
| 194 |
-
<label>paymill_token_tolerace</label>
|
| 195 |
-
<sort_order>210</sort_order>
|
| 196 |
-
<tooltip>paymill_token_tolerace_tooltip</tooltip>
|
| 197 |
-
<comment>paymill_token_tolerace_comment</comment>
|
| 198 |
-
<frontend_type>text</frontend_type>
|
| 199 |
-
<show_in_default>1</show_in_default>
|
| 200 |
-
<show_in_website>1</show_in_website>
|
| 201 |
-
<show_in_store>1</show_in_store>
|
| 202 |
-
</tokenTolerance>
|
| 203 |
<allowspecific translate="label">
|
| 204 |
<label>Payment from Applicable Countries</label>
|
| 205 |
<sort_order>220</sort_order>
|
| 11 |
<sort_order>700</sort_order>
|
| 12 |
<fields>
|
| 13 |
<version>
|
| 14 |
+
<label>v3.2.0</label>
|
| 15 |
<sort_order>1</sort_order>
|
| 16 |
<frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
|
| 17 |
<frontend_type>label</frontend_type>
|
| 19 |
<show_in_website>1</show_in_website>
|
| 20 |
<show_in_store>1</show_in_store>
|
| 21 |
</version>
|
| 22 |
+
<private_key translate="label, tooltip, comment">
|
| 23 |
+
<label>paymill_Private_Key</label>
|
| 24 |
<sort_order>2</sort_order>
|
| 25 |
+
<tooltip>paymill_private_key_tooltip</tooltip>
|
| 26 |
+
<comment>paymill_private_key_comment</comment>
|
| 27 |
<frontend_type>text</frontend_type>
|
| 28 |
<show_in_default>1</show_in_default>
|
| 29 |
<show_in_website>1</show_in_website>
|
| 30 |
<show_in_store>1</show_in_store>
|
| 31 |
+
</private_key>
|
| 32 |
+
<public_key translate="label, tooltip, comment">
|
| 33 |
+
<label>paymill_Public_Key</label>
|
| 34 |
<sort_order>3</sort_order>
|
| 35 |
+
<tooltip>paymill_public_key_tooltip</tooltip>
|
| 36 |
+
<comment>paymill_public_key_comment</comment>
|
| 37 |
<frontend_type>text</frontend_type>
|
| 38 |
<show_in_default>1</show_in_default>
|
| 39 |
<show_in_website>1</show_in_website>
|
| 40 |
<show_in_store>1</show_in_store>
|
| 41 |
+
</public_key>
|
| 42 |
<debugging_active translate="label">
|
| 43 |
<label>paymill_Activate_Debugging</label>
|
| 44 |
<sort_order>6</sort_order>
|
| 75 |
<show_in_website>1</show_in_website>
|
| 76 |
<show_in_store>1</show_in_store>
|
| 77 |
</show_label>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 78 |
</fields>
|
| 79 |
</paymill>
|
| 80 |
|
| 86 |
<sort_order>800</sort_order>
|
| 87 |
<fields>
|
| 88 |
<version>
|
| 89 |
+
<label>v3.2.0</label>
|
| 90 |
<sort_order>100</sort_order>
|
| 91 |
<frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
|
| 92 |
<frontend_type>label</frontend_type>
|
| 142 |
<show_in_default>1</show_in_default>
|
| 143 |
<show_in_website>1</show_in_website>
|
| 144 |
<show_in_store>0</show_in_store>
|
| 145 |
+
</currency>
|
| 146 |
+
<preAuth_active translate="label">
|
| 147 |
+
<label>paymill_preAuth_active</label>
|
| 148 |
+
<sort_order>360</sort_order>
|
| 149 |
+
<frontend_type>select</frontend_type>
|
| 150 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
| 151 |
+
<show_in_default>1</show_in_default>
|
| 152 |
+
<show_in_website>1</show_in_website>
|
| 153 |
+
<show_in_store>1</show_in_store>
|
| 154 |
+
</preAuth_active>
|
| 155 |
<sort_order translate="label">
|
| 156 |
<label>paymill_opt_Sort</label>
|
| 157 |
<frontend_type>text</frontend_type>
|
| 171 |
<sort_order>800</sort_order>
|
| 172 |
<fields>
|
| 173 |
<version>
|
| 174 |
+
<label>v3.2.0</label>
|
| 175 |
<sort_order>100</sort_order>
|
| 176 |
<frontend_model>adminhtml/system_config_form_field_heading</frontend_model>
|
| 177 |
<frontend_type>label</frontend_type>
|
| 179 |
<show_in_website>1</show_in_website>
|
| 180 |
<show_in_store>1</show_in_store>
|
| 181 |
</version>
|
|
|
|
| 182 |
<active translate="label">
|
| 183 |
<label>paymill_opt_Enabled</label>
|
| 184 |
<sort_order>200</sort_order>
|
| 188 |
<show_in_website>1</show_in_website>
|
| 189 |
<show_in_store>1</show_in_store>
|
| 190 |
</active>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 191 |
<allowspecific translate="label">
|
| 192 |
<label>Payment from Applicable Countries</label>
|
| 193 |
<sort_order>220</sort_order>
|
app/design/adminhtml/base/default/template/paymill/payment/info/creditcard.phtml
DELETED
|
@@ -1,14 +0,0 @@
|
|
| 1 |
-
<?php if ($_specificInfo = $this->getSpecificInformation()): ?>
|
| 2 |
-
<table
|
| 3 |
-
<tr>
|
| 4 |
-
<td><img src="<?php echo $_specificInfo['imgUrl'] ?>" /></td>
|
| 5 |
-
</tr>
|
| 6 |
-
<tr>
|
| 7 |
-
<td><?php echo $this->htmlEscape($this->getMethod()->getTitle()) ?></td>
|
| 8 |
-
</tr>
|
| 9 |
-
<tr>
|
| 10 |
-
<td><?php echo $this->escapeHtml("Transaction Id: " . $_specificInfo['paymillTransactionId']); ?></td>
|
| 11 |
-
</tr>
|
| 12 |
-
</table>
|
| 13 |
-
<?php endif; ?>
|
| 14 |
-
<?php echo $this->getChildHtml() ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/design/adminhtml/base/default/template/paymill/payment/info/directdebit.phtml
DELETED
|
@@ -1,14 +0,0 @@
|
|
| 1 |
-
<?php if ($_specificInfo = $this->getSpecificInformation()): ?>
|
| 2 |
-
<table
|
| 3 |
-
<tr>
|
| 4 |
-
<td><img src="<?php echo $_specificInfo['imgUrl'] ?>" /></td>
|
| 5 |
-
</tr>
|
| 6 |
-
<tr>
|
| 7 |
-
<td><?php echo $this->htmlEscape($this->getMethod()->getTitle()) ?></td>
|
| 8 |
-
</tr>
|
| 9 |
-
<tr>
|
| 10 |
-
<td><?php echo $this->escapeHtml("Transaction Id: " . $_specificInfo['paymillTransactionId']); ?></td>
|
| 11 |
-
</tr>
|
| 12 |
-
</table>
|
| 13 |
-
<?php endif; ?>
|
| 14 |
-
<?php echo $this->getChildHtml() ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/design/frontend/base/default/layout/paymill.xml
CHANGED
|
@@ -11,7 +11,8 @@ and open the template in the editor.
|
|
| 11 |
</action>
|
| 12 |
<block type="core/text" name="google.cdn.jquery">
|
| 13 |
<action method="setText">
|
| 14 |
-
<text
|
|
|
|
| 15 |
</text>
|
| 16 |
</action>
|
| 17 |
</block>
|
| 11 |
</action>
|
| 12 |
<block type="core/text" name="google.cdn.jquery">
|
| 13 |
<action method="setText">
|
| 14 |
+
<text>
|
| 15 |
+
<![CDATA[]]>
|
| 16 |
</text>
|
| 17 |
</action>
|
| 18 |
</block>
|
app/design/frontend/base/default/template/paymill/payment/form/creditcard.phtml
DELETED
|
@@ -1,65 +0,0 @@
|
|
| 1 |
-
<?php $_code = $this->getMethodCode() ?>
|
| 2 |
-
<script type="text/javascript" src="<?php echo Mage::helper('paymill')->getJscriptPath() . "paymentForm.js" ?>"></script>
|
| 3 |
-
<?php echo Mage::helper('paymill')->getFormTypeForDisplay($_code) ?>
|
| 4 |
-
<ul class="form-list" id="payment_form_<?php echo $_code ?>" style="display:none;">
|
| 5 |
-
<li>
|
| 6 |
-
<label for="<?php echo $_code ?>_holdername" class="required"><em>*</em><?php echo $this->__("paymill_Holder") ?></label>
|
| 7 |
-
<div class="input-box">
|
| 8 |
-
<input value="" type="text" id="<?php echo $_code ?>_holdername" class="input-text paymill-validate-cc-holder required-entry"/>
|
| 9 |
-
</div>
|
| 10 |
-
</li>
|
| 11 |
-
<li>
|
| 12 |
-
<label for="<?php echo $_code ?>_number" class="required"><em>*</em><?php echo $this->__("paymill_Number") ?></label>
|
| 13 |
-
<div class="input-box">
|
| 14 |
-
<table>
|
| 15 |
-
<tr>
|
| 16 |
-
<td><input value="" type="text" id="<?php echo $_code ?>_number" class="input-text paymill-validate-cc-number required-entry"/></td>
|
| 17 |
-
<td><div id="<?php echo $_code ?>_card_icon"></div></td>
|
| 18 |
-
</tr>
|
| 19 |
-
</table>
|
| 20 |
-
</div>
|
| 21 |
-
</li>
|
| 22 |
-
<li>
|
| 23 |
-
<label for="<?php echo $_code ?>_cvc" class="required"><em>*</em><?php echo $this->__("paymill_Cvc") ?></label>
|
| 24 |
-
<div class="input-box">
|
| 25 |
-
<input value="" type="text" id="<?php echo $_code ?>_cvc" class="input-text paymill-validate-cc-cvc required-entry"/>
|
| 26 |
-
</div>
|
| 27 |
-
</li>
|
| 28 |
-
<li>
|
| 29 |
-
<label for="<?php echo $_code ?>_expiry_month" class="required"><em>*</em><?php echo $this->__("paymill_Date") ?></label>
|
| 30 |
-
<div class="input-box">
|
| 31 |
-
<div class="v-fix">
|
| 32 |
-
<select id="<?php echo $_code ?>_expiry_month" class="month paymill-validate-cc-expdate">
|
| 33 |
-
<?php foreach ($this->getPaymillCcMonths() as $k => $v): ?>
|
| 34 |
-
<option value="<?php echo $k ? $k : '' ?>"<?php if ($k == $this->getInfoData($_code . '_expiry_month')): ?> selected="selected"<?php endif ?>><?php echo $v ?></option>
|
| 35 |
-
<?php endforeach ?>
|
| 36 |
-
</select>
|
| 37 |
-
</div>
|
| 38 |
-
<div class="v-fix">
|
| 39 |
-
<select id="<?php echo $_code ?>_expiry_year" class="year">
|
| 40 |
-
<?php foreach ($this->getPaymillCcYears() as $k => $v): ?>
|
| 41 |
-
<option value="<?php echo $k ? $k : '' ?>"<?php if ($k == $this->getInfoData($_code . '_expiry_year')): ?> selected="selected"<?php endif ?>><?php echo $v ?></option>
|
| 42 |
-
<?php endforeach ?>
|
| 43 |
-
</select>
|
| 44 |
-
</div>
|
| 45 |
-
</div>
|
| 46 |
-
</li>
|
| 47 |
-
<?php if (Mage::helper('paymill/optionHelper')->isShowingLabels()) : ?>
|
| 48 |
-
<li><div class='paymill_powered'><div class='paymill_credits'><?php echo $this->__("paymill_slogan"); ?><a href='http://www.paymill.de' target='_blank'>PAYMILL</a></div></div></li>
|
| 49 |
-
<?php endif; ?>
|
| 50 |
-
<li>
|
| 51 |
-
<input class="paymill-payment-token" name="payment[paymill-payment-token]" id="payment[paymill-payment-token]" type="hidden" value="" />
|
| 52 |
-
<input class="paymill_3ds_cancel" name="payment[paymill_3ds_cancel]" id="payment[paymill_3ds_cancel]" type="hidden" value="<?php echo $this->__("paymill_3ds_cancel") ?>" />
|
| 53 |
-
<input class="paymill-payment-amount" name="payment[paymill-payment-amount]" id="payment[paymill-payment-amount]" type="hidden" value="<?php echo Mage::helper('paymill/paymentHelper')->getPreAuthAmount($_code) ?>"/>
|
| 54 |
-
<input class="paymill-payment-currency" name="payment[paymill-payment-currency]" id="payment[paymill-payment-currency]" type="hidden" value="<?php echo Mage::helper('paymill/paymentHelper')->getCurrency() ?>" />
|
| 55 |
-
<input class="paymill-option-debug" name="payment[paymill-option-debug]" id="payment[paymill-option-debug]" type="hidden" value="<?php echo Mage::helper('paymill/optionHelper')->isInDebugMode() ?>" />
|
| 56 |
-
<input class="paymill-info-image-path" name="payment[paymill-info-image-path]" id="payment[paymill-info-image-path]" type="hidden" value="<?php echo Mage::helper('paymill')->getImagePath() ?>" />
|
| 57 |
-
<input class="paymill-info-public_key" name="payment[paymill-info-public_key]" id="payment[paymill-info-public_key]" type="hidden" value="<?php echo Mage::helper('paymill/optionHelper')->getPublicKey() ?>" />
|
| 58 |
-
<input class="paymill-info-fastCheckout-cc" name="payment[paymill-info-fastCheckout-cc]" id="payment[paymill-info-fastCheckout-cc]" type="hidden" value="<?php echo Mage::helper('paymill')->showTemplateForm($_code) ?>" />
|
| 59 |
-
<input class="paymill-payment-error-number" name="payment[paymill-payment-error-number]" id="payment[paymill-payment-error-number]" type="hidden" value="<?php echo $this->__("paymill_error_text_invalid_number_cc") . "<br/>\n" ?>" />
|
| 60 |
-
<input class="paymill-payment-error-holder" name="payment[paymill-payment-error-holder]" id="payment[paymill-payment-error-holder]" type="hidden" value="<?php echo $this->__("paymill_error_text_invalid_holder_cc") . "<br/>\n" ?>" />
|
| 61 |
-
<input class="paymill-payment-error-expdate" name="payment[paymill-payment-error-expdate]" id="payment[paymill-payment-error-expdate]" type="hidden" value="<?php echo $this->__("paymill_error_text_invalid_expdate") . "<br/>\n" ?>" />
|
| 62 |
-
<input class="paymill-payment-error-cvc" name="payment[paymill-payment-error-cvc]" id="payment[paymill-payment-error--cvc]" type="hidden" value="<?php echo $this->__("paymill_error_text_invalid_cvc") . "<br/>\n" ?>" />
|
| 63 |
-
</li>
|
| 64 |
-
</ul>
|
| 65 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/design/frontend/base/default/template/paymill/payment/form/directdebit.phtml
DELETED
|
@@ -1,42 +0,0 @@
|
|
| 1 |
-
<?php $_code = $this->getMethodCode() ?>
|
| 2 |
-
<script type="text/javascript" src="<?php echo Mage::helper('paymill')->getJscriptPath() . "paymentForm.js" ?>"></script>
|
| 3 |
-
<?php echo Mage::helper('paymill')->getFormTypeForDisplay($_code) ?>
|
| 4 |
-
<ul class="form-list" id="payment_form_<?php echo $_code ?>" style="display:none;">
|
| 5 |
-
<li>
|
| 6 |
-
<p class="paymill-payment-errors alert-error" style="display:none;"></p>
|
| 7 |
-
</li>
|
| 8 |
-
<li>
|
| 9 |
-
<label for="<?php echo $_code ?>_holdername" class="required"><em>*</em><?php echo $this->__("paymill_Holder") ?></label>
|
| 10 |
-
<div class="input-box">
|
| 11 |
-
<input value="" type="text" id="<?php echo $_code ?>_holdername" class="input-text paymill-validate-dd-holdername required-entry"/>
|
| 12 |
-
</div>
|
| 13 |
-
</li>
|
| 14 |
-
<li>
|
| 15 |
-
<label for="<?php echo $_code ?>_account" class="required"><em>*</em><?php echo $this->__("paymill_account") ?></label>
|
| 16 |
-
<div class="input-box">
|
| 17 |
-
<input value="" type="text" id="<?php echo $_code ?>_account" class="input-text paymill-validate-dd-account required-entry"/>
|
| 18 |
-
</div>
|
| 19 |
-
</li>
|
| 20 |
-
<li>
|
| 21 |
-
<label for="<?php echo $_code ?>_bankcode" class="required"><em>*</em><?php echo $this->__("paymill_bankcode") ?></label>
|
| 22 |
-
<div class="input-box">
|
| 23 |
-
<input value="" type="text" id="<?php echo $_code ?>_bankcode" class="input-text paymill-validate-dd-bankcode required-entry"/>
|
| 24 |
-
</div>
|
| 25 |
-
</li>
|
| 26 |
-
<?php if (Mage::helper('paymill/optionHelper')->isShowingLabels()) : ?>
|
| 27 |
-
<li><div class='paymill_powered'><div class='paymill_credits'> <?php echo $this->__("paymill_slogan_elv"); ?> <a href='http://www.paymill.de' target='_blank'>PAYMILL</a></div></div></li>
|
| 28 |
-
<?php endif; ?>
|
| 29 |
-
<li>
|
| 30 |
-
<input class="paymill-payment-token" name="payment[paymill-payment-token]" id="payment[paymill-payment-token]" type="hidden" value="" />
|
| 31 |
-
<input class="paymill-payment-amount" name="payment[paymill-payment-amount]" id="payment[paymill-payment-amount]" type="hidden" value="<?php echo Mage::helper('paymill/paymentHelper')->getPreAuthAmount($_code) ?>" />
|
| 32 |
-
<input class="paymill-payment-currency" name="payment[paymill-payment-currency]" id="payment[paymill-payment-currency]" type="hidden" value="<?php echo Mage::helper('paymill/paymentHelper')->getCurrency() ?>" />
|
| 33 |
-
<input class="paymill-option-debug" name="payment[paymill-option-debug]" id="payment[paymill-option-debug]" type="hidden" value="<?php echo Mage::helper('paymill/optionHelper')->isInDebugMode() ?>" />
|
| 34 |
-
<input class="paymill-info-image-path" name="payment[paymill-info-image-path]" id="payment[paymill-info-image-path]" type="hidden" value="<?php echo Mage::helper('paymill')->getImagePath() ?>" />
|
| 35 |
-
<input class="paymill-info-public_key" name="payment[paymill-info-public_key]" id="payment[paymill-info-public_key]" type="hidden" value="<?php echo Mage::helper('paymill/optionHelper')->getPublicKey() ?>" />
|
| 36 |
-
<input class="paymill-info-fastCheckout-elv" name="payment[paymill-info-fastCheckout-elv]" id="payment[paymill-info-fastCheckout-elv]" type="hidden" value="<?php echo Mage::helper('paymill')->showTemplateForm($_code) ?>" />
|
| 37 |
-
<input class="paymill-payment-error-number-elv" name="payment[paymill-payment-error-number-elv]" id="payment[paymill-payment-error-number-elv]" type="hidden" value="<?php echo $this->__("paymill_error_text_invalid_number_elv") . "<br/>\n" ?>" />
|
| 38 |
-
<input class="paymill-payment-error-holder-elv" name="payment[paymill-payment-error-holder-elv]" id="payment[paymill-payment-error-holder-elv]" type="hidden" value="<?php echo $this->__("paymill_error_text_invalid_holder_elv") . "<br/>\n" ?>" />
|
| 39 |
-
<input class="paymill-payment-error-bankcode" name="payment[paymill-payment-error-bankcode]" id="payment[paymill-payment-error-bankcode]" type="hidden" value="<?php echo $this->__("paymill_error_text_invalid_bankcode") . "<br/>\n" ?>" />
|
| 40 |
-
</li>
|
| 41 |
-
</ul>
|
| 42 |
-
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/design/frontend/base/default/template/paymill/payment/info/creditcard.phtml
DELETED
|
@@ -1,6 +0,0 @@
|
|
| 1 |
-
<table>
|
| 2 |
-
<tr>
|
| 3 |
-
<td><?php echo $this->htmlEscape($this->getMethod()->getTitle()) ?></td>
|
| 4 |
-
</tr>
|
| 5 |
-
</table>
|
| 6 |
-
<?php echo $this->getChildHtml() ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/design/frontend/base/default/template/paymill/payment/info/directdebit.phtml
DELETED
|
@@ -1,6 +0,0 @@
|
|
| 1 |
-
<table>
|
| 2 |
-
<tr>
|
| 3 |
-
<td><?php echo $this->htmlEscape($this->getMethod()->getTitle()) ?></td>
|
| 4 |
-
</tr>
|
| 5 |
-
</table>
|
| 6 |
-
<?php echo $this->getChildHtml() ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/etc/modules/Paymill_Paymill.xml
DELETED
|
@@ -1,16 +0,0 @@
|
|
| 1 |
-
<?xml version="1.0" encoding="UTF-8"?>
|
| 2 |
-
<config>
|
| 3 |
-
<modules>
|
| 4 |
-
<!-- declare CompanyName_NewModule module -->
|
| 5 |
-
<Paymill_Paymill>
|
| 6 |
-
<!-- this is an active module -->
|
| 7 |
-
<active>true</active>
|
| 8 |
-
<!-- this module will be located in app/code/local code pool -->
|
| 9 |
-
<codePool>community</codePool>
|
| 10 |
-
<!-- specify dependencies for correct module loading order -->
|
| 11 |
-
<depends>
|
| 12 |
-
<Mage_Payment />
|
| 13 |
-
</depends>
|
| 14 |
-
</Paymill_Paymill>
|
| 15 |
-
</modules>
|
| 16 |
-
</config>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/locale/de_DE/Paymill_Paymill.csv
CHANGED
|
@@ -1,5 +1,5 @@
|
|
| 1 |
"paymill_credit_card","Kreditkarte"
|
| 2 |
-
"paymill_direct_debit","
|
| 3 |
"paymill_creditcard","Kreditkarte"
|
| 4 |
"paymill_directdebit","Lastschrift"
|
| 5 |
"paymill_Basic_Setting","Paymill Grundeinstellungen"
|
|
@@ -10,7 +10,7 @@
|
|
| 10 |
"paymill_Activate_Logging","Logging aktivieren"
|
| 11 |
"paymill_Show_Label","Paymill Label im Checkout anzeigen"
|
| 12 |
"paymill_credit_card_label","Paymill Kreditkarte"
|
| 13 |
-
"paymill_direct_debit_label","Paymill
|
| 14 |
"paymill_opt_Enabled","Aktivieren"
|
| 15 |
"paymill_opt_Countries","Länder"
|
| 16 |
"paymill_opt_Sort","Reihenfolge"
|
|
@@ -53,4 +53,5 @@
|
|
| 53 |
"paymill_slogan","Sichere Kreditkartenzahlung powered by "
|
| 54 |
"paymill_slogan_elv","Elektronisches Lastschriftverfahren powered by "
|
| 55 |
"paymill_error_text_invalid_cvc", "Ungültige CVC"
|
| 56 |
-
"paymill_3ds_cancel", "Abbrechen"
|
|
|
| 1 |
"paymill_credit_card","Kreditkarte"
|
| 2 |
+
"paymill_direct_debit","ELV"
|
| 3 |
"paymill_creditcard","Kreditkarte"
|
| 4 |
"paymill_directdebit","Lastschrift"
|
| 5 |
"paymill_Basic_Setting","Paymill Grundeinstellungen"
|
| 10 |
"paymill_Activate_Logging","Logging aktivieren"
|
| 11 |
"paymill_Show_Label","Paymill Label im Checkout anzeigen"
|
| 12 |
"paymill_credit_card_label","Paymill Kreditkarte"
|
| 13 |
+
"paymill_direct_debit_label","Paymill ELV"
|
| 14 |
"paymill_opt_Enabled","Aktivieren"
|
| 15 |
"paymill_opt_Countries","Länder"
|
| 16 |
"paymill_opt_Sort","Reihenfolge"
|
| 53 |
"paymill_slogan","Sichere Kreditkartenzahlung powered by "
|
| 54 |
"paymill_slogan_elv","Elektronisches Lastschriftverfahren powered by "
|
| 55 |
"paymill_error_text_invalid_cvc", "Ungültige CVC"
|
| 56 |
+
"paymill_3ds_cancel", "Abbrechen"
|
| 57 |
+
"paymill_cvc_tooltip", "Hinter dem CVV-Code bzw. CVC verbirgt sich ein Sicherheitsmerkmal von Kreditkarten, üblicherweise handelt es sich dabei um eine drei- bis vierstelligen Nummer. Der CVV-Code befindet sich auf VISA-Kreditkarten. Der gleiche Code ist auch auf MasterCard-Kreditkarten zu finden, hier allerdings unter dem Namen CVC. Die Abkürzung CVC steht dabei für Card Validation Code. Bei VISA wird der Code als Card Verification Value-Code bezeichnet. Ähnlich wie bei Mastercard und VISA gibt es auch bei Diners Club, Discover und JCB eine dreistellige Nummer, die meist auf der Rückseite der Karte zu finden ist. Bei Maestro-Karten gibt es mit und ohne dreistelligen CVV. Wird eine Maestro-Karte ohne CVV verwendet kann einfach 000 eingetragen werden. American Express verwendet die CID (Card Identification Number). Dabei handelt es sich um eine vierstellige Nummer, die meist auf der Vorderseite der Karte, rechts oberhalb der Kartennummer zu finden ist."
|
app/locale/en_GB/Paymill_Paymill.csv
CHANGED
|
@@ -54,3 +54,4 @@
|
|
| 54 |
"paymill_slogan_elv","Direct debit payments powered by "
|
| 55 |
"paymill_error_text_invalid_cvc", "Invalid cvc"
|
| 56 |
"paymill_3ds_cancel", "cancel"
|
|
|
| 54 |
"paymill_slogan_elv","Direct debit payments powered by "
|
| 55 |
"paymill_error_text_invalid_cvc", "Invalid cvc"
|
| 56 |
"paymill_3ds_cancel", "cancel"
|
| 57 |
+
"paymill_cvc_tooltip", "What is a CVV/CVC number? Prospective credit cards will have a 3 to 4-digit number, usually on the back of the card. It ascertains that the payment is carried out by the credit card holder and the card account is legitimate. On Visa the CVV (Card Verification Value) appears after and to the right of your card number. Same goes for Mastercard’s CVC (Card Verfication Code), which also appears after and to the right of your card number, and has 3-digits. Diners Club, Discover, and JCB credit and debit cards have a three-digit card security code which also appears after and to the right of your card number. The American Express CID (Card Identification Number) is a 4-digit number printed on the front of your card. It appears above and to the right of your card number. On Maestro the CVV appears after and to the right of your number. If you don’t have a CVV for your Maestro card you can use 000."
|
app/locale/en_US/Paymill_Paymill.csv
CHANGED
|
@@ -53,3 +53,4 @@
|
|
| 53 |
"paymill_slogan","Secure credit card payments powered by "
|
| 54 |
"paymill_slogan_elv","Direct debit payments powered by "
|
| 55 |
"paymill_error_text_invalid_cvc", "Invalid cvc"
|
|
|
| 53 |
"paymill_slogan","Secure credit card payments powered by "
|
| 54 |
"paymill_slogan_elv","Direct debit payments powered by "
|
| 55 |
"paymill_error_text_invalid_cvc", "Invalid cvc"
|
| 56 |
+
"paymill_cvc_tooltip", "What is a CVV/CVC number? Prospective credit cards will have a 3 to 4-digit number, usually on the back of the card. It ascertains that the payment is carried out by the credit card holder and the card account is legitimate. On Visa the CVV (Card Verification Value) appears after and to the right of your card number. Same goes for Mastercard’s CVC (Card Verfication Code), which also appears after and to the right of your card number, and has 3-digits. Diners Club, Discover, and JCB credit and debit cards have a three-digit card security code which also appears after and to the right of your card number. The American Express CID (Card Identification Number) is a 4-digit number printed on the front of your card. It appears above and to the right of your card number. On Maestro the CVV appears after and to the right of your number. If you don’t have a CVV for your Maestro card you can use 000."
|
app/locale/es_ES/Paymill_Paymill.csv
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
"paymill_credit_card","Tarjeta de crédito"
|
| 2 |
+
"paymill_direct_debit","Débito directo"
|
| 3 |
+
"paymill_creditcard","Tarjeta de crédito"
|
| 4 |
+
"paymill_directdebit","Débito directo"
|
| 5 |
+
"paymill_Basic_Setting","Paymill: Configuración básica"
|
| 6 |
+
"paymill_Public_Key","Clave pública"
|
| 7 |
+
"paymill_Private_Key","Clave privada"
|
| 8 |
+
"paymill_Activate_Debugging","Activar Depuración"
|
| 9 |
+
"paymill_fc_active","Activar Pago rápido"
|
| 10 |
+
"paymill_Activate_Logging","Activar Registro"
|
| 11 |
+
"paymill_Show_Label","Mostrar etiqueta de Paymill durante el Pago"
|
| 12 |
+
"paymill_credit_card_label","Paymill: Tarjeta de crédito"
|
| 13 |
+
"paymill_direct_debit_label","Paymill: Débito directo"
|
| 14 |
+
"paymill_opt_Enabled","Activar"
|
| 15 |
+
"paymill_opt_Countries","Países"
|
| 16 |
+
"paymill_opt_Sort","Ordenar por"
|
| 17 |
+
"paymill_Number","Número"
|
| 18 |
+
"paymill_Cvc","CVC"
|
| 19 |
+
"paymill_Holder","Nombre del titular"
|
| 20 |
+
"paymill_Date","Válida hasta (MM/YYYY)"
|
| 21 |
+
"paymill_Amount","Cantidad"
|
| 22 |
+
"paymill_Currency","Moneda"
|
| 23 |
+
"paymill_public_key_tooltip","Introduce tu clave pública"
|
| 24 |
+
"paymill_public_key_comment","Puedes encontrar tu clave pública en el sitio web de Paymill pulsando : MY ACCOUNT->Settings->API Keys"
|
| 25 |
+
"paymill_private_key_tooltip","Introduce tu clave privada."
|
| 26 |
+
"paymill_private_key_comment","Puedes encontrar tu clave pública en el sitio web de Paymill pulsando : MY ACCOUNT->Settings->API Keys"
|
| 27 |
+
"paymill_error_text_invalid_number_cc","Por favor, introduce un número de Tarjeta de Crédito válido."
|
| 28 |
+
"paymill_error_text_invalid_number_elv","Por favor, introduce un número de cuenta válido."
|
| 29 |
+
"paymill_error_text_invalid_expdate","Fecha de expiración inválida"
|
| 30 |
+
"paymill_error_text_invalid_holder_cc","Por favor, introduce el nombre del titular de la tarjeta."
|
| 31 |
+
"paymill_error_text_invalid_holder_elv","Por favor, introduce el nombre del titular de la cuenta."
|
| 32 |
+
"paymill_error_text_invalid_bankcode","Código de banco inválido."
|
| 33 |
+
"paymill_error_text_invalid_payment","No se ha podido indentificar el método de pago escogido. Por favor, contáctese con nuestro equipo de soporte al cliente."
|
| 34 |
+
"paymill_account","Número de cuenta"
|
| 35 |
+
"paymill_bankcode","Código del Banco"
|
| 36 |
+
"paymill_log","Registro de Paymill"
|
| 37 |
+
"paymill_error_text_no_entry_selected","Por favor, selecione una entrada"
|
| 38 |
+
"paymill_action_delete", "Eliminar selección"
|
| 39 |
+
"paymill_dialog_confirm", "Estás seguro?"
|
| 40 |
+
"paymill_backend_log_id","ID"
|
| 41 |
+
"paymill_backend_log_entry_date","Fecha"
|
| 42 |
+
"paymill_backend_log_version","Versión"
|
| 43 |
+
"paymill_backend_log_merchant_info","Información para el Comerciante"
|
| 44 |
+
"paymill_backend_log_dev_info","Información para los desarrolladores"
|
| 45 |
+
"paymill_backend_log_dev_info_additional","Información adicional para desarrolladores"
|
| 46 |
+
"paymill_checkout_generating_invoice","Se está generando la factura"
|
| 47 |
+
"paymill_preAuth_active","Autorizar pagos por Tarjeta de Crédito durante el pago y capturar manualmente al generar la factura."
|
| 48 |
+
"paymill_token_tolerace","Valor del Token de tolerancia"
|
| 49 |
+
"paymill_token_tolerace_tooltip","Suma de todos los cargos adicionales usados para evitar variaciones seguras en 3D"
|
| 50 |
+
"paymill_token_tolerace_comment", "Suma de todos los cargos adicionales usados para evitar variaciones seguras en 3D"
|
| 51 |
+
"paymill_log_action_success", "Acción realizada con éxito"
|
| 52 |
+
"paymill_accepted_currency", "Monedas aceptadas"
|
| 53 |
+
"paymill_slogan","Pago seguro con Tarjeta de crédito por "
|
| 54 |
+
"paymill_slogan_elv","Pagos con Débito directo por "
|
| 55 |
+
"paymill_error_text_invalid_cvc", "cvc incorrecto"
|
| 56 |
+
"paymill_cvc_tooltip", "What is a CVV/CVC number? Prospective credit cards will have a 3 to 4-digit number, usually on the back of the card. It ascertains that the payment is carried out by the credit card holder and the card account is legitimate. On Visa the CVV (Card Verification Value) appears after and to the right of your card number. Same goes for Mastercard’s CVC (Card Verfication Code), which also appears after and to the right of your card number, and has 3-digits. Diners Club, Discover, and JCB credit and debit cards have a three-digit card security code which also appears after and to the right of your card number. The American Express CID (Card Identification Number) is a 4-digit number printed on the front of your card. It appears above and to the right of your card number. On Maestro the CVV appears after and to the right of your number. If you don’t have a CVV for your Maestro card you can use 000."
|
js/paymill/paymentForm.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
|
|
|
|
|
| 1 |
//Backend Options
|
| 2 |
var PAYMILL_PUBLIC_KEY = null;
|
| 3 |
|
| 4 |
//State Descriptors
|
| 5 |
var PAYMILL_PAYMENT_NAME = "Preparing Payment";
|
| 6 |
var PAYMILL_IMAGE_PATH = null;
|
| 7 |
-
var PAYMILL_NO_FAST_CHECKOUT = false;
|
| 8 |
|
| 9 |
//Errortexts
|
| 10 |
var PAYMILL_ERROR_STRING = "";
|
|
@@ -21,7 +22,7 @@ var PAYMILL_ERROR_TEXT_IVALID_PAYMENT = null;
|
|
| 21 |
function debug(message)
|
| 22 |
{
|
| 23 |
debug_state = pmQuery('.paymill-option-debug').val();
|
| 24 |
-
if (debug_state
|
| 25 |
var displayName = "";
|
| 26 |
if (PAYMILL_PAYMENT_NAME === 'paymill_creditcard') {
|
| 27 |
displayName = 'Credit Card';
|
|
@@ -42,40 +43,41 @@ function debug(message)
|
|
| 42 |
*/
|
| 43 |
function paymillShowCardIcon()
|
| 44 |
{
|
| 45 |
-
|
| 46 |
-
|
| 47 |
-
|
| 48 |
-
|
| 49 |
-
|
| 50 |
-
|
| 51 |
-
|
| 52 |
-
|
| 53 |
-
|
| 54 |
-
|
| 55 |
-
|
| 56 |
-
|
| 57 |
-
|
| 58 |
-
|
| 59 |
-
|
| 60 |
-
|
| 61 |
-
|
| 62 |
-
|
| 63 |
-
|
| 64 |
-
|
| 65 |
-
|
| 66 |
-
|
| 67 |
-
|
| 68 |
-
|
| 69 |
-
|
| 70 |
-
|
| 71 |
-
|
| 72 |
-
|
| 73 |
-
|
| 74 |
-
|
| 75 |
-
|
| 76 |
-
|
| 77 |
-
|
| 78 |
-
|
|
|
|
| 79 |
}
|
| 80 |
|
| 81 |
/**
|
|
@@ -94,10 +96,8 @@ function paymillResponseHandler(error, result)
|
|
| 94 |
// Appending Token to form
|
| 95 |
debug("Saving Token in Form: " + result.token);
|
| 96 |
pmQuery('.paymill-payment-token').val(result.token);
|
| 97 |
-
payment.save();
|
| 98 |
}
|
| 99 |
}
|
| 100 |
-
|
| 101 |
/**
|
| 102 |
*
|
| 103 |
* @returns {Boolean}
|
|
@@ -120,85 +120,115 @@ function paymillSubmitForm()
|
|
| 120 |
PAYMILL_ERROR_TEXT_IVALID_BANKCODE = pmQuery('.paymill-payment-error-bankcode').val();
|
| 121 |
}
|
| 122 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 123 |
switch (PAYMILL_PAYMENT_NAME) {
|
| 124 |
case "paymill_creditcard":
|
| 125 |
-
|
| 126 |
-
|
| 127 |
-
var
|
| 128 |
-
|
| 129 |
-
|
| 130 |
-
|
| 131 |
-
|
| 132 |
-
|
| 133 |
-
|
| 134 |
-
|
| 135 |
-
|
| 136 |
-
|
| 137 |
-
|
| 138 |
-
|
| 139 |
-
|
| 140 |
-
|
| 141 |
-
|
| 142 |
-
|
| 143 |
-
|
| 144 |
-
|
| 145 |
-
|
| 146 |
-
|
| 147 |
-
|
| 148 |
-
|
| 149 |
-
|
| 150 |
-
|
| 151 |
-
|
| 152 |
-
|
| 153 |
-
|
| 154 |
-
|
| 155 |
-
|
| 156 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 157 |
|
| 158 |
Object.extend(Validation.methods, nv);
|
| 159 |
|
| 160 |
if (!paymillValidator.validate()) {
|
| 161 |
return false;
|
| 162 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 163 |
|
| 164 |
-
|
|
|
|
| 165 |
amount_int: parseInt(pmQuery('.paymill-payment-amount').val()), // E.g. "15" for 0.15 Eur
|
| 166 |
currency: pmQuery('.paymill-payment-currency').val(), // ISO 4217 e.g. "EUR"
|
| 167 |
number: pmQuery('#paymill_creditcard_number').val(),
|
| 168 |
exp_month: pmQuery('#paymill_creditcard_expiry_month').val(),
|
| 169 |
exp_year: pmQuery('#paymill_creditcard_expiry_year').val(),
|
| 170 |
-
cvc:
|
| 171 |
-
|
| 172 |
-
};
|
| 173 |
}
|
| 174 |
break;
|
| 175 |
-
|
| 176 |
case "paymill_directdebit":
|
| 177 |
-
|
| 178 |
-
|
| 179 |
-
var
|
| 180 |
-
|
| 181 |
-
|
| 182 |
-
|
| 183 |
-
|
| 184 |
-
|
| 185 |
-
|
| 186 |
-
|
| 187 |
-
|
| 188 |
-
|
| 189 |
-
|
| 190 |
-
|
| 191 |
-
|
| 192 |
-
|
| 193 |
-
|
| 194 |
-
|
| 195 |
-
|
| 196 |
-
|
| 197 |
-
|
| 198 |
-
|
| 199 |
-
|
| 200 |
-
|
| 201 |
-
|
|
|
|
|
|
|
|
|
|
| 202 |
|
| 203 |
Object.extend(Validation.methods, nv);
|
| 204 |
|
|
@@ -206,40 +236,77 @@ function paymillSubmitForm()
|
|
| 206 |
return false;
|
| 207 |
}
|
| 208 |
|
| 209 |
-
|
|
|
|
| 210 |
amount_int: pmQuery('.paymill-payment-amount').val(), // E.g. "15" for 0.15 Eur
|
| 211 |
currency: pmQuery('.paymill-payment-currency').val(), // ISO 4217 e.g. "EUR"
|
| 212 |
number: pmQuery('#paymill_directdebit_account').val(),
|
| 213 |
bank: pmQuery('#paymill_directdebit_bankcode').val(),
|
| 214 |
-
|
| 215 |
-
};
|
| 216 |
}
|
| 217 |
break;
|
| 218 |
-
|
| 219 |
-
default:
|
| 220 |
-
payment.save();
|
| 221 |
-
return false;
|
| 222 |
-
break;
|
| 223 |
-
}
|
| 224 |
-
|
| 225 |
-
if (PAYMILL_NO_FAST_CHECKOUT) {
|
| 226 |
-
debug("Generating Token");
|
| 227 |
-
paymill.createToken(params, paymillResponseHandler);
|
| 228 |
-
} else {
|
| 229 |
-
debug("FastCheckout Data found. Skipping Token generation.");
|
| 230 |
-
payment.save();
|
| 231 |
}
|
| 232 |
|
| 233 |
return false;
|
| 234 |
}
|
| 235 |
|
| 236 |
-
|
| 237 |
-
pmQuery(document).ready(function()
|
| 238 |
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 239 |
//Gather Data
|
| 240 |
PAYMILL_PUBLIC_KEY = pmQuery('.paymill-info-public_key').val();
|
| 241 |
pmQuery('#paymill_creditcard_number').live('input', paymillShowCardIcon);
|
| 242 |
-
pmQuery('#
|
| 243 |
-
pmQuery('#
|
| 244 |
-
pmQuery('#
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 245 |
});
|
| 1 |
+
var eventsSetted = false;
|
| 2 |
+
|
| 3 |
//Backend Options
|
| 4 |
var PAYMILL_PUBLIC_KEY = null;
|
| 5 |
|
| 6 |
//State Descriptors
|
| 7 |
var PAYMILL_PAYMENT_NAME = "Preparing Payment";
|
| 8 |
var PAYMILL_IMAGE_PATH = null;
|
|
|
|
| 9 |
|
| 10 |
//Errortexts
|
| 11 |
var PAYMILL_ERROR_STRING = "";
|
| 22 |
function debug(message)
|
| 23 |
{
|
| 24 |
debug_state = pmQuery('.paymill-option-debug').val();
|
| 25 |
+
if (debug_state === 1) {
|
| 26 |
var displayName = "";
|
| 27 |
if (PAYMILL_PAYMENT_NAME === 'paymill_creditcard') {
|
| 28 |
displayName = 'Credit Card';
|
| 43 |
*/
|
| 44 |
function paymillShowCardIcon()
|
| 45 |
{
|
| 46 |
+
var cssClass = "input-text paymill-validate-cc-number required-entry paymill_creditcard_number-";
|
| 47 |
+
switch (paymill.cardType(pmQuery('#paymill_creditcard_number').val()).toLowerCase()) {
|
| 48 |
+
case 'visa':
|
| 49 |
+
pmQuery('#paymill_creditcard_number').removeClass();
|
| 50 |
+
pmQuery('#paymill_creditcard_number').addClass(cssClass + 'visa');
|
| 51 |
+
break;
|
| 52 |
+
case 'mastercard':
|
| 53 |
+
pmQuery('#paymill_creditcard_number').removeClass();
|
| 54 |
+
pmQuery('#paymill_creditcard_number').addClass(cssClass + 'mastercard');
|
| 55 |
+
break;
|
| 56 |
+
case 'american express':
|
| 57 |
+
pmQuery('#paymill_creditcard_number').removeClass();
|
| 58 |
+
pmQuery('#paymill_creditcard_number').addClass(cssClass + 'american');
|
| 59 |
+
break;
|
| 60 |
+
case 'jcb':
|
| 61 |
+
pmQuery('#paymill_creditcard_number').removeClass();
|
| 62 |
+
pmQuery('#paymill_creditcard_number').addClass(cssClass + 'jcb');
|
| 63 |
+
break;
|
| 64 |
+
case 'maestro':
|
| 65 |
+
pmQuery('#paymill_creditcard_number').removeClass();
|
| 66 |
+
pmQuery('#paymill_creditcard_number').addClass(cssClass + 'maestro');
|
| 67 |
+
break;
|
| 68 |
+
case 'diners club':
|
| 69 |
+
pmQuery('#paymill_creditcard_number').removeClass();
|
| 70 |
+
pmQuery('#paymill_creditcard_number').addClass(cssClass + 'diners');
|
| 71 |
+
break;
|
| 72 |
+
case 'discover':
|
| 73 |
+
pmQuery('#paymill_creditcard_number').removeClass();
|
| 74 |
+
pmQuery('#paymill_creditcard_number').addClass(cssClass + 'discover');
|
| 75 |
+
break;
|
| 76 |
+
case 'unionpay':
|
| 77 |
+
pmQuery('#paymill_creditcard_number').removeClass();
|
| 78 |
+
pmQuery('#paymill_creditcard_number').addClass(cssClass + 'unionpay');
|
| 79 |
+
break;
|
| 80 |
+
}
|
| 81 |
}
|
| 82 |
|
| 83 |
/**
|
| 96 |
// Appending Token to form
|
| 97 |
debug("Saving Token in Form: " + result.token);
|
| 98 |
pmQuery('.paymill-payment-token').val(result.token);
|
|
|
|
| 99 |
}
|
| 100 |
}
|
|
|
|
| 101 |
/**
|
| 102 |
*
|
| 103 |
* @returns {Boolean}
|
| 120 |
PAYMILL_ERROR_TEXT_IVALID_BANKCODE = pmQuery('.paymill-payment-error-bankcode').val();
|
| 121 |
}
|
| 122 |
|
| 123 |
+
var form = 'co-payment-form';
|
| 124 |
+
if (pmQuery("#onestepcheckout-form").length > 0) {
|
| 125 |
+
var form = 'onestepcheckout-form';
|
| 126 |
+
}
|
| 127 |
+
|
| 128 |
switch (PAYMILL_PAYMENT_NAME) {
|
| 129 |
case "paymill_creditcard":
|
| 130 |
+
if (pmQuery('.paymill-info-fastCheckout-cc').val() === 'false') {
|
| 131 |
+
var paymillValidator = new Validation(form);
|
| 132 |
+
var nv = {
|
| 133 |
+
'paymill-validate-cc-number': new Validator(
|
| 134 |
+
'paymill-validate-cc-number',
|
| 135 |
+
PAYMILL_ERROR_TEXT_IVALID_NUMBER_CC,
|
| 136 |
+
function(v) {
|
| 137 |
+
return paymill.validateCardNumber(v);
|
| 138 |
+
},
|
| 139 |
+
''
|
| 140 |
+
),
|
| 141 |
+
'paymill-validate-cc-expdate-month': new Validator(
|
| 142 |
+
'paymill-validate-cc-expdate-month',
|
| 143 |
+
PAYMILL_ERROR_TEXT_IVALID_EXPDATE,
|
| 144 |
+
function(v) {
|
| 145 |
+
return paymill.validateExpiry(pmQuery('#paymill_creditcard_expiry_month').val(), pmQuery('#paymill_creditcard_expiry_year').val());
|
| 146 |
+
},
|
| 147 |
+
''
|
| 148 |
+
),
|
| 149 |
+
'paymill-validate-cc-expdate-year': new Validator(
|
| 150 |
+
'paymill-validate-cc-expdate-year',
|
| 151 |
+
PAYMILL_ERROR_TEXT_IVALID_EXPDATE,
|
| 152 |
+
function(v) {
|
| 153 |
+
return paymill.validateExpiry(pmQuery('#paymill_creditcard_expiry_month').val(), pmQuery('#paymill_creditcard_expiry_year').val());
|
| 154 |
+
},
|
| 155 |
+
''
|
| 156 |
+
),
|
| 157 |
+
'paymill-validate-cc-holder': new Validator(
|
| 158 |
+
'paymill-validate-cc-holder',
|
| 159 |
+
PAYMILL_ERROR_TEXT_IVALID_HOLDER_CC,
|
| 160 |
+
function(v) {
|
| 161 |
+
return (v !== '');
|
| 162 |
+
},
|
| 163 |
+
''
|
| 164 |
+
),
|
| 165 |
+
'paymill-validate-cc-cvc': new Validator(
|
| 166 |
+
'paymill-validate-cc-cvc',
|
| 167 |
+
PAYMILL_ERROR_TEXT_IVALID_CVC,
|
| 168 |
+
function(v) {
|
| 169 |
+
if (paymill.cardType(pmQuery('#paymill_creditcard_number').val()).toLowerCase() === 'maestro') {
|
| 170 |
+
return true;
|
| 171 |
+
}
|
| 172 |
+
|
| 173 |
+
return paymill.validateCvc(v);
|
| 174 |
+
},
|
| 175 |
+
''
|
| 176 |
+
)
|
| 177 |
+
};
|
| 178 |
|
| 179 |
Object.extend(Validation.methods, nv);
|
| 180 |
|
| 181 |
if (!paymillValidator.validate()) {
|
| 182 |
return false;
|
| 183 |
}
|
| 184 |
+
|
| 185 |
+
var cvc = 000;
|
| 186 |
+
|
| 187 |
+
if (!paymill.cardType(pmQuery('#paymill_creditcard_number').val()).toLowerCase() === 'maestro') {
|
| 188 |
+
cvc = pmQuery('#paymill_creditcard_cvc').val();
|
| 189 |
+
}
|
| 190 |
|
| 191 |
+
debug("Generating Token");
|
| 192 |
+
paymill.createToken({
|
| 193 |
amount_int: parseInt(pmQuery('.paymill-payment-amount').val()), // E.g. "15" for 0.15 Eur
|
| 194 |
currency: pmQuery('.paymill-payment-currency').val(), // ISO 4217 e.g. "EUR"
|
| 195 |
number: pmQuery('#paymill_creditcard_number').val(),
|
| 196 |
exp_month: pmQuery('#paymill_creditcard_expiry_month').val(),
|
| 197 |
exp_year: pmQuery('#paymill_creditcard_expiry_year').val(),
|
| 198 |
+
cvc: cvc,
|
| 199 |
+
cardholder: pmQuery('#paymill_creditcard_holdername').val()
|
| 200 |
+
}, paymillResponseHandler);
|
| 201 |
}
|
| 202 |
break;
|
|
|
|
| 203 |
case "paymill_directdebit":
|
| 204 |
+
if (pmQuery('.paymill-info-fastCheckout-elv').val() === 'false') {
|
| 205 |
+
var paymillValidator = new Validation(form);
|
| 206 |
+
var nv = {
|
| 207 |
+
'paymill-validate-dd-holdername': new Validator(
|
| 208 |
+
'paymill-validate-dd-holdername',
|
| 209 |
+
PAYMILL_ERROR_TEXT_IVALID_HOLDER_ELV,
|
| 210 |
+
function(v) {
|
| 211 |
+
return !(v === '');
|
| 212 |
+
},
|
| 213 |
+
''
|
| 214 |
+
),
|
| 215 |
+
'paymill-validate-dd-account': new Validator(
|
| 216 |
+
'paymill-validate-dd-account',
|
| 217 |
+
PAYMILL_ERROR_TEXT_IVALID_NUMBER_ELV,
|
| 218 |
+
function(v) {
|
| 219 |
+
return paymill.validateAccountNumber(v);
|
| 220 |
+
},
|
| 221 |
+
''
|
| 222 |
+
),
|
| 223 |
+
'paymill-validate-dd-bankcode': new Validator(
|
| 224 |
+
'paymill-validate-dd-bankcode',
|
| 225 |
+
PAYMILL_ERROR_TEXT_IVALID_BANKCODE,
|
| 226 |
+
function(v) {
|
| 227 |
+
return paymill.validateBankCode(v);
|
| 228 |
+
},
|
| 229 |
+
''
|
| 230 |
+
)
|
| 231 |
+
};
|
| 232 |
|
| 233 |
Object.extend(Validation.methods, nv);
|
| 234 |
|
| 236 |
return false;
|
| 237 |
}
|
| 238 |
|
| 239 |
+
debug("Generating Token");
|
| 240 |
+
paymill.createToken({
|
| 241 |
amount_int: pmQuery('.paymill-payment-amount').val(), // E.g. "15" for 0.15 Eur
|
| 242 |
currency: pmQuery('.paymill-payment-currency').val(), // ISO 4217 e.g. "EUR"
|
| 243 |
number: pmQuery('#paymill_directdebit_account').val(),
|
| 244 |
bank: pmQuery('#paymill_directdebit_bankcode').val(),
|
| 245 |
+
cardholder: pmQuery('#paymill_directdebit_holdername').val()
|
| 246 |
+
}, paymillResponseHandler);
|
| 247 |
}
|
| 248 |
break;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 249 |
}
|
| 250 |
|
| 251 |
return false;
|
| 252 |
}
|
| 253 |
|
| 254 |
+
function addPaymillEvents()
|
|
|
|
| 255 |
{
|
| 256 |
+
|
| 257 |
+
pmQuery('#paymill_directdebit_holdername').live('focus', function() {
|
| 258 |
+
pmQuery('.paymill-info-fastCheckout-elv').val('false');
|
| 259 |
+
pmQuery('#paymill_directdebit_holdername').val('');
|
| 260 |
+
});
|
| 261 |
+
|
| 262 |
+
pmQuery('#paymill_directdebit_account').live('focus', function() {
|
| 263 |
+
pmQuery('.paymill-info-fastCheckout-elv').val('false');
|
| 264 |
+
pmQuery('#paymill_directdebit_account').val('');
|
| 265 |
+
});
|
| 266 |
+
|
| 267 |
+
|
| 268 |
+
pmQuery('#paymill_directdebit_bankcode').live('focus', function() {
|
| 269 |
+
pmQuery('.paymill-info-fastCheckout-elv').val('false');
|
| 270 |
+
pmQuery('#paymill_directdebit_bankcode').val('');
|
| 271 |
+
});
|
| 272 |
+
|
| 273 |
+
pmQuery('#paymill_creditcard_holdername').live('focus', function() {
|
| 274 |
+
pmQuery('.paymill-info-fastCheckout-cc').val('false');
|
| 275 |
+
pmQuery('#paymill_creditcard_holdername').val('');
|
| 276 |
+
});
|
| 277 |
+
|
| 278 |
+
pmQuery('#paymill_creditcard_cvc').live('focus', function() {
|
| 279 |
+
pmQuery('.paymill-info-fastCheckout-cc').val('false');
|
| 280 |
+
});
|
| 281 |
+
|
| 282 |
+
pmQuery('#paymill_creditcard_number').live('focus', function() {
|
| 283 |
+
pmQuery('.paymill-info-fastCheckout-cc').val('false');
|
| 284 |
+
});
|
| 285 |
+
|
| 286 |
+
pmQuery('#paymill_creditcard_expiry_month').live('change', function() {
|
| 287 |
+
pmQuery('.paymill-info-fastCheckout-cc').val('false');
|
| 288 |
+
});
|
| 289 |
+
|
| 290 |
+
pmQuery('#paymill_creditcard_expiry_year').live('change', function() {
|
| 291 |
+
pmQuery('.paymill-info-fastCheckout-cc').val('false');
|
| 292 |
+
});
|
| 293 |
+
|
| 294 |
//Gather Data
|
| 295 |
PAYMILL_PUBLIC_KEY = pmQuery('.paymill-info-public_key').val();
|
| 296 |
pmQuery('#paymill_creditcard_number').live('input', paymillShowCardIcon);
|
| 297 |
+
pmQuery('#paymill_creditcard_number').live('input', paymillSubmitForm);
|
| 298 |
+
pmQuery('#paymill_creditcard_cvc').live('input', paymillSubmitForm);
|
| 299 |
+
pmQuery('#paymill_creditcard_expiry_month').live('change', paymillSubmitForm);
|
| 300 |
+
pmQuery('#paymill_creditcard_expiry_year').live('change', paymillSubmitForm);
|
| 301 |
+
|
| 302 |
+
pmQuery('#paymill_directdebit_bankcode').live('input', paymillSubmitForm);
|
| 303 |
+
eventsSetted = true;
|
| 304 |
+
|
| 305 |
+
}
|
| 306 |
+
|
| 307 |
+
pmQuery(document).ready(function()
|
| 308 |
+
{
|
| 309 |
+
if (!eventsSetted) {
|
| 310 |
+
addPaymillEvents();
|
| 311 |
+
}
|
| 312 |
});
|
lib/Services/Paymill/PaymentProcessor.php
CHANGED
|
@@ -56,7 +56,6 @@ class Services_Paymill_PaymentProcessor
|
|
| 56 |
$this->setPrivateKey($privateKey);
|
| 57 |
$this->setApiUrl($apiUrl);
|
| 58 |
$this->setLibBase($libBase);
|
| 59 |
-
$this->_preAuthAmount = isset($params['preauthamount']) ? $params['preauthamount'] : 0;
|
| 60 |
$this->_token = $params['token'];
|
| 61 |
$this->_amount = $params['amount'];
|
| 62 |
$this->_currency = $params['currency'];
|
|
@@ -108,6 +107,7 @@ class Services_Paymill_PaymentProcessor
|
|
| 108 |
'client' => $this->_clientId
|
| 109 |
)
|
| 110 |
);
|
|
|
|
| 111 |
$this->_validateResult($payment, 'Payment');
|
| 112 |
|
| 113 |
$this->_paymentId = $payment['id'];
|
|
@@ -123,15 +123,15 @@ class Services_Paymill_PaymentProcessor
|
|
| 123 |
*/
|
| 124 |
private function _createTransaction()
|
| 125 |
{
|
| 126 |
-
$
|
| 127 |
-
|
| 128 |
-
|
| 129 |
-
|
| 130 |
-
|
| 131 |
-
|
| 132 |
-
'source' => $this->_source
|
| 133 |
-
)
|
| 134 |
);
|
|
|
|
|
|
|
| 135 |
$this->_validateResult($transaction, 'Transaction');
|
| 136 |
|
| 137 |
$this->_transactionId = $transaction['id'];
|
|
@@ -196,7 +196,7 @@ class Services_Paymill_PaymentProcessor
|
|
| 196 |
*/
|
| 197 |
private function _validateParameter()
|
| 198 |
{
|
| 199 |
-
if($this->_preAuthAmount == null){
|
| 200 |
$this->_preAuthAmount = $this->_amount;
|
| 201 |
}
|
| 202 |
|
|
@@ -292,6 +292,15 @@ class Services_Paymill_PaymentProcessor
|
|
| 292 |
}
|
| 293 |
}
|
| 294 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 295 |
/**
|
| 296 |
* Executes the Payment Process
|
| 297 |
*
|
|
@@ -304,13 +313,24 @@ class Services_Paymill_PaymentProcessor
|
|
| 304 |
return false;
|
| 305 |
}
|
| 306 |
|
|
|
|
|
|
|
| 307 |
try {
|
|
|
|
| 308 |
$this->_createClient();
|
|
|
|
| 309 |
$this->_createPayment();
|
| 310 |
-
$this->
|
| 311 |
-
|
|
|
|
|
|
|
| 312 |
$this->_createTransaction();
|
|
|
|
|
|
|
|
|
|
|
|
|
| 313 |
}
|
|
|
|
| 314 |
return true;
|
| 315 |
} catch (Exception $ex) {
|
| 316 |
// paymill wrapper threw an exception
|
|
@@ -319,15 +339,16 @@ class Services_Paymill_PaymentProcessor
|
|
| 319 |
}
|
| 320 |
}
|
| 321 |
|
| 322 |
-
final public function capture()
|
|
|
|
| 323 |
$this->_initiatePhpWrapperClasses();
|
| 324 |
-
if(!isset($this->_amount) || !isset($this->_currency) || !isset($this->_preauthId)){
|
| 325 |
return false;
|
| 326 |
}
|
| 327 |
return $this->_createTransaction();
|
| 328 |
}
|
| 329 |
|
| 330 |
-
|
| 331 |
* Returns the objects data
|
| 332 |
*
|
| 333 |
* @return array
|
|
@@ -338,7 +359,6 @@ class Services_Paymill_PaymentProcessor
|
|
| 338 |
'apiurl' => $this->_apiUrl,
|
| 339 |
'libbase' => $this->_libBase,
|
| 340 |
'privatekey' => $this->_privateKey,
|
| 341 |
-
'logger' => $this->_logger,
|
| 342 |
'token' => $this->_token,
|
| 343 |
'amount' => $this->_amount,
|
| 344 |
'preauthamount' => $this->_preAuthAmount,
|
| 56 |
$this->setPrivateKey($privateKey);
|
| 57 |
$this->setApiUrl($apiUrl);
|
| 58 |
$this->setLibBase($libBase);
|
|
|
|
| 59 |
$this->_token = $params['token'];
|
| 60 |
$this->_amount = $params['amount'];
|
| 61 |
$this->_currency = $params['currency'];
|
| 107 |
'client' => $this->_clientId
|
| 108 |
)
|
| 109 |
);
|
| 110 |
+
|
| 111 |
$this->_validateResult($payment, 'Payment');
|
| 112 |
|
| 113 |
$this->_paymentId = $payment['id'];
|
| 123 |
*/
|
| 124 |
private function _createTransaction()
|
| 125 |
{
|
| 126 |
+
$parameter = array(
|
| 127 |
+
'amount' => $this->_amount,
|
| 128 |
+
'currency' => $this->_currency,
|
| 129 |
+
'description' => $this->_description,
|
| 130 |
+
'preauthorization' => $this->_preauthId,
|
| 131 |
+
'source' => $this->_source
|
|
|
|
|
|
|
| 132 |
);
|
| 133 |
+
$this->_preauthId != null ? $parameter['preauthorization'] = $this->_preauthId : $parameter['payment'] = $this->_paymentId;
|
| 134 |
+
$transaction = $this->_transactionsObject->create($parameter);
|
| 135 |
$this->_validateResult($transaction, 'Transaction');
|
| 136 |
|
| 137 |
$this->_transactionId = $transaction['id'];
|
| 196 |
*/
|
| 197 |
private function _validateParameter()
|
| 198 |
{
|
| 199 |
+
if ($this->_preAuthAmount == null) {
|
| 200 |
$this->_preAuthAmount = $this->_amount;
|
| 201 |
}
|
| 202 |
|
| 292 |
}
|
| 293 |
}
|
| 294 |
|
| 295 |
+
private function _processPreAuthCapture($captureNow)
|
| 296 |
+
{
|
| 297 |
+
$this->_createPreauthorization();
|
| 298 |
+
if ($captureNow) {
|
| 299 |
+
$this->_createTransaction();
|
| 300 |
+
}
|
| 301 |
+
return true;
|
| 302 |
+
}
|
| 303 |
+
|
| 304 |
/**
|
| 305 |
* Executes the Payment Process
|
| 306 |
*
|
| 313 |
return false;
|
| 314 |
}
|
| 315 |
|
| 316 |
+
$this->_log('Process payment with following data', print_r($this->toArray(), true));
|
| 317 |
+
|
| 318 |
try {
|
| 319 |
+
|
| 320 |
$this->_createClient();
|
| 321 |
+
$this->_log('Client API Response', print_r($this->_clientsObject->getResponse(), true));
|
| 322 |
$this->_createPayment();
|
| 323 |
+
$this->_log('Payment API Response', print_r($this->_paymentsObject->getResponse(), true));
|
| 324 |
+
|
| 325 |
+
//creates a transaction if there is no difference between the amount
|
| 326 |
+
if ($this->_preAuthAmount === $this->_amount && $captureNow) {
|
| 327 |
$this->_createTransaction();
|
| 328 |
+
$this->_log('Transaction API Response', print_r($this->getLastResponse(), true));
|
| 329 |
+
} else {
|
| 330 |
+
$this->_processPreAuthCapture($captureNow);
|
| 331 |
+
$this->_log('Pre-Auth API Response', print_r($this->getLastResponse(), true));
|
| 332 |
}
|
| 333 |
+
|
| 334 |
return true;
|
| 335 |
} catch (Exception $ex) {
|
| 336 |
// paymill wrapper threw an exception
|
| 339 |
}
|
| 340 |
}
|
| 341 |
|
| 342 |
+
final public function capture()
|
| 343 |
+
{
|
| 344 |
$this->_initiatePhpWrapperClasses();
|
| 345 |
+
if (!isset($this->_amount) || !isset($this->_currency) || !isset($this->_preauthId)) {
|
| 346 |
return false;
|
| 347 |
}
|
| 348 |
return $this->_createTransaction();
|
| 349 |
}
|
| 350 |
|
| 351 |
+
/**
|
| 352 |
* Returns the objects data
|
| 353 |
*
|
| 354 |
* @return array
|
| 359 |
'apiurl' => $this->_apiUrl,
|
| 360 |
'libbase' => $this->_libBase,
|
| 361 |
'privatekey' => $this->_privateKey,
|
|
|
|
| 362 |
'token' => $this->_token,
|
| 363 |
'amount' => $this->_amount,
|
| 364 |
'preauthamount' => $this->_preAuthAmount,
|
package.xml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>Paymill_Paymill</name>
|
| 4 |
-
<version>3.
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license>Open Software License</license>
|
| 7 |
<channel>community</channel>
|
|
@@ -13,12 +13,14 @@ The Paymill Magento extension provides a credit card form and a direct debit for
|
|
| 13 |
<br /><br />
|
| 14 |
IMPORTANT: Only use the latest version.
|
| 15 |
</description>
|
| 16 |
-
<notes>*
|
| 17 |
-
*
|
|
|
|
|
|
|
| 18 |
<authors><author><name>PayIntelligent</name><user>Paymill</user><email>community@paymill.de</email></author></authors>
|
| 19 |
-
<date>2013-09
|
| 20 |
-
<time>
|
| 21 |
-
<contents><target name="magecommunity"><dir><dir name="Paymill"><dir name="Paymill"><dir name="Block"><dir name="Adminhtml"><dir name="Log"><file name="Grid.php" hash="
|
| 22 |
<compatible/>
|
| 23 |
-
<dependencies><required><php><min>5.2.0</min><max>6.0.0
|
| 24 |
</package>
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>Paymill_Paymill</name>
|
| 4 |
+
<version>3.2.0</version>
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license>Open Software License</license>
|
| 7 |
<channel>community</channel>
|
| 13 |
<br /><br />
|
| 14 |
IMPORTANT: Only use the latest version.
|
| 15 |
</description>
|
| 16 |
+
<notes>* OneStepCheckout now supported
|
| 17 |
+
* more logs during the checkout
|
| 18 |
+
* better log view
|
| 19 |
+
* no cvc for maestro now provided</notes>
|
| 20 |
<authors><author><name>PayIntelligent</name><user>Paymill</user><email>community@paymill.de</email></author></authors>
|
| 21 |
+
<date>2013-10-09</date>
|
| 22 |
+
<time>13:00:39</time>
|
| 23 |
+
<contents><target name="magecommunity"><dir><dir name="Paymill"><dir name="Paymill"><dir name="Block"><dir name="Adminhtml"><dir name="Log"><file name="Grid.php" hash="7d74f94403297eeb551272ad5c94513f"/><dir name="View"><file name="Plane.php" hash="87b7707dba28fa4357ab7fb2d12b19e4"/><file name="Tabs.php" hash="d16d9748921a34067242eaf92d6f299e"/></dir><file name="View.php" hash="af850dd16c3e7505a69a6cb3ca3fbc27"/></dir><file name="Log.php" hash="02930fb46a2a4569176ceb29c45037e8"/></dir><dir name="Payment"><dir name="Form"><file name="PaymentFormAbstract.php" hash="3b7c3c02a50d24def79485a7d2d47dd5"/><file name="PaymentFormCreditcard.php" hash="5351fa41246fb107bd3e62fdd274f715"/><file name="PaymentFormDirectdebit.php" hash="526991e3ed3c25b6c242fdd21e7aba25"/></dir><dir name="Info"><file name="PaymentFormCreditcard.php" hash="3e7a3d2b84878bc22f6ac9e2a0ac5c76"/><file name="PaymentFormDirectdebit.php" hash="bbc8f0cae5dff57df9ec1975650fe5e0"/></dir></dir></dir><dir name="Helper"><file name="CustomerHelper.php" hash="2970725a233e835e8c24d47d6a650c6a"/><file name="Data.php" hash="65371da937bd0aa1ba57aa4b9d27d989"/><file name="FastCheckoutHelper.php" hash="48058398d9af8d92f69e0a0566b0b040"/><file name="LoggingHelper.php" hash="53ea7f4d5c3af8de149a06dbe37ac061"/><file name="OptionHelper.php" hash="f0fae6bb8f67fc2e27f6957925e8168e"/><file name="PaymentHelper.php" hash="192be10925ef842da606bcad3f652375"/><file name="RefundHelper.php" hash="b936d48e6f9022acb0370ec755cf5850"/><file name="TransactionHelper.php" hash="7cce355230eee2f1c617df1bd18f8752"/></dir><dir name="Model"><file name="Fastcheckout.php" hash="94565a600a12f880edeabc941bd35ded"/><dir name="Log"><file name="Search.php" hash="4338b3876e745405bfcc5a32cfe42527"/></dir><file name="Log.php" hash="476c497495b92c3cf49e0c7b470854d4"/><dir name="Method"><file name="MethodModelAbstract.php" hash="ad32789858c27a51eadab5de0c5d8234"/><file name="MethodModelCreditcard.php" hash="972c52004e7f8f9be24a9037bd93be29"/><file name="MethodModelDirectdebit.php" hash="bc7bc9b40760ca488e48a257dccc768d"/></dir><dir name="Mysql4"><dir name="Fastcheckout"><file name="Collection.php" hash="14d4aa413ec952fd2452f08ab2a208f6"/></dir><file name="Fastcheckout.php" hash="56b09daa390ba1f4f5116f1d701833e4"/><dir name="Log"><file name="Collection.php" hash="cf4d8fec68a4cc44b2e47bf69e014cf3"/></dir><file name="Log.php" hash="9bd80dc9300cc189b6b3ebd921b4e3e6"/></dir><file name="Observer.php" hash="1f4a97d901810157228fd9224f319827"/><file name="TransactionData.php" hash="6f2bfd7a7ecde8dc4f21e03d33fdd7e4"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="LogController.php" hash="fe634fc07d161f160ae060600561a0b1"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="402c36431d690ffa9b7eae074cadfb4e"/><file name="config.xml" hash="ecae69a4f11d40a4a72f771419fde28f"/><file name="system.xml" hash="6120717df12907e1b707c749435ea829"/></dir><dir name="sql"><dir name="paymill_setup"><file name="mysql4-install-3.0.0.php" hash="c092db5064c8a204fdbbb01f2bba3974"/></dir></dir></dir></dir></dir></target><target name="magedesign"><dir><dir name="adminhtml"><dir name="base"><dir name="default"><dir name="layout"><file name="paymill.xml" hash="fcc95f6e7c375fee779178a0f9f1a1d8"/></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="paymill.xml" hash="e3dee97111982dab7c2816e4d65504e9"/></dir></dir></dir></dir></dir></target><target name="mageetc"><dir><dir><file name="Paymill_Paymill.xml" hash=""/></dir></dir></target><target name="magelocale"><dir><dir name="de_DE"><file name="Paymill_Paymill.csv" hash="39f32cc2babac62a1796971aca3a97b8"/></dir><dir name="en_GB"><file name="Paymill_Paymill.csv" hash="3945f929635b1e2e556915b1017f6634"/></dir><dir name="en_US"><file name="Paymill_Paymill.csv" hash="3ce7c761e916c56e55024a588dd61fc2"/></dir><dir name="es_ES"><file name="Paymill_Paymill.csv" hash="49e6fd014b2e2f559e791f048ace44d7"/></dir></dir></target><target name="mage"><dir><dir name="js"><dir name="paymill"><file name="paymentForm.js" hash="b433bfa1ef6be9a12b6ae2ab557da33c"/></dir></dir></dir></target><target name="magelib"><dir><dir name="Services"><dir name="Paymill"><dir name="Apiclient"><file name="Curl.php" hash="62457ead798a8bf62ccddb0bc7e8f449"/><file name="Interface.php" hash="349309458455e550c562fb17cf23f4a6"/><file name="paymill.crt" hash="51e14b4c734e450402ea2cf73f2aee0f"/></dir><file name="Base.php" hash="9f583d1613257b20a7d325131d545fae"/><file name="Clients.php" hash="f9bc9034a6f3b88a842f35efd6524ab6"/><file name="Exception.php" hash="9beffb75d92c0de3c1c7ea5b33930fff"/><file name="LoggingInterface.php" hash="46ebeede1da14b761c54a18aff6c3b79"/><file name="Offers.php" hash="28b2d420c87531ffa1f193ec3934fc5b"/><file name="PaymentProcessor.php" hash="e16fb85db7fa34a17f98f3e1ecac5f91"/><file name="Payments.php" hash="dd8e18548fb149956fff93fd55f68029"/><file name="Preauthorizations.php" hash="af4c8ab19444eee76951e9fe9f0e8fdd"/><file name="Refunds.php" hash="e15a2dfb3df362cb9cd45c8e5382b77b"/><file name="Subscriptions.php" hash="e8f55fcfd1065439d49bc5f734294be6"/><file name="Transactions.php" hash="fb6d248c88285105a426bf4491cbfc6b"/><file name="Webhooks.php" hash="06be5e57b81b3052a56371933e0674e9"/></dir></dir></dir></target><target name="mageskin"><dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="css"><dir name="paymill"><file name="logo.css" hash="6c09811ecd11d36b9e41b4a616481769"/></dir></dir><dir name="images"><dir name="paymill"><file name="icon_32x20_amex.png" hash="42c5fb43b4b603804b50da9761927d40"/><file name="icon_32x20_dinersclub.png" hash="0a7a8fc8f679ccf05d91298c9968629c"/><file name="icon_32x20_discover.png" hash="4fe8ef419087bed97cddbdeb251b847c"/><file name="icon_32x20_jcb.png" hash="774a040f938c5566fa3fddfa840d4743"/><file name="icon_32x20_maestro.png" hash="a6ffd22c9bbedb603449e2aa6136dbd1"/><file name="icon_32x20_mastercard.png" hash="09aef6dcbc50038605b7c0e5a38eb76e"/><file name="icon_32x20_visa.png" hash="e6d54e5c0120202eb5757bcfe499d73b"/><file name="icon_paymill.png" hash="303983a288b45cc7ddc5b88ad2eedd51"/></dir></dir></dir></dir></dir></dir></target></contents>
|
| 24 |
<compatible/>
|
| 25 |
+
<dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
|
| 26 |
</package>
|
skin/frontend/base/default/css/paymill/logo.css
CHANGED
|
@@ -1,17 +1,69 @@
|
|
| 1 |
.paymill_powered {
|
| 2 |
-
|
| 3 |
-
|
| 4 |
-
|
| 5 |
-
|
| 6 |
-
|
| 7 |
-
|
| 8 |
-
|
| 9 |
}
|
|
|
|
| 10 |
.paymill_powered > .paymill_credits {
|
| 11 |
-
|
| 12 |
-
|
| 13 |
}
|
|
|
|
| 14 |
.paymill_powered > a {
|
| 15 |
-
|
| 16 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 17 |
}
|
| 1 |
.paymill_powered {
|
| 2 |
+
border: 1px solid #ccc;
|
| 3 |
+
width: 350px;
|
| 4 |
+
padding: 4px;
|
| 5 |
+
background: white url('../../images/paymill/icon_paymill.png') no-repeat center right;
|
| 6 |
+
-moz-border-radius: 3px;
|
| 7 |
+
border-radius: 3px;
|
| 8 |
+
margin-top: 10px;
|
| 9 |
}
|
| 10 |
+
|
| 11 |
.paymill_powered > .paymill_credits {
|
| 12 |
+
width: 160px;
|
| 13 |
+
color: #666;
|
| 14 |
}
|
| 15 |
+
|
| 16 |
.paymill_powered > a {
|
| 17 |
+
color: #666;
|
| 18 |
+
text-decoration: underline;
|
| 19 |
+
}
|
| 20 |
+
|
| 21 |
+
.paymill_creditcard_number-visa
|
| 22 |
+
{
|
| 23 |
+
background: url('../../images/paymill/icon_32x20_visa.png') no-repeat center right;
|
| 24 |
+
}
|
| 25 |
+
|
| 26 |
+
.paymill_creditcard_number-mastercard
|
| 27 |
+
{
|
| 28 |
+
background: url('../../images/paymill/icon_32x20_mastercard.png') no-repeat center right;
|
| 29 |
+
}
|
| 30 |
+
|
| 31 |
+
.paymill_creditcard_number-american
|
| 32 |
+
{
|
| 33 |
+
background: url('../../images/paymill/icon_32x20_amex.png') no-repeat center right;
|
| 34 |
+
}
|
| 35 |
+
|
| 36 |
+
.paymill_creditcard_number-jcb
|
| 37 |
+
{
|
| 38 |
+
background: url('../../images/paymill/icon_32x20_jcb.png') no-repeat center right;
|
| 39 |
+
}
|
| 40 |
+
|
| 41 |
+
.paymill_creditcard_number-maestro
|
| 42 |
+
{
|
| 43 |
+
background: url('../../images/paymill/icon_32x20_maestro.png') no-repeat center right;
|
| 44 |
+
}
|
| 45 |
+
|
| 46 |
+
.paymill_creditcard_number-unionpay
|
| 47 |
+
{
|
| 48 |
+
background: url('../../images/paymill/icon_32x20_unionpay.png') no-repeat center right;
|
| 49 |
+
}
|
| 50 |
+
|
| 51 |
+
.paymill_creditcard_number-diners
|
| 52 |
+
{
|
| 53 |
+
background: url('../../images/paymill/icon_32x20_dinersclub.png') no-repeat center right;
|
| 54 |
+
}
|
| 55 |
+
|
| 56 |
+
.paymill_creditcard_number-discover
|
| 57 |
+
{
|
| 58 |
+
background: url('../../images/paymill/icon_32x20_discover.png') no-repeat center right;
|
| 59 |
+
}
|
| 60 |
+
|
| 61 |
+
.tooltip
|
| 62 |
+
{
|
| 63 |
+
margin-left: 3px;
|
| 64 |
+
font-size: 11px;
|
| 65 |
+
color: #E2E2E2;
|
| 66 |
+
padding: 0 5px;
|
| 67 |
+
border-radius: 100px;
|
| 68 |
+
background: #636363;
|
| 69 |
}
|
