Version Notes
initial release
Download this release
Release Info
Developer | WirecardCEE |
Extension | wirecard_checkout_page |
Version | 4.0.0 |
Comparing to | |
See all releases |
Version 4.0.0
- app/code/community/Wirecard/CheckoutPage/Block/Additional/Installment.php +82 -0
- app/code/community/Wirecard/CheckoutPage/Block/Additional/Invoice.php +76 -0
- app/code/community/Wirecard/CheckoutPage/Block/Additional/InvoiceB2b.php +50 -0
- app/code/community/Wirecard/CheckoutPage/Block/Admin/Buttons.php +60 -0
- app/code/community/Wirecard/CheckoutPage/Block/Admin/Support/Container.php +56 -0
- app/code/community/Wirecard/CheckoutPage/Block/Admin/Support/Edit/Form.php +75 -0
- app/code/community/Wirecard/CheckoutPage/Block/Admin/Tabs.php +62 -0
- app/code/community/Wirecard/CheckoutPage/Block/Checkout.php +73 -0
- app/code/community/Wirecard/CheckoutPage/Block/Failure.php +53 -0
- app/code/community/Wirecard/CheckoutPage/Block/Form.php +108 -0
- app/code/community/Wirecard/CheckoutPage/Block/Info.php +52 -0
- app/code/community/Wirecard/CheckoutPage/Block/Processing.php +83 -0
- app/code/community/Wirecard/CheckoutPage/Block/Return.php +53 -0
- app/code/community/Wirecard/CheckoutPage/Helper/Data.php +154 -0
- app/code/community/Wirecard/CheckoutPage/Model/Abstract.php +521 -0
- app/code/community/Wirecard/CheckoutPage/Model/Admin/Support.php +129 -0
- app/code/community/Wirecard/CheckoutPage/Model/Admin/Test.php +95 -0
- app/code/community/Wirecard/CheckoutPage/Model/Autoloader.php +57 -0
- app/code/community/Wirecard/CheckoutPage/Model/Bmc.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Cc.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/CcMoto.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Ekonto.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Epaybg.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Eps.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Giropay.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Ideal.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Installment.php +106 -0
- app/code/community/Wirecard/CheckoutPage/Model/Invoice.php +107 -0
- app/code/community/Wirecard/CheckoutPage/Model/Invoiceb2b.php +161 -0
- app/code/community/Wirecard/CheckoutPage/Model/Moneta.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Mpass.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Observer.php +55 -0
- app/code/community/Wirecard/CheckoutPage/Model/P24.php +45 -0
- app/code/community/Wirecard/CheckoutPage/Model/Paybox.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Paypal.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Paysafecard.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Poli.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Quick.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Select.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Sepadd.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Skrilldirect.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Skrillwallet.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Sofortbanking.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/System/Config/Configurations.php +49 -0
- app/code/community/Wirecard/CheckoutPage/Model/System/Config/InstallmentProviders.php +45 -0
- app/code/community/Wirecard/CheckoutPage/Model/System/Config/InvoiceProviders.php +45 -0
- app/code/community/Wirecard/CheckoutPage/Model/System/Config/Layouts.php +49 -0
- app/code/community/Wirecard/CheckoutPage/Model/System/Config/Order/Status.php +42 -0
- app/code/community/Wirecard/CheckoutPage/Model/Tatrapay.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Trustly.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Trustpay.php +43 -0
- app/code/community/Wirecard/CheckoutPage/Model/Voucher.php +43 -0
- app/code/community/Wirecard/CheckoutPage/controllers/Admin/WirecardcheckoutpageController.php +88 -0
- app/code/community/Wirecard/CheckoutPage/controllers/ProcessingController.php +382 -0
- app/code/community/Wirecard/CheckoutPage/etc/adminhtml.xml +57 -0
- app/code/community/Wirecard/CheckoutPage/etc/config.xml +366 -0
- app/code/community/Wirecard/CheckoutPage/etc/system.xml +2713 -0
- app/code/community/Wirecard/CheckoutPage/sql/wirecard_checkoutpage_setup/mysql4-install-4.0.0.php +73 -0
- app/code/local/Wirecard/QPay/Config/client.config.php +24 -0
- app/code/local/Wirecard/QPay/Config/user.config.php +25 -0
- app/code/local/Wirecard/QPay/Error.php +27 -0
- app/code/local/Wirecard/QPay/Exception/BadMethodCallException.php +18 -0
- app/code/local/Wirecard/QPay/Exception/ExceptionInterface.php +18 -0
- app/code/local/Wirecard/QPay/Exception/InvalidArgumentException.php +18 -0
- app/code/local/Wirecard/QPay/Exception/InvalidParamLengthException.php +18 -0
- app/code/local/Wirecard/QPay/Exception/InvalidResponseException.php +18 -0
- app/code/local/Wirecard/QPay/FrontendClient.php +743 -0
- app/code/local/Wirecard/QPay/MobileDetect.php +1509 -0
- app/code/local/Wirecard/QPay/Module.php +39 -0
- app/code/local/Wirecard/QPay/PaymentType.php +24 -0
- app/code/local/Wirecard/QPay/Response/Initiation.php +27 -0
- app/code/local/Wirecard/QPay/Response/ResponseAbstract.php +47 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/ApproveReversal.php +19 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/Deposit.php +34 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/DepositReversal.php +19 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/FinancialObject.php +42 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/GetOrderDetails.php +72 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/Order.php +406 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/Order/Credit.php +206 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/Order/CreditIterator.php +20 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/Order/OrderIterator.php +81 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/Order/Payment.php +253 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/Order/Payment/Ideal.php +67 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/Order/Payment/Paypal.php +227 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/Order/Payment/Sofortueberweisung.php +147 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/Order/PaymentIterator.php +19 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/RecurPayment.php +35 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/Refund.php +35 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/RefundReversal.php +19 -0
- app/code/local/Wirecard/QPay/Response/Toolkit/ResponseAbstract.php +50 -0
- app/code/local/Wirecard/QPay/Return/Cancel.php +18 -0
- app/code/local/Wirecard/QPay/Return/Failure.php +32 -0
- app/code/local/Wirecard/QPay/Return/Pending.php +18 -0
- app/code/local/Wirecard/QPay/Return/Success.php +18 -0
- app/code/local/Wirecard/QPay/Return/Success/CreditCard.php +18 -0
- app/code/local/Wirecard/QPay/Return/Success/Ideal.php +18 -0
- app/code/local/Wirecard/QPay/Return/Success/PayPal.php +18 -0
- app/code/local/Wirecard/QPay/Return/Success/Sofortueberweisung.php +18 -0
- app/code/local/Wirecard/QPay/ReturnFactory.php +108 -0
- app/code/local/Wirecard/QPay/ToolkitClient.php +379 -0
- app/code/local/Wirecard/Stdlib/Basket.php +181 -0
- app/code/local/Wirecard/Stdlib/Basket/Item.php +146 -0
- app/code/local/Wirecard/Stdlib/Client/ClientAbstract.php +439 -0
- app/code/local/Wirecard/Stdlib/Client/Exception/ExceptionInterface.php +19 -0
- app/code/local/Wirecard/Stdlib/Client/Exception/InvalidResponseException.php +19 -0
- app/code/local/Wirecard/Stdlib/Config.php +194 -0
- app/code/local/Wirecard/Stdlib/Config/client.config.php +24 -0
- app/code/local/Wirecard/Stdlib/ConsumerData.php +271 -0
- app/code/local/Wirecard/Stdlib/ConsumerData/Address.php +262 -0
- app/code/local/Wirecard/Stdlib/Error.php +73 -0
- app/code/local/Wirecard/Stdlib/Exception/ExceptionInterface.php +19 -0
- app/code/local/Wirecard/Stdlib/Exception/InvalidArgumentException.php +19 -0
- app/code/local/Wirecard/Stdlib/Exception/InvalidFormatException.php +19 -0
- app/code/local/Wirecard/Stdlib/Exception/InvalidResponseException.php +18 -0
- app/code/local/Wirecard/Stdlib/Exception/InvalidTypeException.php +18 -0
- app/code/local/Wirecard/Stdlib/Exception/InvalidValueException.php +18 -0
- app/code/local/Wirecard/Stdlib/Exception/UnexpectedValueException.php +18 -0
- app/code/local/Wirecard/Stdlib/Fingerprint.php +106 -0
- app/code/local/Wirecard/Stdlib/FingerprintOrder.php +163 -0
- app/code/local/Wirecard/Stdlib/Module.php +29 -0
- app/code/local/Wirecard/Stdlib/Module/ModuleAbstract.php +38 -0
- app/code/local/Wirecard/Stdlib/Module/ModuleInterface.php +36 -0
- app/code/local/Wirecard/Stdlib/PaymentTypeAbstract.php +162 -0
- app/code/local/Wirecard/Stdlib/Response/ResponseAbstract.php +119 -0
- app/code/local/Wirecard/Stdlib/Return/Cancel.php +26 -0
- app/code/local/Wirecard/Stdlib/Return/Failure.php +73 -0
- app/code/local/Wirecard/Stdlib/Return/Pending.php +71 -0
- app/code/local/Wirecard/Stdlib/Return/ReturnAbstract.php +129 -0
- app/code/local/Wirecard/Stdlib/Return/Success.php +158 -0
- app/code/local/Wirecard/Stdlib/Return/Success/CreditCard.php +66 -0
- app/code/local/Wirecard/Stdlib/Return/Success/Ideal.php +47 -0
- app/code/local/Wirecard/Stdlib/Return/Success/PayPal.php +120 -0
- app/code/local/Wirecard/Stdlib/Return/Success/SepaDD.php +56 -0
- app/code/local/Wirecard/Stdlib/Return/Success/Sofortueberweisung.php +93 -0
- app/code/local/Wirecard/Stdlib/ReturnFactoryAbstract.php +67 -0
- app/code/local/Wirecard/Stdlib/SerialApi.php +206 -0
- app/code/local/Wirecard/Stdlib/Validate/Fingerprint.php +275 -0
- app/design/adminhtml/default/default/template/wirecard/checkoutpage/info.phtml +60 -0
- app/design/adminhtml/default/default/template/wirecard/checkoutpage/pdf/info.phtml +34 -0
- app/design/frontend/base/default/layout/wirecard_checkoutpage.xml +90 -0
- app/design/frontend/base/default/template/wirecard/checkoutpage/additional/installment.phtml +106 -0
- app/design/frontend/base/default/template/wirecard/checkoutpage/additional/invoice.phtml +106 -0
- app/design/frontend/base/default/template/wirecard/checkoutpage/additional/invoiceb2b.phtml +37 -0
- app/design/frontend/base/default/template/wirecard/checkoutpage/blank.phtml +40 -0
- app/design/frontend/base/default/template/wirecard/checkoutpage/checkout.phtml +36 -0
- app/design/frontend/base/default/template/wirecard/checkoutpage/failure.phtml +37 -0
- app/design/frontend/base/default/template/wirecard/checkoutpage/form.phtml +61 -0
- app/design/frontend/base/default/template/wirecard/checkoutpage/info.phtml +39 -0
- app/design/frontend/base/default/template/wirecard/checkoutpage/processing.phtml +51 -0
- app/design/frontend/base/default/template/wirecard/checkoutpage/progress.phtml +112 -0
- app/design/frontend/base/default/template/wirecard/checkoutpage/return.phtml +41 -0
- app/etc/modules/Wirecard_CheckoutPage.xml +41 -0
- app/locale/de_AT/Wirecard_CheckoutPage.csv +53 -0
- app/locale/de_DE/Wirecard_CheckoutPage.csv +53 -0
- app/locale/en_US/Wirecard_CheckoutPage.csv +54 -0
- package.xml +32 -0
- skin/adminhtml/default/default/images/wirecard/wirecard-logo.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/bmc.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/cc.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/ccMoto.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/ekonto.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/epaybg.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/eps.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/giropay.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/ideal.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/installment.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/invoice.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/invoiceb2b.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/maestro.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/moneta.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/mpass.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/p24.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/paybox.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/paypal.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/paysafecard.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/poli.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/quick.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/sepadd.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/skrilldirect.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/skrillwallet.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/sofortbanking.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/tatrapay.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/trustly.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/trustpay.png +0 -0
- skin/frontend/base/default/images/wirecard/checkoutpage/voucher.png +0 -0
app/code/community/Wirecard/CheckoutPage/Block/Additional/Installment.php
ADDED
@@ -0,0 +1,82 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Block_Additional_Installment extends Mage_Core_Block_Template
|
34 |
+
{
|
35 |
+
|
36 |
+
protected function _construct()
|
37 |
+
{
|
38 |
+
parent::_construct();
|
39 |
+
$this->setTemplate('wirecard/checkoutpage/additional/installment.phtml');
|
40 |
+
}
|
41 |
+
|
42 |
+
private function getCheckout()
|
43 |
+
{
|
44 |
+
return Mage::getSingleton('checkout/session');
|
45 |
+
}
|
46 |
+
|
47 |
+
private function getQuote()
|
48 |
+
{
|
49 |
+
return $this->getCheckout()->getQuote();
|
50 |
+
}
|
51 |
+
|
52 |
+
public function getCustomerDob()
|
53 |
+
{
|
54 |
+
$quote = $this->getQuote();
|
55 |
+
return $quote->getCustomerDob();
|
56 |
+
}
|
57 |
+
|
58 |
+
private function getCustomerDobPart($mask)
|
59 |
+
{
|
60 |
+
$dob = $this->getCustomerDob();
|
61 |
+
if ($dob) {
|
62 |
+
return Mage::app()->getLocale()->date($dob, null, null, false)->toString($mask);
|
63 |
+
}
|
64 |
+
return '';
|
65 |
+
}
|
66 |
+
|
67 |
+
public function getCustomerDobYear()
|
68 |
+
{
|
69 |
+
return $this->getCustomerDobPart('yyyy');
|
70 |
+
}
|
71 |
+
|
72 |
+
public function getCustomerDobMonth()
|
73 |
+
{
|
74 |
+
return $this->getCustomerDobPart('MM');
|
75 |
+
}
|
76 |
+
|
77 |
+
public function getCustomerDobDay()
|
78 |
+
{
|
79 |
+
return $this->getCustomerDobPart('dd');
|
80 |
+
}
|
81 |
+
|
82 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Block/Additional/Invoice.php
ADDED
@@ -0,0 +1,76 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Block_Additional_Invoice extends Mage_Core_Block_Template
|
34 |
+
{
|
35 |
+
|
36 |
+
protected function _construct()
|
37 |
+
{
|
38 |
+
parent::_construct();
|
39 |
+
$this->setTemplate('wirecard/checkoutpage/additional/invoice.phtml');
|
40 |
+
}
|
41 |
+
|
42 |
+
private function getCheckout()
|
43 |
+
{
|
44 |
+
return Mage::getSingleton('checkout/session');
|
45 |
+
}
|
46 |
+
|
47 |
+
private function getQuote()
|
48 |
+
{
|
49 |
+
return $this->getCheckout()->getQuote();
|
50 |
+
}
|
51 |
+
|
52 |
+
public function getCustomerDob() {
|
53 |
+
$quote = $this->getQuote();
|
54 |
+
return $quote->getCustomerDob();
|
55 |
+
}
|
56 |
+
|
57 |
+
private function getCustomerDobPart($mask) {
|
58 |
+
$dob = $this->getCustomerDob();
|
59 |
+
if($dob) {
|
60 |
+
return Mage::app()->getLocale()->date($dob, null, null, false)->toString($mask);
|
61 |
+
}
|
62 |
+
return '';
|
63 |
+
}
|
64 |
+
|
65 |
+
public function getCustomerDobYear() {
|
66 |
+
return $this->getCustomerDobPart('yyyy');
|
67 |
+
}
|
68 |
+
|
69 |
+
public function getCustomerDobMonth() {
|
70 |
+
return $this->getCustomerDobPart('MM');
|
71 |
+
}
|
72 |
+
|
73 |
+
public function getCustomerDobDay() {
|
74 |
+
return $this->getCustomerDobPart('dd');
|
75 |
+
}
|
76 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Block/Additional/InvoiceB2b.php
ADDED
@@ -0,0 +1,50 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Block_Additional_InvoiceB2b extends Mage_Core_Block_Template
|
34 |
+
{
|
35 |
+
protected function _construct()
|
36 |
+
{
|
37 |
+
parent::_construct();
|
38 |
+
$this->setTemplate('wirecard/checkoutpage/additional/invoiceb2b.phtml');
|
39 |
+
}
|
40 |
+
|
41 |
+
public function getCompanyTradeRegistrationNumber() {
|
42 |
+
$customer = Mage::helper('customer')->getCustomer();
|
43 |
+
|
44 |
+
if($customer->hasData('company_trade_reg_number')) {
|
45 |
+
return Mage::helper('customer')->getCustomer()->getData('company_trade_reg_number');
|
46 |
+
}
|
47 |
+
|
48 |
+
return "";
|
49 |
+
}
|
50 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Block/Admin/Buttons.php
ADDED
@@ -0,0 +1,60 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Block_Admin_Buttons extends Mage_Adminhtml_Block_System_Config_Form_Field
|
34 |
+
{
|
35 |
+
|
36 |
+
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element)
|
37 |
+
{
|
38 |
+
$this->setElement($element);
|
39 |
+
|
40 |
+
$url = $this->getUrl('adminhtml/wirecardcheckoutpage/testconfig');
|
41 |
+
$html = $this->getLayout()->createBlock('adminhtml/widget_button')
|
42 |
+
->setType('button')
|
43 |
+
->setClass('scalable')
|
44 |
+
->setLabel('Test configuration')
|
45 |
+
->setOnClick("setLocation('$url')")
|
46 |
+
->toHtml();
|
47 |
+
|
48 |
+
$html .= ' ';
|
49 |
+
|
50 |
+
$url = $this->getUrl('adminhtml/wirecardcheckoutpage/contactsupport');
|
51 |
+
$html .= $this->getLayout()->createBlock('adminhtml/widget_button')
|
52 |
+
->setType('button')
|
53 |
+
->setClass('scalable')
|
54 |
+
->setLabel('Contact support')
|
55 |
+
->setOnClick("setLocation('$url')")
|
56 |
+
->toHtml();
|
57 |
+
|
58 |
+
return $html;
|
59 |
+
}
|
60 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Block/Admin/Support/Container.php
ADDED
@@ -0,0 +1,56 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Block_Admin_Support_Container extends Mage_Adminhtml_Block_Widget_Form_Container
|
34 |
+
{
|
35 |
+
public function __construct()
|
36 |
+
{
|
37 |
+
parent::__construct();
|
38 |
+
|
39 |
+
$this->_objectId = 'id';
|
40 |
+
$this->_blockGroup = 'wirecard_checkoutpage';
|
41 |
+
$this->_controller = 'admin_support';
|
42 |
+
$this->_removeButton('save');
|
43 |
+
|
44 |
+
$this->_addButton('sendrequest', array(
|
45 |
+
'label' => Mage::helper('wirecard_checkoutpage')->__('Send support request'),
|
46 |
+
'class' => 'save',
|
47 |
+
'onclick' => 'editForm.submit();',
|
48 |
+
), -100, 0, 'footer');
|
49 |
+
}
|
50 |
+
|
51 |
+
public function getHeaderText()
|
52 |
+
{
|
53 |
+
return Mage::helper('wirecard_checkoutpage')->__('Wirecard Checkout Page support request');
|
54 |
+
}
|
55 |
+
}
|
56 |
+
|
app/code/community/Wirecard/CheckoutPage/Block/Admin/Support/Edit/Form.php
ADDED
@@ -0,0 +1,75 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Block_Admin_Support_Edit_Form extends Mage_Adminhtml_Block_Widget_Form
|
34 |
+
{
|
35 |
+
protected function _prepareForm()
|
36 |
+
{
|
37 |
+
$form = new Varien_Data_Form(array(
|
38 |
+
'id' => 'edit_form',
|
39 |
+
'action' => $this->getUrl('*/*/sendsupportrequest', array('id' => $this->getRequest()->getParam('id'))),
|
40 |
+
'method' => 'post'
|
41 |
+
)
|
42 |
+
);
|
43 |
+
$fieldset = $form->addFieldset('form_form', array('legend' => Mage::helper('wirecard_checkoutpage')->__('Item information')));
|
44 |
+
|
45 |
+
|
46 |
+
$fieldset->addField('to', 'select', array(
|
47 |
+
'label' => Mage::helper('wirecard_checkoutpage')->__('To'),
|
48 |
+
'class' => 'required-entry',
|
49 |
+
'required' => true,
|
50 |
+
'name' => 'to',
|
51 |
+
'options' => array(
|
52 |
+
'support.at@wirecard.com' => 'Support AT',
|
53 |
+
'support@wirecard.com' => 'Support DE'
|
54 |
+
)
|
55 |
+
));
|
56 |
+
|
57 |
+
$fieldset->addField('replyto', 'text', array(
|
58 |
+
'label' => Mage::helper('wirecard_checkoutpage')->__('Your e-mail address'),
|
59 |
+
'class' => 'validate-email',
|
60 |
+
'name' => 'replyto'
|
61 |
+
));
|
62 |
+
|
63 |
+
$fieldset->addField('description', 'textarea', array(
|
64 |
+
'label' => Mage::helper('wirecard_checkoutpage')->__('Your message'),
|
65 |
+
'class' => 'required-entry',
|
66 |
+
'required' => true,
|
67 |
+
'name' => 'description',
|
68 |
+
'style' => 'height:30em;width:50em'
|
69 |
+
));
|
70 |
+
|
71 |
+
$form->setUseContainer(true);
|
72 |
+
$this->setForm($form);
|
73 |
+
return parent::_prepareForm();
|
74 |
+
}
|
75 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Block/Admin/Tabs.php
ADDED
@@ -0,0 +1,62 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Block_Admin_Tabs extends Mage_Adminhtml_Block_Widget_Tabs
|
34 |
+
{
|
35 |
+
public function __construct()
|
36 |
+
{
|
37 |
+
parent::__construct();
|
38 |
+
|
39 |
+
$this->setId('wirecard_checkout_page_tabs');
|
40 |
+
$this->setDestElementId('support_form');
|
41 |
+
$this->setTitle(Mage::helper('wirecard_checkoutpage')->__('Wirecard Checkout Page'));
|
42 |
+
$this->addTab('config', array(
|
43 |
+
'label' => Mage::helper('wirecard_checkoutpage')->__('Configuration'),
|
44 |
+
'title' => Mage::helper('wirecard_checkoutpage')->__('Configuration'),
|
45 |
+
'url' => $this->getUrl('adminhtml/system_config/edit/section/wirecard_checkoutpage')
|
46 |
+
));
|
47 |
+
|
48 |
+
$this->addTab('support_request', array(
|
49 |
+
'label' => Mage::helper('wirecard_checkoutpage')->__('Support request'),
|
50 |
+
'title' => Mage::helper('wirecard_checkoutpage')->__('Support request'),
|
51 |
+
'url' => $this->getUrl('adminhtml/wirecardcheckoutpage/contactsupport')
|
52 |
+
));
|
53 |
+
|
54 |
+
$this->addTab('backto_system', array(
|
55 |
+
'label' => Mage::helper('wirecard_checkoutpage')->__('Back to system config'),
|
56 |
+
'title' => Mage::helper('wirecard_checkoutpage')->__('Back to system config'),
|
57 |
+
'url' => $this->getUrl('adminhtml/system_config')
|
58 |
+
));
|
59 |
+
|
60 |
+
}
|
61 |
+
|
62 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Block/Checkout.php
ADDED
@@ -0,0 +1,73 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Block_Checkout extends Mage_Core_Block_Template
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* Return checkout session instance
|
37 |
+
*
|
38 |
+
* @return Mage_Checkout_Model_Session
|
39 |
+
*/
|
40 |
+
protected function _getCheckout()
|
41 |
+
{
|
42 |
+
return Mage::getSingleton('checkout/session');
|
43 |
+
}
|
44 |
+
|
45 |
+
/**
|
46 |
+
* Return order instance
|
47 |
+
*
|
48 |
+
* @return Mage_Sales_Model_Order|null
|
49 |
+
*/
|
50 |
+
protected function _getOrder()
|
51 |
+
{
|
52 |
+
if ($this->getOrder())
|
53 |
+
{
|
54 |
+
return $this->getOrder();
|
55 |
+
}
|
56 |
+
elseif ($this->_getCheckout()->getLastRealOrderId())
|
57 |
+
{
|
58 |
+
$orderIncrementId = $this->_getCheckout()->getLastRealOrderId();
|
59 |
+
return Mage::getModel('sales/order')->loadByIncrementId($orderIncrementId);
|
60 |
+
}
|
61 |
+
else
|
62 |
+
{
|
63 |
+
return null;
|
64 |
+
}
|
65 |
+
}
|
66 |
+
|
67 |
+
public function getIframeUrl()
|
68 |
+
{
|
69 |
+
$session = Mage::getSingleton('core/session');
|
70 |
+
return $session->getWirecardCheckoutPageRedirectUrl();
|
71 |
+
}
|
72 |
+
}
|
73 |
+
?>
|
app/code/community/Wirecard/CheckoutPage/Block/Failure.php
ADDED
@@ -0,0 +1,53 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Block_Failure extends Mage_Core_Block_Template
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* Return Error message
|
37 |
+
*
|
38 |
+
* @return string
|
39 |
+
*/
|
40 |
+
public function getErrorMessage ()
|
41 |
+
{
|
42 |
+
return Mage::getSingleton('checkout/session')->getWirecardCheckoutPageErrorMessage();
|
43 |
+
}
|
44 |
+
|
45 |
+
/**
|
46 |
+
* Get continue shopping url
|
47 |
+
*/
|
48 |
+
public function getContinueShoppingUrl()
|
49 |
+
{
|
50 |
+
return Mage::getUrl('checkout', array('_secure' => true));
|
51 |
+
}
|
52 |
+
}
|
53 |
+
?>
|
app/code/community/Wirecard/CheckoutPage/Block/Form.php
ADDED
@@ -0,0 +1,108 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Block_Form extends Mage_Payment_Block_Form
|
34 |
+
{
|
35 |
+
protected function _construct()
|
36 |
+
{
|
37 |
+
parent::_construct();
|
38 |
+
$this->setTemplate('wirecard/checkoutpage/form.phtml');
|
39 |
+
}
|
40 |
+
|
41 |
+
protected function getImageName()
|
42 |
+
{
|
43 |
+
return preg_replace('/^wirecard_checkoutpage_/', '', $this->getMethodCode());
|
44 |
+
}
|
45 |
+
|
46 |
+
public function getMethodLabelAfterHtml()
|
47 |
+
{
|
48 |
+
$filename = sprintf('images/wirecard/checkoutpage/%s.png', $this->getImageName());
|
49 |
+
$filePath = sprintf('%s/frontend/base/default/%s', Mage::getBaseDir('skin'), $filename);
|
50 |
+
if (file_exists($filePath)) {
|
51 |
+
return sprintf('<img src="%s" title="%s" alt="%s" style="margin-right: 10px;"/>',
|
52 |
+
$this->getSkinUrl($filename),
|
53 |
+
htmlspecialchars($this->getMethod()->getTitle()),
|
54 |
+
htmlspecialchars($this->getMethod()->getTitle()));
|
55 |
+
}
|
56 |
+
else {
|
57 |
+
return '';
|
58 |
+
}
|
59 |
+
}
|
60 |
+
|
61 |
+
public function hasAdditionalForm()
|
62 |
+
{
|
63 |
+
return ($this->getAdditionalForm()) ? true : false;
|
64 |
+
}
|
65 |
+
|
66 |
+
public function getAdditionalForm()
|
67 |
+
{
|
68 |
+
$paymentType = strtoupper($this->getMethodCode());
|
69 |
+
switch ($paymentType) {
|
70 |
+
case 'WIRECARD_CHECKOUTPAGE_INVOICE':
|
71 |
+
return 'wirecard_checkoutpage/additional_Invoice';
|
72 |
+
break;
|
73 |
+
case 'WIRECARD_CHECKOUTPAGE_INSTALLMENT':
|
74 |
+
return 'wirecard_checkoutpage/additional_Installment';
|
75 |
+
break;
|
76 |
+
case 'WIRECARD_CHECKOUTPAGE_INVOICEB2B':
|
77 |
+
return 'wirecard_checkoutpage/additional_InvoiceB2b';
|
78 |
+
break;
|
79 |
+
default:
|
80 |
+
return false;
|
81 |
+
break;
|
82 |
+
}
|
83 |
+
}
|
84 |
+
|
85 |
+
public function hasPayolutionTerms()
|
86 |
+
{
|
87 |
+
if ($this->getMethod()->getConfigData('provider') != 'payolution')
|
88 |
+
return false;
|
89 |
+
|
90 |
+
/** @var Wirecard_CheckoutPage_Helper_Data $helper */
|
91 |
+
$helper = Mage::helper('wirecard_checkoutpage');
|
92 |
+
return $helper->getConfigData('options/payolution_terms');
|
93 |
+
}
|
94 |
+
|
95 |
+
public function getPayolutionLink()
|
96 |
+
{
|
97 |
+
/** @var Wirecard_CheckoutPage_Helper_Data $helper */
|
98 |
+
$helper = Mage::helper('wirecard_checkoutpage');
|
99 |
+
$mId = base64_encode($helper->getConfigData('options/payolution_mid'));
|
100 |
+
|
101 |
+
if (strlen($mId)) {
|
102 |
+
return sprintf('<a href="https://payment.payolution.com/payolution-payment/infoport/dataprivacyconsent?mId=%s" style="float: none; margin: 0;" target="_blank">%s</a>',
|
103 |
+
$mId, $helper->__('Consent'));
|
104 |
+
} else {
|
105 |
+
return $helper->__('Consent');
|
106 |
+
}
|
107 |
+
}
|
108 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Block/Info.php
ADDED
@@ -0,0 +1,52 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Block_Info extends Mage_Payment_Block_Info
|
34 |
+
{
|
35 |
+
protected function _construct()
|
36 |
+
{
|
37 |
+
parent::_construct();
|
38 |
+
$this->setTemplate('wirecard/checkoutpage/info.phtml');
|
39 |
+
}
|
40 |
+
|
41 |
+
public function getMethodCode()
|
42 |
+
{
|
43 |
+
return $this->getInfo()->getMethodInstance()->getCode();
|
44 |
+
}
|
45 |
+
|
46 |
+
public function toPdf()
|
47 |
+
{
|
48 |
+
$this->setTemplate('wirecard/checkoutpage/pdf/info.phtml');
|
49 |
+
return $this->toHtml();
|
50 |
+
}
|
51 |
+
}
|
52 |
+
?>
|
app/code/community/Wirecard/CheckoutPage/Block/Processing.php
ADDED
@@ -0,0 +1,83 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Block_Processing extends Mage_Core_Block_Template
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* Return checkout session instance
|
37 |
+
*
|
38 |
+
* @return Mage_Checkout_Model_Session
|
39 |
+
*/
|
40 |
+
protected function _getCheckout()
|
41 |
+
{
|
42 |
+
return Mage::getSingleton('checkout/session');
|
43 |
+
}
|
44 |
+
|
45 |
+
/**
|
46 |
+
* Return order instance
|
47 |
+
*
|
48 |
+
* @return Mage_Sales_Model_Order|null
|
49 |
+
*/
|
50 |
+
protected function _getOrder()
|
51 |
+
{
|
52 |
+
if ($this->getOrder()) {
|
53 |
+
return $this->getOrder();
|
54 |
+
} elseif ($this->_getCheckout()->getLastRealOrderId()) {
|
55 |
+
$orderIncrementId = $this->_getCheckout()->getLastRealOrderId();
|
56 |
+
return Mage::getModel('sales/order')->loadByIncrementId($orderIncrementId);
|
57 |
+
} else {
|
58 |
+
return null;
|
59 |
+
}
|
60 |
+
}
|
61 |
+
|
62 |
+
|
63 |
+
public function getFormData()
|
64 |
+
{
|
65 |
+
$params = array();
|
66 |
+
|
67 |
+
$url = parse_url($this->_getOrder()->getPayment()->getMethodInstance()->getUrl());
|
68 |
+
$url = explode('&', $url['query']);
|
69 |
+
foreach ($url as $currentPair) {
|
70 |
+
$currentPair = explode('=', $currentPair);
|
71 |
+
$params[$currentPair[0]] = $currentPair[1];
|
72 |
+
}
|
73 |
+
|
74 |
+
return $params;
|
75 |
+
}
|
76 |
+
|
77 |
+
public function getFormAction()
|
78 |
+
{
|
79 |
+
$url = parse_url($this->_getOrder()->getPayment()->getMethodInstance()->getUrl());
|
80 |
+
|
81 |
+
return $url['scheme'] . '://' . $url['host'] . $url['path'];
|
82 |
+
}
|
83 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Block/Return.php
ADDED
@@ -0,0 +1,53 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Block_Return extends Mage_Core_Block_Template
|
34 |
+
{
|
35 |
+
|
36 |
+
public function getRedirectUrl()
|
37 |
+
{
|
38 |
+
$redirectURL = $this->_getCheckout()->getResponseRedirectUrl();
|
39 |
+
return Mage::getUrl($redirectURL, array('_secure' => true));
|
40 |
+
}
|
41 |
+
|
42 |
+
/**
|
43 |
+
* Return checkout session instance
|
44 |
+
*
|
45 |
+
* @return Mage_Checkout_Model_Session
|
46 |
+
*/
|
47 |
+
protected function _getCheckout()
|
48 |
+
{
|
49 |
+
return Mage::getSingleton('checkout/session');
|
50 |
+
}
|
51 |
+
|
52 |
+
}
|
53 |
+
?>
|
app/code/community/Wirecard/CheckoutPage/Helper/Data.php
ADDED
@@ -0,0 +1,154 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Helper_Data extends Mage_Payment_Helper_Data
|
34 |
+
{
|
35 |
+
|
36 |
+
protected $_pluginVersion = '4.0.0';
|
37 |
+
protected $_pluginName = 'Wirecard/CheckoutPage';
|
38 |
+
|
39 |
+
/**
|
40 |
+
* predefined test/demo accounts
|
41 |
+
*
|
42 |
+
* @var array
|
43 |
+
*/
|
44 |
+
protected $_presets = array(
|
45 |
+
'demo' => array(
|
46 |
+
'settings/customer_id' => 'D200001',
|
47 |
+
'settings/shop_id' => '',
|
48 |
+
'settings/secret' => 'B8AKTPWBRMNBV455FG6M2DANE99WU2',
|
49 |
+
'settings/backendpw' => 'jcv45z'
|
50 |
+
),
|
51 |
+
'test_no3d' => array(
|
52 |
+
'settings/customer_id' => 'D200411',
|
53 |
+
'settings/shop_id' => '',
|
54 |
+
'settings/secret' => 'CHCSH7UGHVVX2P7EHDHSY4T2S4CGYK4QBE4M5YUUG2ND5BEZWNRZW5EJYVJQ',
|
55 |
+
'settings/backendpw' => '2g4f9q2m'
|
56 |
+
),
|
57 |
+
'test_3d' => array(
|
58 |
+
'settings/customer_id' => 'D200411',
|
59 |
+
'settings/shop_id' => '',
|
60 |
+
'settings/secret' => 'DP4TMTPQQWFJW34647RM798E9A5X7E8ATP462Z4VGZK53YEJ3JWXS98B9P4F',
|
61 |
+
'settings/backendpw' => '2g4f9q2m'
|
62 |
+
)
|
63 |
+
);
|
64 |
+
|
65 |
+
public function getConfigArray()
|
66 |
+
{
|
67 |
+
$cfg = Array('LANGUAGE' => $this->getLanguage());
|
68 |
+
$cfg['CUSTOMER_ID'] = $this->getConfigData('settings/customer_id');
|
69 |
+
$cfg['SHOP_ID'] = $this->getConfigData('settings/shop_id');
|
70 |
+
$cfg['SECRET'] = $this->getConfigData('settings/secret');
|
71 |
+
|
72 |
+
return $cfg;
|
73 |
+
}
|
74 |
+
|
75 |
+
/**
|
76 |
+
* return config array to be used for client lib, backend ops
|
77 |
+
*
|
78 |
+
* @return array
|
79 |
+
*/
|
80 |
+
public function getBackendConfigArray()
|
81 |
+
{
|
82 |
+
$cfg = $this->getConfigArray();
|
83 |
+
$cfg['PASSWORD'] = $this->getConfigData('settings/backendpw');
|
84 |
+
|
85 |
+
return $cfg;
|
86 |
+
}
|
87 |
+
|
88 |
+
public function getConfigData($field = null, $storeId = null)
|
89 |
+
{
|
90 |
+
$type = Mage::getStoreConfig('wirecard_checkoutpage/settings/configuration', $storeId);
|
91 |
+
|
92 |
+
if (isset($this->_presets[$type]) && isset($this->_presets[$type][$field])) {
|
93 |
+
return $this->_presets[$type][$field];
|
94 |
+
}
|
95 |
+
|
96 |
+
$path = 'wirecard_checkoutpage';
|
97 |
+
if ($field !== null) {
|
98 |
+
$path .= '/' . $field;
|
99 |
+
}
|
100 |
+
|
101 |
+
return Mage::getStoreConfig($path, $storeId);
|
102 |
+
}
|
103 |
+
|
104 |
+
/**
|
105 |
+
* returns config preformated as string, used in support email
|
106 |
+
* @return string
|
107 |
+
*/
|
108 |
+
public function getConfigString()
|
109 |
+
{
|
110 |
+
$ret = '';
|
111 |
+
$exclude = array('secret', 'backendpw');
|
112 |
+
foreach ($this->getConfigData() as $group => $fields)
|
113 |
+
{
|
114 |
+
foreach ($fields as $field => $value)
|
115 |
+
{
|
116 |
+
if (in_array($field, $exclude))
|
117 |
+
{
|
118 |
+
continue;
|
119 |
+
}
|
120 |
+
if (strlen($ret))
|
121 |
+
{
|
122 |
+
$ret .= "\n";
|
123 |
+
}
|
124 |
+
$ret .= sprintf("%s: %s", $field, $value);
|
125 |
+
}
|
126 |
+
}
|
127 |
+
|
128 |
+
return $ret;
|
129 |
+
}
|
130 |
+
|
131 |
+
public function getLanguage()
|
132 |
+
{
|
133 |
+
$locale = explode('_', Mage::app()->getLocale()->getLocaleCode());
|
134 |
+
if (is_array($locale) && !empty($locale))
|
135 |
+
$locale = $locale[0];
|
136 |
+
else
|
137 |
+
$locale = $this->getDefaultLocale();
|
138 |
+
|
139 |
+
return $locale;
|
140 |
+
}
|
141 |
+
|
142 |
+
public function getPluginVersion()
|
143 |
+
{
|
144 |
+
return WirecardCEE_QPay_FrontendClient::generatePluginVersion('Magento', Mage::getVersion(), $this->_pluginName, $this->_pluginVersion);
|
145 |
+
}
|
146 |
+
|
147 |
+
public function log($message, $level = null)
|
148 |
+
{
|
149 |
+
if ($level === null) $level = Zend_Log::INFO;
|
150 |
+
|
151 |
+
Mage::log($message, $level, 'wirecard_checkoutpage.log', true);
|
152 |
+
}
|
153 |
+
|
154 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Abstract.php
ADDED
@@ -0,0 +1,521 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
abstract class Wirecard_CheckoutPage_Model_Abstract extends Mage_Payment_Model_Method_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_abstract';
|
41 |
+
|
42 |
+
protected $_isGateway = false;
|
43 |
+
protected $_canAuthorize = true;
|
44 |
+
protected $_canCapture = true;
|
45 |
+
protected $_canCapturePartial = false;
|
46 |
+
protected $_canRefund = false;
|
47 |
+
protected $_canVoid = false;
|
48 |
+
protected $_canUseInternal = false;
|
49 |
+
protected $_canUseCheckout = true;
|
50 |
+
protected $_canUseForMultishipping = false;
|
51 |
+
|
52 |
+
protected $_paymentMethod = WirecardCEE_QPay_PaymentType::SELECT;
|
53 |
+
protected $_defaultLocale = 'en';
|
54 |
+
|
55 |
+
protected $_order;
|
56 |
+
protected $_pluginVersion = '4.0.0';
|
57 |
+
protected $_pluginName = 'Wirecard/CheckoutPage';
|
58 |
+
|
59 |
+
protected $_formBlockType = 'wirecard_checkoutpage/form';
|
60 |
+
protected $_infoBlockType = 'wirecard_checkoutpage/info';
|
61 |
+
|
62 |
+
protected $_forceSendAdditionalData = false;
|
63 |
+
|
64 |
+
/**
|
65 |
+
* @var Mage_Sales_Model_Quote
|
66 |
+
*/
|
67 |
+
protected $_quote = false;
|
68 |
+
|
69 |
+
/**
|
70 |
+
* translate method title shown in payment selection
|
71 |
+
* the methode code is the key, if no transaltion found
|
72 |
+
* use the title setting
|
73 |
+
*
|
74 |
+
* @return string
|
75 |
+
*/
|
76 |
+
public function getTitle()
|
77 |
+
{
|
78 |
+
/** @var Wirecard_CheckoutPage_Helper_Data $helper */
|
79 |
+
$helper = Mage::helper('wirecard_checkoutpage');
|
80 |
+
|
81 |
+
$translated = $helper->__($this->_paymentMethod);
|
82 |
+
if ($translated == $this->_paymentMethod) {
|
83 |
+
return parent::getTitle();
|
84 |
+
}
|
85 |
+
|
86 |
+
return $translated;
|
87 |
+
}
|
88 |
+
|
89 |
+
/**
|
90 |
+
* Get order model
|
91 |
+
*
|
92 |
+
* @return Mage_Sales_Model_Order
|
93 |
+
*/
|
94 |
+
public function getOrder()
|
95 |
+
{
|
96 |
+
if (!$this->_order) {
|
97 |
+
$paymentInfo = $this->getInfoInstance();
|
98 |
+
$this->_order = Mage::getModel('sales/order')
|
99 |
+
->loadByIncrementId($paymentInfo->getOrder()->getRealOrderId());
|
100 |
+
}
|
101 |
+
return $this->_order;
|
102 |
+
}
|
103 |
+
|
104 |
+
public function getOrderPlaceRedirectUrl()
|
105 |
+
{
|
106 |
+
Mage::getSingleton('core/session')->unsWirecardCheckoutPageRedirectUrl();
|
107 |
+
return Mage::getUrl('wirecard_checkoutpage/processing/checkout', array('_secure' => true));
|
108 |
+
}
|
109 |
+
|
110 |
+
public function capture(Varien_Object $payment, $amount)
|
111 |
+
{
|
112 |
+
$payment->setStatus(self::STATUS_APPROVED)
|
113 |
+
->setLastTransId($this->getTransactionId());
|
114 |
+
return $this;
|
115 |
+
}
|
116 |
+
|
117 |
+
public function cancel(Varien_Object $payment)
|
118 |
+
{
|
119 |
+
$payment->setStatus(self::STATUS_DECLINED)
|
120 |
+
->setLastTransId($this->getTransactionId());
|
121 |
+
|
122 |
+
return $this;
|
123 |
+
}
|
124 |
+
|
125 |
+
/**
|
126 |
+
* Return payment method type string
|
127 |
+
*
|
128 |
+
* @return string
|
129 |
+
*/
|
130 |
+
public function getPaymentMethodType()
|
131 |
+
{
|
132 |
+
return $this->_paymentMethod;
|
133 |
+
}
|
134 |
+
|
135 |
+
|
136 |
+
public function initPayment()
|
137 |
+
{
|
138 |
+
$order = $this->getOrder();
|
139 |
+
/** @var Wirecard_CheckoutPage_Helper_Data $helper */
|
140 |
+
$helper = Mage::helper('wirecard_checkoutpage');
|
141 |
+
|
142 |
+
$precision = 2;
|
143 |
+
|
144 |
+
$returnUrl = Mage::getUrl('wirecard_checkoutpage/processing/return', array('_secure' => true, '_nosid' => true));
|
145 |
+
|
146 |
+
$init = new WirecardCEE_QPay_FrontendClient($helper->getConfigArray());
|
147 |
+
|
148 |
+
$init->setPluginVersion($helper->getPluginVersion());
|
149 |
+
|
150 |
+
$init->setConfirmUrl(Mage::getUrl('wirecard_checkoutpage/processing/confirm', array('_secure' => true, '_nosid' => true)));
|
151 |
+
$init->setOrderReference(sprintf('%010d', $this->getOrder()->getRealOrderId()));
|
152 |
+
|
153 |
+
if ($helper->getConfigData('sendconfirmemail')) {
|
154 |
+
$init->setConfirmMail(Mage::getStoreConfig('trans_email/ident_general/email'));
|
155 |
+
}
|
156 |
+
|
157 |
+
$paymenttype = $this->_paymentMethod;
|
158 |
+
|
159 |
+
$init->setAmount(round($this->getOrder()->getBaseGrandTotal(), 2))
|
160 |
+
->setCurrency($this->getOrder()->getBaseCurrencyCode())
|
161 |
+
->setPaymentType($paymenttype)
|
162 |
+
->setOrderDescription($this->getUserDescription())
|
163 |
+
->setSuccessUrl($returnUrl)
|
164 |
+
->setPendingUrl($returnUrl)
|
165 |
+
->setCancelUrl($returnUrl)
|
166 |
+
->setFailureUrl($returnUrl)
|
167 |
+
->setServiceUrl($helper->getConfigData('options/serviceurl'))
|
168 |
+
->setConsumerData($this->_getConsumerData());
|
169 |
+
|
170 |
+
$init->setMaxRetries($helper->getConfigData('options/maxretries'));
|
171 |
+
|
172 |
+
$init->mage_orderId = $this->getOrder()->getRealOrderId();
|
173 |
+
|
174 |
+
$init->generateCustomerStatement($helper->getConfigData('options/shopname'));
|
175 |
+
|
176 |
+
if ($helper->getConfigData('options/sendbasketinformation')
|
177 |
+
|| ($this->_paymentMethod == WirecardCEE_Stdlib_PaymentTypeAbstract::INSTALLMENT && $this->getConfigData('provider') == 'ratepay')
|
178 |
+
|| ($this->_paymentMethod == WirecardCEE_Stdlib_PaymentTypeAbstract::INVOICE && $this->getConfigData('provider') == 'ratepay')
|
179 |
+
) {
|
180 |
+
$basket = new WirecardCEE_Stdlib_Basket();
|
181 |
+
$basket->setCurrency($this->getOrder()->getBaseCurrencyCode());
|
182 |
+
|
183 |
+
foreach ($order->getAllVisibleItems() as $item) {
|
184 |
+
/** @var Mage_Sales_Model_Order_Item $item */
|
185 |
+
$bitem = new WirecardCEE_Stdlib_Basket_Item();
|
186 |
+
$bitem->setDescription($item->getProduct()->getName());
|
187 |
+
$bitem->setArticleNumber($item->getSku());
|
188 |
+
$bitem->setUnitPrice(number_format($item->getPrice(), $precision, '.', ''));
|
189 |
+
$bitem->setTax(number_format($item->getTaxAmount(), $precision, '.', ''));
|
190 |
+
$basket->addItem($bitem, (int)$item->getQtyOrdered());
|
191 |
+
}
|
192 |
+
$bitem = new WirecardCEE_Stdlib_Basket_Item();
|
193 |
+
$bitem->setArticleNumber('shipping');
|
194 |
+
$bitem->setUnitPrice(number_format($order->getShippingAmount(), $precision, '.', ''));
|
195 |
+
$bitem->setTax(0);
|
196 |
+
$bitem->setDescription($order->getShippingDescription());
|
197 |
+
$basket->addItem($bitem);
|
198 |
+
|
199 |
+
foreach ($basket->__toArray() as $k => $v)
|
200 |
+
{
|
201 |
+
$init->$k = $v;
|
202 |
+
}
|
203 |
+
}
|
204 |
+
|
205 |
+
if ($helper->getConfigData('options/sendconfirmationemail'))
|
206 |
+
$init->setConfirmMail(Mage::getStoreConfig('trans_email/ident_general/email'));
|
207 |
+
|
208 |
+
if (strlen($helper->getConfigData('options/bgcolor')))
|
209 |
+
$init->setBackgroundColor($helper->getConfigData('options/bgcolor'));
|
210 |
+
|
211 |
+
if (strlen($helper->getConfigData('options/displaytext')))
|
212 |
+
$init->setDisplayText($helper->getConfigData('options/displaytext'));
|
213 |
+
|
214 |
+
if (strlen($helper->getConfigData('options/imageurl')))
|
215 |
+
$init->setImageUrl($helper->getConfigData('options/imageurl'));
|
216 |
+
|
217 |
+
if (strlen($helper->getConfigData('options/layout')))
|
218 |
+
$init->setLayout($helper->getConfigData('options/layout'));
|
219 |
+
|
220 |
+
if ($helper->getConfigData('options/mobiledetect')) {
|
221 |
+
$detect = new WirecardCEE_QPay_MobileDetect();
|
222 |
+
|
223 |
+
if ($detect->isTablet()) {
|
224 |
+
$layout = 'TABLET';
|
225 |
+
}
|
226 |
+
elseif ($detect->isMobile()) {
|
227 |
+
$layout = 'SMARTPHONE';
|
228 |
+
}
|
229 |
+
else {
|
230 |
+
$layout = 'DESKTOP';
|
231 |
+
}
|
232 |
+
|
233 |
+
$init->setLayout($layout);
|
234 |
+
}
|
235 |
+
|
236 |
+
$helper->log(__METHOD__ . ':' . print_r($init->getRequestData(), true), Zend_Log::INFO);
|
237 |
+
|
238 |
+
try {
|
239 |
+
$initResponse = $init->initiate();
|
240 |
+
} catch (Exception $e) {
|
241 |
+
$helper->log(__METHOD__ . ':' . $e->getMessage(), Zend_Log::ERR);
|
242 |
+
$message = $helper->__('An error occurred during the payment process');
|
243 |
+
throw new Exception($message);
|
244 |
+
}
|
245 |
+
|
246 |
+
if ($initResponse->getStatus() == WirecardCEE_QPay_Response_Initiation::STATE_FAILURE) {
|
247 |
+
$error = $initResponse->getError();
|
248 |
+
$message = 'init failed';
|
249 |
+
if ($error !== false) {
|
250 |
+
$message = $error->getConsumerMessage();
|
251 |
+
if (!strlen($message)) {
|
252 |
+
// dont show technical error to consumer
|
253 |
+
$message = $helper->__('An error occurred during the payment process');
|
254 |
+
}
|
255 |
+
|
256 |
+
$helper->log(__METHOD__ . ':' . $error->getMessage(), Zend_Log::ERR);
|
257 |
+
}
|
258 |
+
|
259 |
+
|
260 |
+
throw new Exception($message);
|
261 |
+
}
|
262 |
+
|
263 |
+
return $initResponse;
|
264 |
+
}
|
265 |
+
|
266 |
+
/**
|
267 |
+
* Returns desription of customer - will be displayed in Wirecard backend
|
268 |
+
*
|
269 |
+
* @return string
|
270 |
+
*/
|
271 |
+
protected function getUserDescription()
|
272 |
+
{
|
273 |
+
return sprintf('%s %s %s', $this->getOrder()->getCustomerEmail(), $this->getOrder()->getCustomerFirstname(),
|
274 |
+
$this->getOrder()->getCustomerLastname());
|
275 |
+
}
|
276 |
+
|
277 |
+
/**
|
278 |
+
* @return WirecardCEE_Stdlib_ConsumerData
|
279 |
+
* @throws Zend_Controller_Request_Exception
|
280 |
+
*/
|
281 |
+
protected function _getConsumerData()
|
282 |
+
{
|
283 |
+
$consumerData = new WirecardCEE_Stdlib_ConsumerData();
|
284 |
+
$consumerData->setIpAddress(Mage::app()->getRequest()->getServer('REMOTE_ADDR'));
|
285 |
+
$consumerData->setUserAgent(Mage::app()->getRequest()->getHeader('User-Agent'));
|
286 |
+
|
287 |
+
$deliveryAddress = $this->getOrder()->getShippingAddress();
|
288 |
+
$billingAddress = $this->getOrder()->getBillingAddress();
|
289 |
+
$dob = $this->getCustomerDob();
|
290 |
+
|
291 |
+
if ($this->_forceSendAdditionalData || $this->_getHelper()->getConfigData('options/sendadditionaldata')) {
|
292 |
+
|
293 |
+
$consumerData->setEmail($this->getOrder()->getCustomerEmail());
|
294 |
+
if ($dob !== false)
|
295 |
+
$consumerData->setBirthDate($dob);
|
296 |
+
$consumerData->addAddressInformation($this->_getAddress($billingAddress, 'billing'));
|
297 |
+
$consumerData->addAddressInformation($this->_getAddress($deliveryAddress, 'shipping'));
|
298 |
+
}
|
299 |
+
|
300 |
+
return $consumerData;
|
301 |
+
}
|
302 |
+
|
303 |
+
/**
|
304 |
+
* @param Mage_Sales_Model_Order_Address $source
|
305 |
+
* @param string $type
|
306 |
+
*
|
307 |
+
* @return WirecardCEE_Stdlib_ConsumerData_Address
|
308 |
+
*/
|
309 |
+
protected function _getAddress($source, $type = 'billing')
|
310 |
+
{
|
311 |
+
switch ($type) {
|
312 |
+
case 'shipping':
|
313 |
+
$address = new WirecardCEE_Stdlib_ConsumerData_Address(WirecardCEE_Stdlib_ConsumerData_Address::TYPE_SHIPPING);
|
314 |
+
break;
|
315 |
+
|
316 |
+
default:
|
317 |
+
$address = new WirecardCEE_Stdlib_ConsumerData_Address(WirecardCEE_Stdlib_ConsumerData_Address::TYPE_BILLING);
|
318 |
+
break;
|
319 |
+
}
|
320 |
+
|
321 |
+
$address->setFirstname($source->getFirstname());
|
322 |
+
$address->setLastname($source->getLastname());
|
323 |
+
$address->setAddress1($source->getStreet1());
|
324 |
+
$address->setAddress2($source->getStreet2());
|
325 |
+
$address->setZipCode($source->getPostcode());
|
326 |
+
$address->setCity($source->getCity());
|
327 |
+
$address->setCountry($source->getCountry());
|
328 |
+
$address->setState($source->getRegionCode());
|
329 |
+
$address->setPhone($source->getTelephone());
|
330 |
+
$address->setFax($source->getFax());
|
331 |
+
|
332 |
+
return $address;
|
333 |
+
}
|
334 |
+
|
335 |
+
/**
|
336 |
+
*
|
337 |
+
* Getter for the plugin version variable
|
338 |
+
*
|
339 |
+
* @return string The plugin version
|
340 |
+
*/
|
341 |
+
public function getPluginVersion()
|
342 |
+
{
|
343 |
+
return $this->_pluginVersion;
|
344 |
+
}
|
345 |
+
|
346 |
+
/**
|
347 |
+
*
|
348 |
+
* Getter for the plugin name variable
|
349 |
+
*
|
350 |
+
* @return string The plugin name
|
351 |
+
*/
|
352 |
+
public function getPluginName()
|
353 |
+
{
|
354 |
+
return $this->_pluginName;
|
355 |
+
}
|
356 |
+
|
357 |
+
public function getFinancialInstitution()
|
358 |
+
{
|
359 |
+
return null;
|
360 |
+
}
|
361 |
+
|
362 |
+
/**
|
363 |
+
* getter for customers birthDate
|
364 |
+
*
|
365 |
+
* @return DateTime|boolean
|
366 |
+
*/
|
367 |
+
public function getCustomerDob()
|
368 |
+
{
|
369 |
+
$order = $this->getOrder();
|
370 |
+
$dob = $order->getCustomerDob();
|
371 |
+
if ($dob) {
|
372 |
+
return new DateTime($dob);
|
373 |
+
}
|
374 |
+
return false;
|
375 |
+
}
|
376 |
+
|
377 |
+
/**
|
378 |
+
* Return checkout session object
|
379 |
+
*
|
380 |
+
* @return Mage_Checkout_Model_Session
|
381 |
+
*/
|
382 |
+
private function _getCheckoutSession()
|
383 |
+
{
|
384 |
+
return Mage::getSingleton('checkout/session');
|
385 |
+
}
|
386 |
+
|
387 |
+
/**
|
388 |
+
* Return checkout quote object
|
389 |
+
*
|
390 |
+
* @return Mage_Sales_Model_Quote
|
391 |
+
*/
|
392 |
+
protected function _getQuote()
|
393 |
+
{
|
394 |
+
if (!$this->_quote) {
|
395 |
+
$this->_quote = $this->_getCheckoutSession()->getQuote();
|
396 |
+
}
|
397 |
+
return $this->_quote;
|
398 |
+
}
|
399 |
+
|
400 |
+
/**
|
401 |
+
* @return Wirecard_CheckoutPage_Helper_Data
|
402 |
+
*/
|
403 |
+
protected function _getHelper()
|
404 |
+
{
|
405 |
+
return Mage::helper('wirecard_checkoutpage');
|
406 |
+
}
|
407 |
+
|
408 |
+
/**
|
409 |
+
* @param Mage_Sales_Model_Quote $quote
|
410 |
+
* @return bool
|
411 |
+
*/
|
412 |
+
protected function compareAddresses($quote)
|
413 |
+
{
|
414 |
+
$billingAddress = $quote->getBillingAddress();
|
415 |
+
|
416 |
+
$shippingAddress = $quote->getShippingAddress();
|
417 |
+
|
418 |
+
if(!$shippingAddress->getSameAsBilling())
|
419 |
+
{
|
420 |
+
if($billingAddress->getCustomerAddressId() == null || $billingAddress->getCustomerAddressId() != $shippingAddress->getCustomerAddressId())
|
421 |
+
{
|
422 |
+
if( //new line because it's easier to remove this way
|
423 |
+
$billingAddress->getName() != $shippingAddress->getName() ||
|
424 |
+
$billingAddress->getCompany() != $shippingAddress->getCompany() ||
|
425 |
+
$billingAddress->getCity() != $shippingAddress->getCity() ||
|
426 |
+
$billingAddress->getPostcode() != $shippingAddress->getPostcode() ||
|
427 |
+
$billingAddress->getCountryId() != $shippingAddress->getCountryId() ||
|
428 |
+
$billingAddress->getTelephone() != $shippingAddress->getTelephone() ||
|
429 |
+
$billingAddress->getFax() != $shippingAddress->getFax() ||
|
430 |
+
$billingAddress->getEmail() != $shippingAddress->getEmail() ||
|
431 |
+
$billingAddress->getCountry() != $shippingAddress->getCountry() ||
|
432 |
+
$billingAddress->getRegion() != $shippingAddress->getRegion() ||
|
433 |
+
$billingAddress->getStreet() != $shippingAddress->getStreet()
|
434 |
+
)
|
435 |
+
{
|
436 |
+
return false;
|
437 |
+
}
|
438 |
+
}
|
439 |
+
}
|
440 |
+
|
441 |
+
return true;
|
442 |
+
}
|
443 |
+
|
444 |
+
/**
|
445 |
+
* @param Mage_Sales_Model_Quote $quote
|
446 |
+
* @return bool
|
447 |
+
*/
|
448 |
+
protected function _isAvailablePayolution($quote)
|
449 |
+
{
|
450 |
+
$dob = $quote->getCustomerDob();
|
451 |
+
//we only need to check the dob if it's set. Else we ask for dob on payment selection page.
|
452 |
+
if($dob)
|
453 |
+
{
|
454 |
+
$dobObject = new DateTime($dob);
|
455 |
+
$currentYear = date('Y');
|
456 |
+
$currentMonth = date('m');
|
457 |
+
$currentDay = date('d');
|
458 |
+
$ageCheckDate = ($currentYear - 17) . '-' . $currentMonth . '-' . $currentDay;
|
459 |
+
$ageCheckObject = new DateTime($ageCheckDate);
|
460 |
+
if($ageCheckObject < $dobObject)
|
461 |
+
{
|
462 |
+
//customer is younger than 18 years. Installment not available
|
463 |
+
return false;
|
464 |
+
}
|
465 |
+
}
|
466 |
+
|
467 |
+
if($quote->hasVirtualItems())
|
468 |
+
{
|
469 |
+
return false;
|
470 |
+
}
|
471 |
+
|
472 |
+
if (!$this->compareAddresses($quote))
|
473 |
+
return false;
|
474 |
+
|
475 |
+
if($quote->getQuoteCurrencyCode() != 'EUR')
|
476 |
+
{
|
477 |
+
return false;
|
478 |
+
}
|
479 |
+
|
480 |
+
return parent::isAvailable($quote);
|
481 |
+
}
|
482 |
+
|
483 |
+
/**
|
484 |
+
* @param Mage_Sales_Model_Quote $quote
|
485 |
+
* @return bool
|
486 |
+
*/
|
487 |
+
protected function _isAvailableRatePay($quote)
|
488 |
+
{
|
489 |
+
$currencies = explode(',', $this->getConfigData('currencies'));
|
490 |
+
if (!in_array($quote->getQuoteCurrencyCode(), $currencies))
|
491 |
+
return false;
|
492 |
+
|
493 |
+
$dob = $quote->getCustomerDob();
|
494 |
+
$minAge = (int) $this->getConfigData('min_age');
|
495 |
+
|
496 |
+
//we only need to check the dob if it's set. Else we ask for dob on payment selection page.
|
497 |
+
if($dob)
|
498 |
+
{
|
499 |
+
$dobObject = new DateTime($dob);
|
500 |
+
$currentYear = date('Y');
|
501 |
+
$currentMonth = date('m');
|
502 |
+
$currentDay = date('d');
|
503 |
+
$ageCheckDate = ($currentYear - $minAge) . '-' . $currentMonth . '-' . $currentDay;
|
504 |
+
$ageCheckObject = new DateTime($ageCheckDate);
|
505 |
+
if($ageCheckObject < $dobObject)
|
506 |
+
{
|
507 |
+
return false;
|
508 |
+
}
|
509 |
+
}
|
510 |
+
|
511 |
+
if($quote->hasVirtualItems())
|
512 |
+
{
|
513 |
+
return false;
|
514 |
+
}
|
515 |
+
|
516 |
+
if (!$this->compareAddresses($quote))
|
517 |
+
return false;
|
518 |
+
|
519 |
+
return parent::isAvailable($quote);
|
520 |
+
}
|
521 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Admin/Support.php
ADDED
@@ -0,0 +1,129 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Admin_Support extends Mage_Core_Model_Abstract
|
34 |
+
{
|
35 |
+
|
36 |
+
public function sendEmail($postObject)
|
37 |
+
{
|
38 |
+
/** @var Wirecard_CheckoutPage_Helper_Data $helper */
|
39 |
+
$helper = Mage::helper('wirecard_checkoutpage');
|
40 |
+
|
41 |
+
$mail = new Zend_Mail();
|
42 |
+
$mail->setSubject('Support request via magento online shop');
|
43 |
+
|
44 |
+
if (!Zend_Validate::is(trim($postObject->getData('to')), 'EmailAddress')) {
|
45 |
+
Mage::getSingleton('core/session')->addError('Please enter a valid e-mail address.');
|
46 |
+
return false;
|
47 |
+
}
|
48 |
+
$mail->addTo(trim($postObject->getData('to')));
|
49 |
+
|
50 |
+
if (strlen(trim($postObject->getData('replyto')))) {
|
51 |
+
if (!Zend_Validate::is(trim($postObject->getData('replyto')), 'EmailAddress')) {
|
52 |
+
Mage::getSingleton('core/session')->addError('Please enter a valid e-mail address (reply to).');
|
53 |
+
return false;
|
54 |
+
}
|
55 |
+
$mail->setReplyTo(trim($postObject->getData('replyto')));
|
56 |
+
}
|
57 |
+
|
58 |
+
$fromName = Mage::getStoreConfig('trans_email/ident_general/name');
|
59 |
+
$fromEmail = Mage::getStoreConfig('trans_email/ident_general/email');
|
60 |
+
if (!strlen($fromEmail)) {
|
61 |
+
Mage::getSingleton('core/session')->addError('Please set your shop e-mail address!');
|
62 |
+
return false;
|
63 |
+
}
|
64 |
+
$mail->setFrom($fromEmail, $fromName);
|
65 |
+
|
66 |
+
|
67 |
+
$modules = array_keys((array)Mage::getConfig()->getNode('modules')->children());
|
68 |
+
$modules = array_filter($modules, function ($e) { return !preg_match('/^Mage_/', $e); });
|
69 |
+
|
70 |
+
$body = $postObject->getData('description');
|
71 |
+
|
72 |
+
$payments = Mage::getSingleton('payment/config')->getActiveMethods();
|
73 |
+
|
74 |
+
$foreign = array();
|
75 |
+
$mine = array();
|
76 |
+
foreach ($payments as $paymentCode => $paymentModel) {
|
77 |
+
|
78 |
+
/** @var Mage_Payment_Model_Method_Abstract $paymentModel */
|
79 |
+
|
80 |
+
$method = array(
|
81 |
+
'label' => $paymentModel->getTitle(),
|
82 |
+
'value' => $paymentCode,
|
83 |
+
'config' => Mage::getStoreConfig('payment/' . $paymentCode)
|
84 |
+
);
|
85 |
+
|
86 |
+
if (preg_match('/^wirecard_checkoutpage_/', $paymentCode)) {
|
87 |
+
$mine[$paymentCode] = $method;
|
88 |
+
}
|
89 |
+
else {
|
90 |
+
$foreign[$paymentCode] = $method;
|
91 |
+
}
|
92 |
+
}
|
93 |
+
|
94 |
+
$body .= sprintf("\n\n%s:\n\n", $helper->__('Configuration'));
|
95 |
+
$body .= $helper->getConfigString();
|
96 |
+
|
97 |
+
$body .= sprintf("\n\n%s:\n\n", $helper->__('Active payment methods'));
|
98 |
+
|
99 |
+
foreach ($mine as $paymentCode => $payment) {
|
100 |
+
$body .= sprintf("%s:\n", $payment['label']);
|
101 |
+
foreach ($payment['config'] as $k => $v) {
|
102 |
+
if ($k == 'model' || $k == 'title')
|
103 |
+
continue;
|
104 |
+
$body .= sprintf("%s:%s\n", $k, $v);
|
105 |
+
}
|
106 |
+
$body .= "\n";
|
107 |
+
}
|
108 |
+
|
109 |
+
$body .= sprintf("\n%s:\n\n", $helper->__('Foreign payment methods'));
|
110 |
+
foreach ($foreign as $paymentCode => $payment) {
|
111 |
+
$body .= sprintf("%s\n", $payment['label']);
|
112 |
+
}
|
113 |
+
|
114 |
+
$body .= sprintf("\n\n%s:\n\n", $helper->__('Installed Modules'));
|
115 |
+
$body .= implode("\n", $modules);
|
116 |
+
|
117 |
+
$mail->setBodyText($body);
|
118 |
+
|
119 |
+
try {
|
120 |
+
$mail->send();
|
121 |
+
Mage::getSingleton('core/session')->addSuccess('Support request sent successfully!');
|
122 |
+
} catch (Exception $e) {
|
123 |
+
Mage::getSingleton('core/session')->addError('Unable to send email:' . $e->getMessage());
|
124 |
+
return false;
|
125 |
+
}
|
126 |
+
|
127 |
+
return true;
|
128 |
+
}
|
129 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Admin/Test.php
ADDED
@@ -0,0 +1,95 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Admin_Test extends Mage_Core_Model_Abstract
|
34 |
+
{
|
35 |
+
|
36 |
+
public function testconfig()
|
37 |
+
{
|
38 |
+
/** @var Wirecard_CheckoutPage_Helper_Data $helper */
|
39 |
+
$helper = Mage::helper('wirecard_checkoutpage');
|
40 |
+
|
41 |
+
$returnUrl = Mage::getUrl('wirecard_checkoutpage/processing/return', array('_secure' => true, '_nosid' => true));
|
42 |
+
|
43 |
+
try {
|
44 |
+
$init = new WirecardCEE_QPay_FrontendClient($helper->getConfigArray());
|
45 |
+
$init->setPluginVersion($helper->getPluginVersion());
|
46 |
+
|
47 |
+
$init->setOrderReference('Configtest #' . uniqid());
|
48 |
+
|
49 |
+
if ($helper->getConfigData('sendconfirmemail')) {
|
50 |
+
$init->setConfirmMail(Mage::getStoreConfig('trans_email/ident_general/email'));
|
51 |
+
}
|
52 |
+
|
53 |
+
$consumerData = new WirecardCEE_Stdlib_ConsumerData();
|
54 |
+
$consumerData->setIpAddress(Mage::app()->getRequest()->getServer('REMOTE_ADDR'));
|
55 |
+
$consumerData->setUserAgent(Mage::app()->getRequest()->getHeader('User-Agent'));
|
56 |
+
|
57 |
+
$init->setAmount(10)
|
58 |
+
->setCurrency('EUR')
|
59 |
+
->setPaymentType(WirecardCEE_QPay_PaymentType::SELECT)
|
60 |
+
->setOrderDescription('Configtest #' . uniqid())
|
61 |
+
->setSuccessUrl($returnUrl)
|
62 |
+
->setPendingUrl($returnUrl)
|
63 |
+
->setCancelUrl($returnUrl)
|
64 |
+
->setFailureUrl($returnUrl)
|
65 |
+
->setConfirmUrl(Mage::getUrl('wirecard_checkoutpage/processing/confirm', array('_secure' => true, '_nosid' => true)))
|
66 |
+
->setServiceUrl($helper->getConfigData('options/serviceurl'))
|
67 |
+
->setConsumerData($consumerData);
|
68 |
+
|
69 |
+
if (strlen($helper->getConfigData('options/bgcolor')))
|
70 |
+
$init->setBackgroundColor($helper->getConfigData('options/bgcolor'));
|
71 |
+
|
72 |
+
if (strlen($helper->getConfigData('options/displaytext')))
|
73 |
+
$init->setDisplayText($helper->getConfigData('options/displaytext'));
|
74 |
+
|
75 |
+
if (strlen($helper->getConfigData('options/imageurl')))
|
76 |
+
$init->setImageUrl($helper->getConfigData('options/imageurl'));
|
77 |
+
|
78 |
+
$initResponse = $init->initiate();
|
79 |
+
} catch (Exception $e) {
|
80 |
+
Mage::getSingleton('core/session')->addError($e->getMessage());
|
81 |
+
return false;
|
82 |
+
}
|
83 |
+
|
84 |
+
if ($initResponse->getStatus() == WirecardCEE_QPay_Response_Initiation::STATE_FAILURE) {
|
85 |
+
$msg = $initResponse->getError()->getConsumerMessage();
|
86 |
+
if (!strlen($msg))
|
87 |
+
$msg = $initResponse->getError()->getMessage();
|
88 |
+
Mage::getSingleton('core/session')->addError($msg);
|
89 |
+
return false;
|
90 |
+
}
|
91 |
+
|
92 |
+
Mage::getSingleton('core/session')->addSuccess($helper->__('Configuration test ok'));
|
93 |
+
return true;
|
94 |
+
}
|
95 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Autoloader.php
ADDED
@@ -0,0 +1,57 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Autoloader extends Mage_Core_Model_Observer
|
34 |
+
{
|
35 |
+
protected static $registered = false;
|
36 |
+
|
37 |
+
public function addAutoloader(Varien_Event_Observer $observer)
|
38 |
+
{
|
39 |
+
// this should not be necessary. Just being done as a check
|
40 |
+
if (self::$registered) {
|
41 |
+
return;
|
42 |
+
}
|
43 |
+
spl_autoload_register(array($this, 'autoload'), false, true);
|
44 |
+
|
45 |
+
self::$registered = true;
|
46 |
+
}
|
47 |
+
|
48 |
+
public function autoload($class)
|
49 |
+
{
|
50 |
+
// rewrite class filename, avoid conflicts with installed old plugin, which resides under WirecardCEE
|
51 |
+
if (preg_match('/^WirecardCEE_/', $class)) {
|
52 |
+
$classFile = str_replace('WirecardCEE', 'Wirecard', $class);
|
53 |
+
$classFile = str_replace(' ', DIRECTORY_SEPARATOR, ucwords(str_replace('_', ' ', $classFile))) . '.php';
|
54 |
+
include $classFile;
|
55 |
+
}
|
56 |
+
}
|
57 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Bmc.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Bmc extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_bmc';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::BMC;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Cc.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Cc extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_cc';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::CCARD;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/CcMoto.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_CcMoto extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_ccMoto';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::CCARD_MOTO;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Ekonto.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Ekonto extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_ekonto';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::EKONTO;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Epaybg.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Epaybg extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_epaybg';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::EPAYBG;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Eps.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Eps extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_eps';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::EPS;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Giropay.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Giropay extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_giropay';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::GIROPAY;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Ideal.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Ideal extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_ideal';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::IDL;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Installment.php
ADDED
@@ -0,0 +1,106 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Installment extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_installment';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::INSTALLMENT;
|
42 |
+
|
43 |
+
protected $_forceSendAdditionalData = true;
|
44 |
+
|
45 |
+
/**
|
46 |
+
* Assign data to info model instance
|
47 |
+
*
|
48 |
+
* @param mixed $data
|
49 |
+
*
|
50 |
+
* @return Mage_Payment_Model_Info
|
51 |
+
*/
|
52 |
+
public function assignData($data)
|
53 |
+
{
|
54 |
+
$result = parent::assignData($data);
|
55 |
+
$key = 'wirecard_checkoutpage_installment_dob';
|
56 |
+
if (is_array($data)) {
|
57 |
+
$this->getInfoInstance()->setAdditionalInformation($key, isset($data[$key]) ? $data[$key] : null);
|
58 |
+
}
|
59 |
+
elseif ($data instanceof Varien_Object) {
|
60 |
+
$this->getInfoInstance()->setAdditionalInformation($key, $data->getData($key));
|
61 |
+
}
|
62 |
+
$this->getInfoInstance()->save();
|
63 |
+
return $result;
|
64 |
+
}
|
65 |
+
|
66 |
+
/**
|
67 |
+
* @see Wirecard_CheckoutPage_Model_Abstract::getCustomerDob()
|
68 |
+
*/
|
69 |
+
public function getCustomerDob()
|
70 |
+
{
|
71 |
+
$additionalInfo = $this->getInfoInstance();
|
72 |
+
if ($additionalInfo->hasAdditionalInformation('wirecard_checkoutpage_installment_dob')) {
|
73 |
+
$dob = $additionalInfo->getAdditionalInformation('wirecard_checkoutpage_installment_dob');
|
74 |
+
if ($dob) {
|
75 |
+
return new DateTime($dob);
|
76 |
+
}
|
77 |
+
}
|
78 |
+
else {
|
79 |
+
return parent::getCustomerDob();
|
80 |
+
}
|
81 |
+
}
|
82 |
+
|
83 |
+
/**
|
84 |
+
* @param Mage_Sales_Model_Quote|null $quote
|
85 |
+
*
|
86 |
+
* @return bool
|
87 |
+
* @see Mage_Payment_Model_Method_Abstract::isAvailable()
|
88 |
+
*/
|
89 |
+
public function isAvailable($quote = null)
|
90 |
+
{
|
91 |
+
//NOTE: NEVER return true in here. the parent check should do this!
|
92 |
+
if ($quote == null) {
|
93 |
+
$quote = $this->_getQuote();
|
94 |
+
}
|
95 |
+
|
96 |
+
if ($this->getConfigData('provider') == 'ratepay') {
|
97 |
+
return $this->_isAvailableRatePay($quote);
|
98 |
+
}
|
99 |
+
elseif ($this->getConfigData('provider') == 'payolution') {
|
100 |
+
return $this->_isAvailablePayolution($quote);
|
101 |
+
}
|
102 |
+
|
103 |
+
return false;
|
104 |
+
}
|
105 |
+
|
106 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Invoice.php
ADDED
@@ -0,0 +1,107 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Invoice extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_invoice';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::INVOICE;
|
42 |
+
|
43 |
+
protected $_forceSendAdditionalData = true;
|
44 |
+
|
45 |
+
/**
|
46 |
+
* Assign data to info model instance
|
47 |
+
*
|
48 |
+
* @param mixed $data
|
49 |
+
*
|
50 |
+
* @return Mage_Payment_Model_Info
|
51 |
+
*/
|
52 |
+
public function assignData($data)
|
53 |
+
{
|
54 |
+
$result = parent::assignData($data);
|
55 |
+
$key = 'wirecard_checkoutpage_invoice_dob';
|
56 |
+
if (is_array($data)) {
|
57 |
+
$this->getInfoInstance()->setAdditionalInformation($key, isset($data[$key]) ? $data[$key] : null);
|
58 |
+
}
|
59 |
+
elseif ($data instanceof Varien_Object) {
|
60 |
+
$this->getInfoInstance()->setAdditionalInformation($key, $data->getData($key));
|
61 |
+
}
|
62 |
+
$this->getInfoInstance()->save();
|
63 |
+
return $result;
|
64 |
+
}
|
65 |
+
|
66 |
+
/**
|
67 |
+
* @see Wirecard_CheckoutPage_Model_Abstract::getCustomerDob()
|
68 |
+
*/
|
69 |
+
public function getCustomerDob()
|
70 |
+
{
|
71 |
+
$additionalInfo = $this->getInfoInstance();
|
72 |
+
if ($additionalInfo->hasAdditionalInformation('wirecard_checkoutpage_invoice_dob')) {
|
73 |
+
$dob = $additionalInfo->getAdditionalInformation('wirecard_checkoutpage_invoice_dob');
|
74 |
+
if ($dob) {
|
75 |
+
return new DateTime($dob);
|
76 |
+
}
|
77 |
+
}
|
78 |
+
else {
|
79 |
+
return parent::getCustomerDob();
|
80 |
+
}
|
81 |
+
}
|
82 |
+
|
83 |
+
/**
|
84 |
+
* @param Mage_Sales_Model_Quote|null $quote
|
85 |
+
*
|
86 |
+
* @return bool
|
87 |
+
* @see Mage_Payment_Model_Method_Abstract::isAvailable()
|
88 |
+
*/
|
89 |
+
public function isAvailable($quote = null)
|
90 |
+
{
|
91 |
+
//NOTE: NEVER return true in here. the parent check should do this!
|
92 |
+
if ($quote == null) {
|
93 |
+
$quote = $this->_getQuote();
|
94 |
+
}
|
95 |
+
|
96 |
+
if ($this->getConfigData('provider') == 'ratepay') {
|
97 |
+
return $this->_isAvailableRatePay($quote);
|
98 |
+
}
|
99 |
+
elseif ($this->getConfigData('provider') == 'payolution') {
|
100 |
+
return $this->_isAvailablePayolution($quote);
|
101 |
+
}
|
102 |
+
|
103 |
+
return false;
|
104 |
+
}
|
105 |
+
|
106 |
+
|
107 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Invoiceb2b.php
ADDED
@@ -0,0 +1,161 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Invoiceb2b extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_invoiceb2b';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::INVOICE;
|
42 |
+
|
43 |
+
protected $_forceSendAdditionalData = true;
|
44 |
+
|
45 |
+
/**
|
46 |
+
* translate method title shown in payment selection
|
47 |
+
* the methode code is the key, if no transaltion found
|
48 |
+
* use the title setting
|
49 |
+
*
|
50 |
+
* @return string
|
51 |
+
*/
|
52 |
+
public function getTitle()
|
53 |
+
{
|
54 |
+
/** @var Wirecard_CheckoutPage_Helper_Data $helper */
|
55 |
+
$helper = Mage::helper('wirecard_checkoutpage');
|
56 |
+
|
57 |
+
$translated = $helper->__('INVOICEB2B');
|
58 |
+
if ($translated == 'INVOICEB2B') {
|
59 |
+
return parent::getTitle();
|
60 |
+
}
|
61 |
+
|
62 |
+
return $translated;
|
63 |
+
}
|
64 |
+
|
65 |
+
/**
|
66 |
+
* @param Mage_Sales_Model_Quote|null $quote
|
67 |
+
* @return bool
|
68 |
+
* @see Mage_Payment_Model_Method_Abstract::isAvailable()
|
69 |
+
*/
|
70 |
+
public function isAvailable($quote = null)
|
71 |
+
{
|
72 |
+
//NOTE: NEVER return true in here. the parent check should do this!
|
73 |
+
if($quote == null)
|
74 |
+
{
|
75 |
+
$quote = $this->_getQuote();
|
76 |
+
}
|
77 |
+
|
78 |
+
if($quote->hasVirtualItems())
|
79 |
+
{
|
80 |
+
return false;
|
81 |
+
}
|
82 |
+
|
83 |
+
if (!$this->compareAddresses($quote))
|
84 |
+
return false;
|
85 |
+
|
86 |
+
if($quote->getQuoteCurrencyCode() != 'EUR')
|
87 |
+
{
|
88 |
+
return false;
|
89 |
+
}
|
90 |
+
|
91 |
+
$billingAddress = $quote->getBillingAddress();
|
92 |
+
if (strlen($billingAddress->getCompany()))
|
93 |
+
return true;
|
94 |
+
|
95 |
+
$vat_id = $billingAddress->getData('vat_id');
|
96 |
+
if (!strlen($vat_id))
|
97 |
+
return false;
|
98 |
+
|
99 |
+
return parent::isAvailable($quote);
|
100 |
+
}
|
101 |
+
|
102 |
+
/**
|
103 |
+
* Assign data to info model instance
|
104 |
+
*
|
105 |
+
* @param mixed $data
|
106 |
+
* @return Mage_Payment_Model_Info
|
107 |
+
*/
|
108 |
+
public function assignData($data)
|
109 |
+
{
|
110 |
+
$result = parent::assignData($data);
|
111 |
+
$key = 'wirecard_checkoutpage_invoiceb2b_company_trade_reg_number';
|
112 |
+
if (is_array($data)) {
|
113 |
+
$this->getInfoInstance()->setAdditionalInformation($key, isset($data[$key]) ? $data[$key] : null);
|
114 |
+
}
|
115 |
+
elseif ($data instanceof Varien_Object) {
|
116 |
+
$this->getInfoInstance()->setAdditionalInformation($key, $data->getData($key));
|
117 |
+
}
|
118 |
+
|
119 |
+
$this->getInfoInstance()->save();
|
120 |
+
return $result;
|
121 |
+
}
|
122 |
+
|
123 |
+
/**
|
124 |
+
* @return array|mixed|null|string
|
125 |
+
*/
|
126 |
+
public function getCompanyTradeRegistrationNumber() {
|
127 |
+
$additionalInfo = $this->getInfoInstance();
|
128 |
+
$field = 'company_trade_reg_number';
|
129 |
+
|
130 |
+
if($additionalInfo->hasAdditionalInformation('wirecard_checkoutpage_invoiceb2b_company_trade_reg_number'))
|
131 |
+
{
|
132 |
+
$userCtrn = $additionalInfo->getAdditionalInformation('wirecardcheckout_page_invoiceb2b_company_trade_reg_number');
|
133 |
+
if (Mage::getSingleton('customer/session')->getId() !== null) {
|
134 |
+
$customer = Mage::getModel('customer/customer')->load(Mage::getSingleton('customer/session')->getId());
|
135 |
+
$customer->setData($field, $userCtrn)->getResource()->saveAttribute($customer, $field);
|
136 |
+
}
|
137 |
+
return $userCtrn;
|
138 |
+
}
|
139 |
+
else
|
140 |
+
{
|
141 |
+
return "";
|
142 |
+
}
|
143 |
+
}
|
144 |
+
|
145 |
+
protected function _getConsumerData()
|
146 |
+
{
|
147 |
+
$consumerData = parent::_getConsumerData();
|
148 |
+
|
149 |
+
$billingAddress = $this->getOrder()->getBillingAddress();
|
150 |
+
|
151 |
+
$consumerData->setCompanyName($billingAddress->getCompany());
|
152 |
+
|
153 |
+
if (strlen($billingAddress->getData('vat_id')))
|
154 |
+
$consumerData->setCompanyVatId($billingAddress->getData('vat_id'));
|
155 |
+
|
156 |
+
if (strlen($this->getCompanyTradeRegistrationNumber()))
|
157 |
+
$consumerData->setCompanyTradeRegistryNumber($this->getCompanyTradeRegistrationNumber());
|
158 |
+
|
159 |
+
return $consumerData;
|
160 |
+
}
|
161 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Moneta.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Moneta extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_moneta';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::MONETA;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Mpass.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Mpass extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_mpass';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::MPASS;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Observer.php
ADDED
@@ -0,0 +1,55 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Observer
|
34 |
+
extends Varien_Object
|
35 |
+
{
|
36 |
+
/**
|
37 |
+
* The given Order Object from Observer
|
38 |
+
*
|
39 |
+
* @var Mage_Sales_Model_Order
|
40 |
+
*/
|
41 |
+
protected $_order;
|
42 |
+
|
43 |
+
/**
|
44 |
+
* Process the seamless Payment after Order is complete
|
45 |
+
*
|
46 |
+
* @param Varien_Event_Observer $observer
|
47 |
+
*
|
48 |
+
* @throws Exception
|
49 |
+
* @return Wirecard_CheckoutPage_Model_Observer
|
50 |
+
*/
|
51 |
+
public function salesOrderPaymentPlaceEnd(Varien_Event_Observer $observer)
|
52 |
+
{
|
53 |
+
return $this;
|
54 |
+
}
|
55 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/P24.php
ADDED
@@ -0,0 +1,45 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_P24 extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_p24';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::P24;
|
42 |
+
|
43 |
+
protected $_forceSendAdditionalData = true;
|
44 |
+
|
45 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Paybox.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Paybox extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_paybox';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::PBX;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Paypal.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Paypal extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_paypal';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::PAYPAL;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Paysafecard.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Paysafecard extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_paysafecard';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::PSC;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Poli.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Poli extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_poli';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::POLI;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Quick.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Quick extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_quick';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::QUICK;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Select.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Select extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_select';
|
41 |
+
protected $_paymentMethod = WirecardCEE_QPay_PaymentType::SELECT;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Sepadd.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Sepadd extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_sepadd';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::SEPADD;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Skrilldirect.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Skrilldirect extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_skrilldirect';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::SKRILLDIRECT;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Skrillwallet.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Skrillwallet extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_skrillwallet';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::SKRILLWALLET;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Sofortbanking.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Sofortbanking extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_sofortbanking';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::SOFORTUEBERWEISUNG;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/System/Config/Configurations.php
ADDED
@@ -0,0 +1,49 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_System_Config_Configurations
|
34 |
+
{
|
35 |
+
public function toOptionArray()
|
36 |
+
{
|
37 |
+
/** @var Wirecard_CheckoutPage_Helper_Data $helper */
|
38 |
+
$helper = Mage::helper('wirecard_checkoutpage');
|
39 |
+
|
40 |
+
$themes = array(
|
41 |
+
array('value' => 'prod', 'label' => $helper->__('Production')),
|
42 |
+
array('value' => 'demo', 'label' => $helper->__('Demo')),
|
43 |
+
array('value' => 'test_no3d', 'label' => $helper->__('Test without 3-D Secure')),
|
44 |
+
array('value' => 'test_3d', 'label' => $helper->__('Test with 3-D Secure'))
|
45 |
+
);
|
46 |
+
|
47 |
+
return $themes;
|
48 |
+
}
|
49 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/System/Config/InstallmentProviders.php
ADDED
@@ -0,0 +1,45 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_System_Config_InstallmentProviders
|
34 |
+
{
|
35 |
+
public function toOptionArray()
|
36 |
+
{
|
37 |
+
$themes = array(
|
38 |
+
array('value' => 'payolution', 'label' => 'payolution'),
|
39 |
+
array('value' => 'ratepay', 'label' => 'RatePay'),
|
40 |
+
array('value' => 'ratepay', 'label' => 'Wirecard'),
|
41 |
+
);
|
42 |
+
|
43 |
+
return $themes;
|
44 |
+
}
|
45 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/System/Config/InvoiceProviders.php
ADDED
@@ -0,0 +1,45 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_System_Config_InvoiceProviders
|
34 |
+
{
|
35 |
+
public function toOptionArray()
|
36 |
+
{
|
37 |
+
$themes = array(
|
38 |
+
array('value' => 'payolution', 'label' => 'payolution'),
|
39 |
+
array('value' => 'ratepay', 'label' => 'RatePay'),
|
40 |
+
array('value' => 'ratepay', 'label' => 'Wirecard'),
|
41 |
+
);
|
42 |
+
|
43 |
+
return $themes;
|
44 |
+
}
|
45 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/System/Config/Layouts.php
ADDED
@@ -0,0 +1,49 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_System_Config_Layouts
|
34 |
+
{
|
35 |
+
public function toOptionArray()
|
36 |
+
{
|
37 |
+
/** @var Wirecard_CheckoutPage_Helper_Data $helper */
|
38 |
+
$helper = Mage::helper('wirecard_checkoutpage');
|
39 |
+
|
40 |
+
$themes = array(
|
41 |
+
array('value' => '', 'label' => $helper->__('')),
|
42 |
+
array('value' => 'desktop', 'label' => $helper->__('Desktop')),
|
43 |
+
array('value' => 'tablet', 'label' => $helper->__('Tablet')),
|
44 |
+
array('value' => 'smartphone', 'label' => $helper->__('Smartphone')),
|
45 |
+
);
|
46 |
+
|
47 |
+
return $themes;
|
48 |
+
}
|
49 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/System/Config/Order/Status.php
ADDED
@@ -0,0 +1,42 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_System_Config_Order_Status
|
34 |
+
extends Mage_Adminhtml_Model_System_Config_Source_Order_Status
|
35 |
+
{
|
36 |
+
protected $_stateStatuses = array(
|
37 |
+
Mage_Sales_Model_Order::STATE_NEW,
|
38 |
+
Mage_Sales_Model_Order::STATE_PROCESSING,
|
39 |
+
Mage_Sales_Model_Order::STATE_COMPLETE,
|
40 |
+
Mage_Sales_Model_Order::STATE_PAYMENT_REVIEW,
|
41 |
+
);
|
42 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Tatrapay.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Tatrapay extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_tatrapay';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::TATRAPAY;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Trustly.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Trustly extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_trustly';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::TRUSTLY;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Trustpay.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Trustpay extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_trustpay';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::TRUSTPAY;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/Model/Voucher.php
ADDED
@@ -0,0 +1,43 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Model_Voucher extends Wirecard_CheckoutPage_Model_Abstract
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* unique internal payment method identifier
|
37 |
+
*
|
38 |
+
* @var string [a-z0-9_]
|
39 |
+
**/
|
40 |
+
protected $_code = 'wirecard_checkoutpage_voucher';
|
41 |
+
protected $_paymentMethod = WirecardCEE_Stdlib_PaymentTypeAbstract::VOUCHER;
|
42 |
+
|
43 |
+
}
|
app/code/community/Wirecard/CheckoutPage/controllers/Admin/WirecardcheckoutpageController.php
ADDED
@@ -0,0 +1,88 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_Admin_WirecardcheckoutpageController extends Mage_Adminhtml_Controller_Action
|
34 |
+
{
|
35 |
+
/**
|
36 |
+
* Index action, implicit target for back button
|
37 |
+
* redirect to config
|
38 |
+
*/
|
39 |
+
public function indexAction()
|
40 |
+
{
|
41 |
+
$redirectUrl = $this->getUrl('adminhtml/system_config/edit/section/wirecard_checkoutpage');
|
42 |
+
$this->_redirectUrl($redirectUrl);
|
43 |
+
}
|
44 |
+
|
45 |
+
public function testconfigAction()
|
46 |
+
{
|
47 |
+
$redirectUrl = $this->getUrl('adminhtml/system_config/edit/section/wirecard_checkoutpage');
|
48 |
+
|
49 |
+
/** @var Wirecard_CheckoutPage_Model_Admin_Test $model */
|
50 |
+
$model = Mage::getModel('wirecard_checkoutpage/admin_test');
|
51 |
+
$model->testconfig();
|
52 |
+
$this->_redirectUrl($redirectUrl);
|
53 |
+
}
|
54 |
+
|
55 |
+
public function contactsupportAction()
|
56 |
+
{
|
57 |
+
$this->loadLayout();
|
58 |
+
$tabs = $this->getLayout()->createBlock('wirecard_checkoutpage/admin_tabs');
|
59 |
+
$tabs->setActiveTab('support_request');
|
60 |
+
$this->_addContent($this->getLayout()->createBlock('wirecard_checkoutpage/admin_support_container'))
|
61 |
+
->_addLeft($tabs);
|
62 |
+
$this->renderLayout();
|
63 |
+
}
|
64 |
+
|
65 |
+
public function sendsupportrequestAction()
|
66 |
+
{
|
67 |
+
$url = $this->getUrl('adminhtml/wirecardcheckoutpage/contactsupport');
|
68 |
+
|
69 |
+
if (!($data = $this->getRequest()->getPost())) {
|
70 |
+
$this->_redirectUrl($url);
|
71 |
+
return;
|
72 |
+
}
|
73 |
+
|
74 |
+
$postObject = new Varien_Object();
|
75 |
+
$postObject->setData($data);
|
76 |
+
|
77 |
+
/** @var Wirecard_CheckoutPage_Model_Admin_Support $model */
|
78 |
+
//$model = Mage::getModel('Wirecard_CheckoutPage_Model_Admin_Support');
|
79 |
+
$model = Mage::getModel('wirecard_checkoutpage/admin_support');
|
80 |
+
$model->sendEmail($postObject);
|
81 |
+
$this->_redirectUrl($url);
|
82 |
+
}
|
83 |
+
|
84 |
+
protected function _isAllowed()
|
85 |
+
{
|
86 |
+
return Mage::getSingleton('admin/session')->isAllowed('system/config/wirecard_checkoutpage');
|
87 |
+
}
|
88 |
+
}
|
app/code/community/Wirecard/CheckoutPage/controllers/ProcessingController.php
ADDED
@@ -0,0 +1,382 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
class Wirecard_CheckoutPage_ProcessingController extends Mage_Core_Controller_Front_Action
|
34 |
+
{
|
35 |
+
protected $paymentInst;
|
36 |
+
|
37 |
+
/** @var Mage_Sales_Model_Order */
|
38 |
+
protected $order;
|
39 |
+
|
40 |
+
/**
|
41 |
+
* Get singleton of Checkout Session Model
|
42 |
+
*
|
43 |
+
* @return Mage_Checkout_Model_Session
|
44 |
+
*/
|
45 |
+
protected function getCheckout()
|
46 |
+
{
|
47 |
+
return Mage::getSingleton('checkout/session');
|
48 |
+
}
|
49 |
+
|
50 |
+
/**
|
51 |
+
* checkout Page for IFrame include
|
52 |
+
*/
|
53 |
+
public function checkoutAction()
|
54 |
+
{
|
55 |
+
$session = $this->getCheckout();
|
56 |
+
|
57 |
+
/** @var Mage_Sales_Model_Order $order */
|
58 |
+
$order = Mage::getModel('sales/order');
|
59 |
+
$order->loadByIncrementId($session->getLastRealOrderId());
|
60 |
+
if (!$this->_succeeded($order)) {
|
61 |
+
$order->setState(Mage_Sales_Model_Order::STATE_PENDING_PAYMENT, true, Mage::helper('wirecard_checkoutpage')->__('Customer was redirected to Wirecard Checkout Page.'))->save();
|
62 |
+
// Save quote id in session and clean it
|
63 |
+
$session->setWirecardCheckoutPageQuoteId($session->getQuoteId());
|
64 |
+
$session->getQuote()->setIsActive(false)->save();
|
65 |
+
$session->clear();
|
66 |
+
|
67 |
+
/** @var Wirecard_CheckoutPage_Model_Abstract $paymentInst */
|
68 |
+
$paymentInst = $order->getPayment()->getMethodInstance();
|
69 |
+
try {
|
70 |
+
$init = $paymentInst->initPayment();
|
71 |
+
if ($this->_useIframe($paymentInst)) {
|
72 |
+
$this->loadLayout();
|
73 |
+
$this->getLayout()->getBlock('wirecard_checkoutpage_checkout')->assign('iframeUrl', $init->getRedirectUrl());
|
74 |
+
$this->renderLayout();
|
75 |
+
}
|
76 |
+
else {
|
77 |
+
$this->_redirectUrl($init->getRedirectUrl());
|
78 |
+
}
|
79 |
+
} catch (Exception $e) {
|
80 |
+
$quoteId = $this->getCheckout()->getLastQuoteId();
|
81 |
+
if ($quoteId) {
|
82 |
+
$quote = Mage::getModel('sales/quote')->load($quoteId);
|
83 |
+
if ($quote->getId()) {
|
84 |
+
$quote->setIsActive(true)->save();
|
85 |
+
$this->getCheckout()->setQuoteId($quoteId);
|
86 |
+
}
|
87 |
+
}
|
88 |
+
$this->getCheckout()->addNotice($e->getMessage());
|
89 |
+
$this->_redirectUrl(Mage::getUrl('checkout/cart/'));
|
90 |
+
}
|
91 |
+
}
|
92 |
+
else {
|
93 |
+
$this->norouteAction();
|
94 |
+
}
|
95 |
+
}
|
96 |
+
|
97 |
+
/**
|
98 |
+
* @param Wirecard_CheckoutPage_Model_Abstract $paymentInst
|
99 |
+
*
|
100 |
+
* @return bool
|
101 |
+
*/
|
102 |
+
protected function _useIframe($paymentInst)
|
103 |
+
{
|
104 |
+
$detectLayout = new WirecardCEE_QPay_MobileDetect();
|
105 |
+
/** @var Wirecard_CheckoutPage_Helper_Data $helper */
|
106 |
+
$helper = Mage::helper('wirecard_checkoutpage');
|
107 |
+
return ($paymentInst->getConfigData('iframe') &&
|
108 |
+
(!$helper->getConfigData('options/mobiledetect')
|
109 |
+
|| ($helper->getConfigData('options/mobiledetect') && !$detectLayout->isMobile())));
|
110 |
+
}
|
111 |
+
|
112 |
+
/**
|
113 |
+
* Wirecard Checkout Page returns POST variables to this action
|
114 |
+
*/
|
115 |
+
public function returnAction()
|
116 |
+
{
|
117 |
+
/** @var Wirecard_CheckoutPage_Helper_Data $helper */
|
118 |
+
$helper = Mage::helper('wirecard_checkoutpage');
|
119 |
+
try {
|
120 |
+
|
121 |
+
if (!$this->getRequest()->isPost())
|
122 |
+
throw new Exception('Not a POST message');
|
123 |
+
|
124 |
+
$data = $this->getRequest()->getPost();
|
125 |
+
|
126 |
+
$helper->log(__METHOD__ . ':' . print_r($data, true));
|
127 |
+
|
128 |
+
$session = $this->getCheckout();
|
129 |
+
/** @var Mage_Sales_Model_Order $order */
|
130 |
+
$order = Mage::getModel('sales/order');
|
131 |
+
$order->load($session->getLastOrderId());
|
132 |
+
if (!$order->getId())
|
133 |
+
throw new Exception('Order not found');
|
134 |
+
|
135 |
+
$return = WirecardCEE_QPay_ReturnFactory::getInstance($data, $helper->getConfigData('settings/secret'));
|
136 |
+
if (!$return->validate())
|
137 |
+
throw new Exception('Validation error: invalid response');
|
138 |
+
|
139 |
+
// fallback, if confirm request has not been arrived
|
140 |
+
if (!$order->getPayment()->getAdditionalInformation('confirmProcessed')) {
|
141 |
+
$helper->log(__METHOD__ . ':order not processed via confirm server2server request, check your packetfilter!', Zend_Log::WARN);
|
142 |
+
|
143 |
+
switch ($return->getPaymentState()) {
|
144 |
+
case WirecardCEE_QPay_ReturnFactory::STATE_SUCCESS:
|
145 |
+
case WirecardCEE_QPay_ReturnFactory::STATE_PENDING:
|
146 |
+
$this->_confirmOrder($order, $return, true);
|
147 |
+
break;
|
148 |
+
|
149 |
+
case WirecardCEE_QPay_ReturnFactory::STATE_CANCEL:
|
150 |
+
/** @var WirecardCEE_QPay_Return_Cancel $return */
|
151 |
+
$this->_cancelOrder($order);
|
152 |
+
break;
|
153 |
+
|
154 |
+
case WirecardCEE_QPay_ReturnFactory::STATE_FAILURE:
|
155 |
+
/** @var WirecardCEE_QPay_Return_Failure $return */
|
156 |
+
$msg = $return->getErrors()->getConsumerMessage();
|
157 |
+
if (!$this->_succeeded($order)) {
|
158 |
+
$order->setState(Mage_Sales_Model_Order::STATE_PENDING_PAYMENT, true, $helper->__('An error occured during the payment process') . ': ' . $msg)->save();
|
159 |
+
$order->cancel();
|
160 |
+
$payment = $order->getPayment();
|
161 |
+
$payment->setAdditionalInformation('consumerMessage', $msg);
|
162 |
+
}
|
163 |
+
break;
|
164 |
+
|
165 |
+
default:
|
166 |
+
throw new Exception('Unhandled Wirecard Checkout Page payment state:' . $return->getPaymentState());
|
167 |
+
}
|
168 |
+
$order->save();
|
169 |
+
}
|
170 |
+
|
171 |
+
// the customer has canceled the payment. show cancel message.
|
172 |
+
if ($order->isCanceled()) {
|
173 |
+
$quoteId = $session->getLastQuoteId();
|
174 |
+
if ($quoteId) {
|
175 |
+
$quote = Mage::getModel('sales/quote')->load($quoteId);
|
176 |
+
if ($quote->getId()) {
|
177 |
+
$quote->setIsActive(true)->save();
|
178 |
+
$session->setQuoteId($quoteId);
|
179 |
+
}
|
180 |
+
}
|
181 |
+
$consumerMessage = $order->getPayment()->getAdditionalInformation('consumerMessage');
|
182 |
+
if (!strlen($consumerMessage)) {
|
183 |
+
//fallback message if no consumerMessage has been set
|
184 |
+
$consumerMessage = $helper->__('Order has been canceled.');
|
185 |
+
}
|
186 |
+
throw new Exception($helper->__($consumerMessage));
|
187 |
+
}
|
188 |
+
|
189 |
+
// get sure order status has changed since redirect
|
190 |
+
if ($order->getStatus() == Mage_Sales_Model_Order::STATE_PAYMENT_REVIEW)
|
191 |
+
throw new Exception($helper->__('Sorry, your payment has not been confirmed by the financial service provider.'));
|
192 |
+
|
193 |
+
if ($order->getStatus() == Mage_Sales_Model_Order::STATE_PENDING_PAYMENT) {
|
194 |
+
$msg = $helper->__('Your order will be processed as soon as we receive the payment confirmation from your bank.');
|
195 |
+
Mage::getSingleton('checkout/session')->addNotice($msg);
|
196 |
+
}
|
197 |
+
|
198 |
+
$this->getCheckout()->setLastSuccessQuoteId($session->getLastQuoteId());
|
199 |
+
$this->getCheckout()->setResponseRedirectUrl('checkout/onepage/success');
|
200 |
+
} catch (Exception $e) {
|
201 |
+
$helper->log(__METHOD__ . ':' . $e->getMessage(), Zend_Log::ERR);
|
202 |
+
$this->getCheckout()->addNotice($e->getMessage());
|
203 |
+
$this->getCheckout()->setResponseRedirectUrl('checkout/cart/');
|
204 |
+
}
|
205 |
+
|
206 |
+
$this->loadLayout();
|
207 |
+
$this->renderLayout();
|
208 |
+
}
|
209 |
+
|
210 |
+
/**
|
211 |
+
* Process transaction confirm message
|
212 |
+
*/
|
213 |
+
public function confirmAction()
|
214 |
+
{
|
215 |
+
/** @var Wirecard_CheckoutPage_Helper_Data $helper */
|
216 |
+
$helper = Mage::helper('wirecard_checkoutpage');
|
217 |
+
try {
|
218 |
+
|
219 |
+
if (!$this->getRequest()->isPost())
|
220 |
+
throw new Exception('Not a POST message');
|
221 |
+
|
222 |
+
$data = $this->getRequest()->getPost();
|
223 |
+
|
224 |
+
$helper->log(__METHOD__ . ':' . print_r($data, true));
|
225 |
+
|
226 |
+
if (!isset($data['mage_orderId']))
|
227 |
+
throw new Exception('Magent OrderId is missing');
|
228 |
+
|
229 |
+
$return = WirecardCEE_QPay_ReturnFactory::getInstance($data, $helper->getConfigData('settings/secret'));
|
230 |
+
if (!$return->validate())
|
231 |
+
throw new Exception('Validation error: invalid response');
|
232 |
+
|
233 |
+
/** @var Mage_Sales_Model_Order $order */
|
234 |
+
$order = Mage::getModel('sales/order');
|
235 |
+
$order->loadByIncrementId($data['mage_orderId']);
|
236 |
+
if (!$order->getId())
|
237 |
+
throw new Exception('Order not found with Id:' . $data['mage_orderId']);
|
238 |
+
|
239 |
+
/** @var Wirecard_CheckoutPage_Model_Abstract $paymentInst */
|
240 |
+
$paymentInst = $order->getPayment()->getMethodInstance();
|
241 |
+
$paymentInst->setResponse($data);
|
242 |
+
|
243 |
+
switch ($return->getPaymentState()) {
|
244 |
+
case WirecardCEE_QPay_ReturnFactory::STATE_SUCCESS:
|
245 |
+
case WirecardCEE_QPay_ReturnFactory::STATE_PENDING:
|
246 |
+
$this->_confirmOrder($order, $return);
|
247 |
+
break;
|
248 |
+
|
249 |
+
case WirecardCEE_QPay_ReturnFactory::STATE_CANCEL:
|
250 |
+
/** @var WirecardCEE_QPay_Return_Cancel $return */
|
251 |
+
$this->_cancelOrder($order);
|
252 |
+
break;
|
253 |
+
|
254 |
+
case WirecardCEE_QPay_ReturnFactory::STATE_FAILURE:
|
255 |
+
/** @var WirecardCEE_QPay_Return_Failure $return */
|
256 |
+
$msg = $return->getErrors()->getConsumerMessage();
|
257 |
+
if (!$this->_succeeded($order)) {
|
258 |
+
$payment = $order->getPayment();
|
259 |
+
$additionalInformation = Array('confirmProcessed' => true, 'consumerMessage' => $msg);
|
260 |
+
$payment->setAdditionalInformation($additionalInformation);
|
261 |
+
$payment->setAdditionalData(serialize($additionalInformation));
|
262 |
+
$payment->save();
|
263 |
+
|
264 |
+
$order->setState(Mage_Sales_Model_Order::STATE_PENDING_PAYMENT, true, $helper->__('An error occured during the payment process') . ': ' . $msg)->save();
|
265 |
+
$order->cancel();
|
266 |
+
}
|
267 |
+
break;
|
268 |
+
|
269 |
+
default:
|
270 |
+
throw new Exception('Unhandled Wirecard Checkout Page payment state:' . $return->getPaymentState());
|
271 |
+
}
|
272 |
+
|
273 |
+
$order->save();
|
274 |
+
|
275 |
+
die(WirecardCEE_QPay_ReturnFactory::generateConfirmResponseString());
|
276 |
+
|
277 |
+
} catch (Exception $e) {
|
278 |
+
$helper->log(__METHOD__ . ':' . $e->getMessage(), Zend_Log::ERR);
|
279 |
+
|
280 |
+
die(WirecardCEE_QPay_ReturnFactory::generateConfirmResponseString($e->getMessage()));
|
281 |
+
}
|
282 |
+
}
|
283 |
+
|
284 |
+
/**
|
285 |
+
* check if order already has been successfully processed.
|
286 |
+
*
|
287 |
+
* @param $order Mage_Sales_Model_Order
|
288 |
+
*
|
289 |
+
* @return bool
|
290 |
+
*/
|
291 |
+
protected function _succeeded($order)
|
292 |
+
{
|
293 |
+
$history = $order->getAllStatusHistory();
|
294 |
+
$paymentInst = $order->getPayment()->getMethodInstance();
|
295 |
+
if ($paymentInst) {
|
296 |
+
foreach ($history AS $entry) {
|
297 |
+
if ($entry->getStatus() == Mage_Sales_Model_Order::STATE_PROCESSING) {
|
298 |
+
return true;
|
299 |
+
}
|
300 |
+
}
|
301 |
+
}
|
302 |
+
return false;
|
303 |
+
}
|
304 |
+
|
305 |
+
/**
|
306 |
+
* Cancel an order
|
307 |
+
*
|
308 |
+
* @param Mage_Sales_Model_Order $order
|
309 |
+
*/
|
310 |
+
protected function _cancelOrder($order)
|
311 |
+
{
|
312 |
+
/** @var Wirecard_CheckoutPage_Helper_Data $helper */
|
313 |
+
$helper = Mage::helper('wirecard_checkoutpage');
|
314 |
+
|
315 |
+
if (!$this->_succeeded($order)) {
|
316 |
+
$payment = $order->getPayment();
|
317 |
+
$additionalInformation = Array('confirmProcessed' => true);
|
318 |
+
$payment->setAdditionalInformation($additionalInformation);
|
319 |
+
$payment->setAdditionalData(serialize($additionalInformation));
|
320 |
+
$payment->save();
|
321 |
+
|
322 |
+
if ($order->canUnhold()) {
|
323 |
+
$order->unhold();
|
324 |
+
}
|
325 |
+
$order->setState(Mage_Sales_Model_Order::STATE_PENDING_PAYMENT, true, $helper->__('Customer canceled the payment process'))->save();
|
326 |
+
$order->cancel();
|
327 |
+
}
|
328 |
+
}
|
329 |
+
|
330 |
+
/**
|
331 |
+
* Confirm the payment of an order
|
332 |
+
*
|
333 |
+
* @param Mage_Sales_Model_Order $order
|
334 |
+
* @param WirecardCEE_Stdlib_Return_ReturnAbstract $return
|
335 |
+
* * @param bool $fallback
|
336 |
+
*/
|
337 |
+
protected function _confirmOrder($order, $return, $fallback = false)
|
338 |
+
{
|
339 |
+
/** @var Wirecard_CheckoutPage_Helper_Data $helper */
|
340 |
+
$helper = Mage::helper('wirecard_checkoutpage');
|
341 |
+
|
342 |
+
if (!$this->_succeeded($order)) {
|
343 |
+
if ($return->getPaymentState() == WirecardCEE_QPay_ReturnFactory::STATE_PENDING) {
|
344 |
+
$order->setState(Mage_Sales_Model_Order::STATE_PENDING_PAYMENT, true, $helper->__('The payment authorization is pending.'))->save();
|
345 |
+
}
|
346 |
+
else {
|
347 |
+
$order->setState(Mage_Sales_Model_Order::STATE_PROCESSING, true, $helper->__('The payment has been successfully completed.'))->save();
|
348 |
+
// invoice payment
|
349 |
+
if ($order->canInvoice()) {
|
350 |
+
|
351 |
+
$invoice = $order->prepareInvoice();
|
352 |
+
$invoice->register()->capture();
|
353 |
+
Mage::getModel('core/resource_transaction')
|
354 |
+
->addObject($invoice)
|
355 |
+
->addObject($invoice->getOrder())
|
356 |
+
->save();
|
357 |
+
}
|
358 |
+
// send new order email to customer
|
359 |
+
$order->sendNewOrderEmail();
|
360 |
+
}
|
361 |
+
}
|
362 |
+
$payment = $order->getPayment();
|
363 |
+
$additionalInformation = Array();
|
364 |
+
|
365 |
+
foreach ($return->getReturned() as $fieldName => $fieldValue) {
|
366 |
+
$additionalInformation[htmlentities($fieldName)] = htmlentities($fieldValue);
|
367 |
+
}
|
368 |
+
|
369 |
+
// need to remember whether confirm request was processed
|
370 |
+
// check this within returnAction and process order
|
371 |
+
// could be if confirm request has bee blocked (firewall)
|
372 |
+
if ($fallback)
|
373 |
+
$additionalInformation['fallbackUsed'] = $helper->__('Confirm via server2server request is not working!');
|
374 |
+
else
|
375 |
+
$additionalInformation['confirmProcessed'] = true;
|
376 |
+
|
377 |
+
$payment->setAdditionalInformation($additionalInformation);
|
378 |
+
$payment->setAdditionalData(serialize($additionalInformation));
|
379 |
+
$payment->save();
|
380 |
+
}
|
381 |
+
|
382 |
+
}
|
app/code/community/Wirecard/CheckoutPage/etc/adminhtml.xml
ADDED
@@ -0,0 +1,57 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<!--
|
3 |
+
/**
|
4 |
+
* Shop System Plugins - Terms of Use
|
5 |
+
*
|
6 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
7 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
8 |
+
* products and services.
|
9 |
+
*
|
10 |
+
* They have been tested and approved for full functionality in the standard configuration
|
11 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
12 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
13 |
+
* the same terms.
|
14 |
+
*
|
15 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
16 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
17 |
+
*
|
18 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
19 |
+
* comprehensive test phase by the user of the plugin.
|
20 |
+
*
|
21 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
22 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
23 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
24 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
25 |
+
* shop system.
|
26 |
+
*
|
27 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
28 |
+
* operation.
|
29 |
+
*
|
30 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
31 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
32 |
+
*/
|
33 |
+
-->
|
34 |
+
<config>
|
35 |
+
<acl>
|
36 |
+
<resources>
|
37 |
+
<all>
|
38 |
+
<title>Allow Everything</title>
|
39 |
+
</all>
|
40 |
+
<admin>
|
41 |
+
<children>
|
42 |
+
<system>
|
43 |
+
<children>
|
44 |
+
<config>
|
45 |
+
<children>
|
46 |
+
<wirecard_checkoutpage translate="title">
|
47 |
+
<title>Wirecard Checkout Page</title>
|
48 |
+
</wirecard_checkoutpage>
|
49 |
+
</children>
|
50 |
+
</config>
|
51 |
+
</children>
|
52 |
+
</system>
|
53 |
+
</children>
|
54 |
+
</admin>
|
55 |
+
</resources>
|
56 |
+
</acl>
|
57 |
+
</config>
|
app/code/community/Wirecard/CheckoutPage/etc/config.xml
ADDED
@@ -0,0 +1,366 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<!--
|
3 |
+
/**
|
4 |
+
* Shop System Plugins - Terms of Use
|
5 |
+
*
|
6 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
7 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
8 |
+
* products and services.
|
9 |
+
*
|
10 |
+
* They have been tested and approved for full functionality in the standard configuration
|
11 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
12 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
13 |
+
* the same terms.
|
14 |
+
*
|
15 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
16 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
17 |
+
*
|
18 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
19 |
+
* comprehensive test phase by the user of the plugin.
|
20 |
+
*
|
21 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
22 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
23 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
24 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
25 |
+
* shop system.
|
26 |
+
*
|
27 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
28 |
+
* operation.
|
29 |
+
*
|
30 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
31 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
32 |
+
*/
|
33 |
+
-->
|
34 |
+
<config>
|
35 |
+
<modules>
|
36 |
+
<wirecard_checkoutpage>
|
37 |
+
<version>4.0.0</version>
|
38 |
+
</wirecard_checkoutpage>
|
39 |
+
</modules>
|
40 |
+
<global>
|
41 |
+
<models>
|
42 |
+
<wirecard_checkoutpage>
|
43 |
+
<class>Wirecard_CheckoutPage_Model</class>
|
44 |
+
</wirecard_checkoutpage>
|
45 |
+
</models>
|
46 |
+
<helpers>
|
47 |
+
<wirecard_checkoutpage>
|
48 |
+
<class>Wirecard_CheckoutPage_Helper</class>
|
49 |
+
</wirecard_checkoutpage>
|
50 |
+
</helpers>
|
51 |
+
<resources>
|
52 |
+
<wirecard_checkoutpage_setup>
|
53 |
+
<setup>
|
54 |
+
<module>Wirecard_CheckoutPage</module>
|
55 |
+
<class>Mage_Eav_Model_Entity_Setup</class>
|
56 |
+
</setup>
|
57 |
+
<connection>
|
58 |
+
<use>core_setup</use>
|
59 |
+
</connection>
|
60 |
+
</wirecard_checkoutpage_setup>
|
61 |
+
<wirecard_checkoutpage_write>
|
62 |
+
<connection>
|
63 |
+
<use>core_write</use>
|
64 |
+
</connection>
|
65 |
+
</wirecard_checkoutpage_write>
|
66 |
+
<wirecard_checkoutpage_read>
|
67 |
+
<connection>
|
68 |
+
<use>core_read</use>
|
69 |
+
</connection>
|
70 |
+
</wirecard_checkoutpage_read>
|
71 |
+
</resources>
|
72 |
+
<blocks>
|
73 |
+
<wirecard_checkoutpage>
|
74 |
+
<class>Wirecard_CheckoutPage_Block</class>
|
75 |
+
</wirecard_checkoutpage>
|
76 |
+
</blocks>
|
77 |
+
|
78 |
+
<events>
|
79 |
+
<controller_front_init_before>
|
80 |
+
<observers>
|
81 |
+
<wirecard_checkoutpage>
|
82 |
+
<class>Wirecard_CheckoutPage_Model_Autoloader</class>
|
83 |
+
<method>addAutoloader</method>
|
84 |
+
<type>singleton</type>
|
85 |
+
</wirecard_checkoutpage>
|
86 |
+
</observers>
|
87 |
+
</controller_front_init_before>
|
88 |
+
</events>
|
89 |
+
</global>
|
90 |
+
<frontend>
|
91 |
+
<routers>
|
92 |
+
<wirecard_checkoutpage>
|
93 |
+
<use>standard</use>
|
94 |
+
<args>
|
95 |
+
<module>Wirecard_CheckoutPage</module>
|
96 |
+
<frontName>wirecard_checkoutpage</frontName>
|
97 |
+
</args>
|
98 |
+
</wirecard_checkoutpage>
|
99 |
+
</routers>
|
100 |
+
<translate>
|
101 |
+
<modules>
|
102 |
+
<wirecard_checkoutpage>
|
103 |
+
<files>
|
104 |
+
<default>Wirecard_CheckoutPage.csv</default>
|
105 |
+
</files>
|
106 |
+
</wirecard_checkoutpage>
|
107 |
+
</modules>
|
108 |
+
</translate>
|
109 |
+
<layout>
|
110 |
+
<updates>
|
111 |
+
<wirecard_checkoutpage>
|
112 |
+
<file>wirecard_checkoutpage.xml</file>
|
113 |
+
</wirecard_checkoutpage>
|
114 |
+
</updates>
|
115 |
+
</layout>
|
116 |
+
</frontend>
|
117 |
+
<admin>
|
118 |
+
<routers>
|
119 |
+
<adminhtml>
|
120 |
+
<args>
|
121 |
+
<modules>
|
122 |
+
<wirecardcheckoutpage after="Mage_Adminhtml">Wirecard_CheckoutPage_Admin</wirecardcheckoutpage>
|
123 |
+
</modules>
|
124 |
+
</args>
|
125 |
+
</adminhtml>
|
126 |
+
</routers>
|
127 |
+
</admin>
|
128 |
+
<adminhtml>
|
129 |
+
<translate>
|
130 |
+
<modules>
|
131 |
+
<wirecard_checkoutpage>
|
132 |
+
<files>
|
133 |
+
<default>wirecard_checkoutpage.csv</default>
|
134 |
+
</files>
|
135 |
+
</wirecard_checkoutpage>
|
136 |
+
</modules>
|
137 |
+
</translate>
|
138 |
+
</adminhtml>
|
139 |
+
<default>
|
140 |
+
<wirecard_checkoutpage>
|
141 |
+
<settings>
|
142 |
+
<configuration>demo</configuration>
|
143 |
+
<customer_id>D200001</customer_id>
|
144 |
+
<secret>B8AKTPWBRMNBV455FG6M2DANE99WU2</secret>
|
145 |
+
</settings>
|
146 |
+
<options>
|
147 |
+
<serviceurl>about-magento-demo-store</serviceurl>
|
148 |
+
<mobiledetect>1</mobiledetect>
|
149 |
+
<maxretries>-1</maxretries>
|
150 |
+
</options>
|
151 |
+
<ccardoptions>
|
152 |
+
<showcardholder>1</showcardholder>
|
153 |
+
<showcvc>1</showcvc>
|
154 |
+
</ccardoptions>
|
155 |
+
</wirecard_checkoutpage>
|
156 |
+
<payment>
|
157 |
+
<wirecard_checkoutpage_select>
|
158 |
+
<active>1</active>
|
159 |
+
<model>wirecard_checkoutpage/select</model>
|
160 |
+
<title>Select</title>
|
161 |
+
<iframe>1</iframe>
|
162 |
+
<allowspecific>0</allowspecific>
|
163 |
+
</wirecard_checkoutpage_select>
|
164 |
+
<wirecard_checkoutpage_cc>
|
165 |
+
<active>1</active>
|
166 |
+
<model>wirecard_checkoutpage/cc</model>
|
167 |
+
<title>Credit Card / Maestro SecureCode</title>
|
168 |
+
<iframe>1</iframe>
|
169 |
+
<allowspecific>0</allowspecific>
|
170 |
+
</wirecard_checkoutpage_cc>
|
171 |
+
<wirecard_checkoutpage_ccMoto>
|
172 |
+
<active>0</active>
|
173 |
+
<model>wirecard_checkoutpage/ccMoto</model>
|
174 |
+
<title>Credit Card - Mail Order / Telephone Order</title>
|
175 |
+
<iframe>1</iframe>
|
176 |
+
<allowspecific>0</allowspecific>
|
177 |
+
</wirecard_checkoutpage_ccMoto>
|
178 |
+
<wirecard_checkoutpage_eps>
|
179 |
+
<active>1</active>
|
180 |
+
<model>wirecard_checkoutpage/eps</model>
|
181 |
+
<title>eps Online-Ãœberweisung</title>
|
182 |
+
<iframe>1</iframe>
|
183 |
+
<allowspecific>0</allowspecific>
|
184 |
+
</wirecard_checkoutpage_eps>
|
185 |
+
<wirecard_checkoutpage_ideal>
|
186 |
+
<active>1</active>
|
187 |
+
<model>wirecard_checkoutpage/ideal</model>
|
188 |
+
<title>iDEAL</title>
|
189 |
+
<iframe>1</iframe>
|
190 |
+
<allowspecific>0</allowspecific>
|
191 |
+
</wirecard_checkoutpage_ideal>
|
192 |
+
<wirecard_checkoutpage_giropay>
|
193 |
+
<active>1</active>
|
194 |
+
<model>wirecard_checkoutpage/giropay</model>
|
195 |
+
<title>giropay</title>
|
196 |
+
<iframe>1</iframe>
|
197 |
+
<allowspecific>0</allowspecific>
|
198 |
+
</wirecard_checkoutpage_giropay>
|
199 |
+
<wirecard_checkoutpage_tatrapay>
|
200 |
+
<active>1</active>
|
201 |
+
<model>wirecard_checkoutpage/tatrapay</model>
|
202 |
+
<title>TatraPay</title>
|
203 |
+
<iframe>1</iframe>
|
204 |
+
<allowspecific>0</allowspecific>
|
205 |
+
</wirecard_checkoutpage_tatrapay>
|
206 |
+
<wirecard_checkoutpage_sofortbanking>
|
207 |
+
<active>1</active>
|
208 |
+
<model>wirecard_checkoutpage/sofortbanking</model>
|
209 |
+
<title>SOFORT Banking</title>
|
210 |
+
<iframe>1</iframe>
|
211 |
+
<allowspecific>0</allowspecific>
|
212 |
+
</wirecard_checkoutpage_sofortbanking>
|
213 |
+
<wirecard_checkoutpage_skrilldirect>
|
214 |
+
<active>1</active>
|
215 |
+
<model>wirecard_checkoutpage/skrilldirect</model>
|
216 |
+
<title>Skrill Direct</title>
|
217 |
+
<iframe>1</iframe>
|
218 |
+
<allowspecific>0</allowspecific>
|
219 |
+
</wirecard_checkoutpage_skrilldirect>
|
220 |
+
<wirecard_checkoutpage_skrillwallet>
|
221 |
+
<active>1</active>
|
222 |
+
<model>wirecard_checkoutpage/skrillwallet</model>
|
223 |
+
<title>Skrill Digital Wallet</title>
|
224 |
+
<iframe>1</iframe>
|
225 |
+
<allowspecific>0</allowspecific>
|
226 |
+
</wirecard_checkoutpage_skrillwallet>
|
227 |
+
<wirecard_checkoutpage_mpass>
|
228 |
+
<active>1</active>
|
229 |
+
<model>wirecard_checkoutpage/mpass</model>
|
230 |
+
<title>mpass</title>
|
231 |
+
<iframe>1</iframe>
|
232 |
+
<allowspecific>0</allowspecific>
|
233 |
+
</wirecard_checkoutpage_mpass>
|
234 |
+
<wirecard_checkoutpage_bmc>
|
235 |
+
<active>1</active>
|
236 |
+
<model>wirecard_checkoutpage/bmc</model>
|
237 |
+
<title>Bancontact/Mister Cash</title>
|
238 |
+
<iframe>1</iframe>
|
239 |
+
<allowspecific>0</allowspecific>
|
240 |
+
</wirecard_checkoutpage_bmc>
|
241 |
+
<wirecard_checkoutpage_p24>
|
242 |
+
<active>1</active>
|
243 |
+
<model>wirecard_checkoutpage/p24</model>
|
244 |
+
<title>Przelewy24</title>
|
245 |
+
<iframe>1</iframe>
|
246 |
+
<allowspecific>0</allowspecific>
|
247 |
+
</wirecard_checkoutpage_p24>
|
248 |
+
<wirecard_checkoutpage_poli>
|
249 |
+
<active>1</active>
|
250 |
+
<model>wirecard_checkoutpage/poli</model>
|
251 |
+
<title>POLi</title>
|
252 |
+
<iframe>1</iframe>
|
253 |
+
<allowspecific>0</allowspecific>
|
254 |
+
</wirecard_checkoutpage_poli>
|
255 |
+
<wirecard_checkoutpage_moneta>
|
256 |
+
<active>1</active>
|
257 |
+
<model>wirecard_checkoutpage/moneta</model>
|
258 |
+
<title>moneta.ru</title>
|
259 |
+
<iframe>1</iframe>
|
260 |
+
<allowspecific>0</allowspecific>
|
261 |
+
</wirecard_checkoutpage_moneta>
|
262 |
+
<wirecard_checkoutpage_ekonto>
|
263 |
+
<active>1</active>
|
264 |
+
<model>wirecard_checkoutpage/ekonto</model>
|
265 |
+
<title>eKonto</title>
|
266 |
+
<iframe>1</iframe>
|
267 |
+
<allowspecific>0</allowspecific>
|
268 |
+
</wirecard_checkoutpage_ekonto>
|
269 |
+
<wirecard_checkoutpage_trustly>
|
270 |
+
<active>1</active>
|
271 |
+
<model>wirecard_checkoutpage/trustly</model>
|
272 |
+
<title>Trustly</title>
|
273 |
+
<iframe>1</iframe>
|
274 |
+
<allowspecific>0</allowspecific>
|
275 |
+
</wirecard_checkoutpage_trustly>
|
276 |
+
<wirecard_checkoutpage_paybox>
|
277 |
+
<active>1</active>
|
278 |
+
<model>wirecard_checkoutpage/paybox</model>
|
279 |
+
<title>paybox</title>
|
280 |
+
<iframe>1</iframe>
|
281 |
+
<allowspecific>0</allowspecific>
|
282 |
+
</wirecard_checkoutpage_paybox>
|
283 |
+
<wirecard_checkoutpage_paysafecard>
|
284 |
+
<active>1</active>
|
285 |
+
<model>wirecard_checkoutpage/paysafecard</model>
|
286 |
+
<title>paysafecard</title>
|
287 |
+
<iframe>1</iframe>
|
288 |
+
<allowspecific>0</allowspecific>
|
289 |
+
</wirecard_checkoutpage_paysafecard>
|
290 |
+
<wirecard_checkoutpage_quick>
|
291 |
+
<active>1</active>
|
292 |
+
<model>wirecard_checkoutpage/quick</model>
|
293 |
+
<title>@Quick</title>
|
294 |
+
<iframe>1</iframe>
|
295 |
+
<allowspecific>0</allowspecific>
|
296 |
+
</wirecard_checkoutpage_quick>
|
297 |
+
<wirecard_checkoutpage_paypal>
|
298 |
+
<active>1</active>
|
299 |
+
<model>wirecard_checkoutpage/paypal</model>
|
300 |
+
<title>PayPal</title>
|
301 |
+
<iframe>1</iframe>
|
302 |
+
<allowspecific>0</allowspecific>
|
303 |
+
</wirecard_checkoutpage_paypal>
|
304 |
+
<wirecard_checkoutpage_epaybg>
|
305 |
+
<active>1</active>
|
306 |
+
<model>wirecard_checkoutpage/epaybg</model>
|
307 |
+
<title>ePay.bg</title>
|
308 |
+
<iframe>1</iframe>
|
309 |
+
<allowspecific>0</allowspecific>
|
310 |
+
</wirecard_checkoutpage_epaybg>
|
311 |
+
<wirecard_checkoutpage_sepadd>
|
312 |
+
<active>1</active>
|
313 |
+
<model>wirecard_checkoutpage/sepadd</model>
|
314 |
+
<title>SEPA Direct Debit</title>
|
315 |
+
<iframe>1</iframe>
|
316 |
+
<allowspecific>0</allowspecific>
|
317 |
+
</wirecard_checkoutpage_sepadd>
|
318 |
+
<wirecard_checkoutpage_invoice>
|
319 |
+
<active>1</active>
|
320 |
+
<provider>payolution</provider>
|
321 |
+
<model>wirecard_checkoutpage/invoice</model>
|
322 |
+
<title>Invoice</title>
|
323 |
+
<iframe>1</iframe>
|
324 |
+
<allowspecific>0</allowspecific>
|
325 |
+
<min_order_total>10</min_order_total>
|
326 |
+
<max_order_total>3500</max_order_total>
|
327 |
+
<payolution_terms>0</payolution_terms>
|
328 |
+
</wirecard_checkoutpage_invoice>
|
329 |
+
<wirecard_checkoutpage_invoiceb2b>
|
330 |
+
<active>1</active>
|
331 |
+
<provider>payolution</provider>
|
332 |
+
<model>wirecard_checkoutpage/invoiceb2b</model>
|
333 |
+
<title>Invoice B2B</title>
|
334 |
+
<iframe>1</iframe>
|
335 |
+
<allowspecific>0</allowspecific>
|
336 |
+
<min_order_total>25</min_order_total>
|
337 |
+
<max_order_total>3500</max_order_total>
|
338 |
+
</wirecard_checkoutpage_invoiceb2b>
|
339 |
+
<wirecard_checkoutpage_installment>
|
340 |
+
<active>1</active>
|
341 |
+
<provider>payolution</provider>
|
342 |
+
<model>wirecard_checkoutpage/installment</model>
|
343 |
+
<title>Installment</title>
|
344 |
+
<iframe>1</iframe>
|
345 |
+
<allowspecific>0</allowspecific>
|
346 |
+
<min_order_total>150</min_order_total>
|
347 |
+
<max_order_total>3500</max_order_total>
|
348 |
+
<payolution_terms>0</payolution_terms>
|
349 |
+
</wirecard_checkoutpage_installment>
|
350 |
+
<wirecard_checkoutpage_voucher>
|
351 |
+
<active>1</active>
|
352 |
+
<model>wirecard_checkoutpage/voucher</model>
|
353 |
+
<title>My Voucher</title>
|
354 |
+
<iframe>1</iframe>
|
355 |
+
<allowspecific>0</allowspecific>
|
356 |
+
</wirecard_checkoutpage_voucher>
|
357 |
+
<wirecard_checkoutpage_trustpay>
|
358 |
+
<active>1</active>
|
359 |
+
<model>wirecard_checkoutpage/trustpay</model>
|
360 |
+
<title>TrustPay</title>
|
361 |
+
<iframe>1</iframe>
|
362 |
+
<allowspecific>0</allowspecific>
|
363 |
+
</wirecard_checkoutpage_trustpay>
|
364 |
+
</payment>
|
365 |
+
</default>
|
366 |
+
</config>
|
app/code/community/Wirecard/CheckoutPage/etc/system.xml
ADDED
@@ -0,0 +1,2713 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<!--
|
3 |
+
/**
|
4 |
+
* Shop System Plugins - Terms of Use
|
5 |
+
*
|
6 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
7 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
8 |
+
* products and services.
|
9 |
+
*
|
10 |
+
* They have been tested and approved for full functionality in the standard configuration
|
11 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
12 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
13 |
+
* the same terms.
|
14 |
+
*
|
15 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
16 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
17 |
+
*
|
18 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
19 |
+
* comprehensive test phase by the user of the plugin.
|
20 |
+
*
|
21 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
22 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
23 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
24 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
25 |
+
* shop system.
|
26 |
+
*
|
27 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
28 |
+
* operation.
|
29 |
+
*
|
30 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
31 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
32 |
+
*/
|
33 |
+
-->
|
34 |
+
<config>
|
35 |
+
<sections>
|
36 |
+
<wirecard_checkoutpage translate="label" module="wirecard_checkoutpage">
|
37 |
+
<label>Wirecard Checkout Page</label>
|
38 |
+
<tab>sales</tab>
|
39 |
+
<frontend_type>text</frontend_type>
|
40 |
+
<sort_order>900</sort_order>
|
41 |
+
<show_in_default>1</show_in_default>
|
42 |
+
<show_in_website>1</show_in_website>
|
43 |
+
<show_in_store>1</show_in_store>
|
44 |
+
<groups>
|
45 |
+
<settings translate="label">
|
46 |
+
<label>Basic data</label>
|
47 |
+
<frontend_type>text</frontend_type>
|
48 |
+
<sort_order>100</sort_order>
|
49 |
+
<show_in_default>1</show_in_default>
|
50 |
+
<show_in_website>1</show_in_website>
|
51 |
+
<show_in_store>1</show_in_store>
|
52 |
+
<comment>
|
53 |
+
<![CDATA[
|
54 |
+
<div style="padding:10px;margin-bottom:7px;">
|
55 |
+
<img src="/skin/adminhtml/default/default/images/wirecard/wirecard-logo.png" alt="Wirecard CEE" /><br /><h3>Wirecard CEE - Your Full Service Payment Provider - Comprehensive solutions from one single source</h3>Wirecard AG is one of the world's leading providers of outsourcing and white label solutions for electronic payment transactions.<br /><br /> As independent provider of payment solutions, we accompany our customers along the entire business development. Our payment solutions are perfectly tailored to suit e-Commerce requirements and have made us Austria's leading payment service provider. Customization, competence, and commitment. <br /><br /> <a href="https://www.wirecard.at/" target="_blank">www.wirecard.at</a>
|
56 |
+
</div><div style="clear:both;"></div>
|
57 |
+
]]>
|
58 |
+
</comment>
|
59 |
+
<fields>
|
60 |
+
<configuration translate="label,comment">
|
61 |
+
<label>Configuration</label>
|
62 |
+
<frontend_type>select</frontend_type>
|
63 |
+
<source_model>Wirecard_CheckoutPage_Model_System_Config_Configurations</source_model>
|
64 |
+
<sort_order>10</sort_order>
|
65 |
+
<show_in_default>1</show_in_default>
|
66 |
+
<show_in_website>1</show_in_website>
|
67 |
+
<show_in_store>1</show_in_store>
|
68 |
+
<comment>For integration, select predefined configuration settings or "production" for live systems.</comment>
|
69 |
+
</configuration>
|
70 |
+
<customer_id translate="label,comment">
|
71 |
+
<label>Customer ID</label>
|
72 |
+
<frontend_type>text</frontend_type>
|
73 |
+
<sort_order>20</sort_order>
|
74 |
+
<show_in_default>1</show_in_default>
|
75 |
+
<show_in_website>1</show_in_website>
|
76 |
+
<show_in_store>1</show_in_store>
|
77 |
+
<comment><![CDATA[
|
78 |
+
Customer number you received from Wirecard (customerId, i.e. D2#####). <a href="https://guides.wirecard.at/request_parameters#customerid" target="_blank">More information.</a>
|
79 |
+
]]>
|
80 |
+
</comment>
|
81 |
+
</customer_id>
|
82 |
+
<shop_id translate="label,comment">
|
83 |
+
<label>Shop ID</label>
|
84 |
+
<frontend_type>text</frontend_type>
|
85 |
+
<sort_order>30</sort_order>
|
86 |
+
<show_in_default>1</show_in_default>
|
87 |
+
<show_in_website>1</show_in_website>
|
88 |
+
<show_in_store>1</show_in_store>
|
89 |
+
<comment>
|
90 |
+
<![CDATA[
|
91 |
+
Shop identifier in case of more than one shop. <a href="https://guides.wirecard.at/request_parameters#shopid" target="_blank">More information.</a>
|
92 |
+
]]>
|
93 |
+
</comment>
|
94 |
+
</shop_id>
|
95 |
+
<secret translate="label,comment">
|
96 |
+
<label>Secret</label>
|
97 |
+
<frontend_type>text</frontend_type>
|
98 |
+
<sort_order>40</sort_order>
|
99 |
+
<show_in_default>1</show_in_default>
|
100 |
+
<show_in_website>1</show_in_website>
|
101 |
+
<show_in_store>1</show_in_store>
|
102 |
+
<comment>
|
103 |
+
<![CDATA[
|
104 |
+
String which you received from Wirecard for signing and validating data to prove their authenticity. <a href="https://guides.wirecard.at/security:start#secret_and_fingerprint" target="_blank">More information.</a>
|
105 |
+
]]>
|
106 |
+
</comment>
|
107 |
+
</secret>
|
108 |
+
<register translate="label">
|
109 |
+
<label></label>
|
110 |
+
<frontend_type>button</frontend_type>
|
111 |
+
<frontend_model>Wirecard_CheckoutPage_Block_Admin_Buttons</frontend_model>
|
112 |
+
<sort_order>60</sort_order>
|
113 |
+
<show_in_default>1</show_in_default>
|
114 |
+
<show_in_website>1</show_in_website>
|
115 |
+
<show_in_store>1</show_in_store>
|
116 |
+
</register>
|
117 |
+
</fields>
|
118 |
+
</settings>
|
119 |
+
<options translate="label">
|
120 |
+
<label>Options</label>
|
121 |
+
<frontend_type>text</frontend_type>
|
122 |
+
<sort_order>200</sort_order>
|
123 |
+
<show_in_default>1</show_in_default>
|
124 |
+
<show_in_website>1</show_in_website>
|
125 |
+
<show_in_store>1</show_in_store>
|
126 |
+
<fields>
|
127 |
+
<serviceurl translate="label,comment">
|
128 |
+
<label>URL to imprint page</label>
|
129 |
+
<frontend_type>text</frontend_type>
|
130 |
+
<validate>validate-url</validate>
|
131 |
+
<sort_order>10</sort_order>
|
132 |
+
<show_in_default>1</show_in_default>
|
133 |
+
<show_in_website>1</show_in_website>
|
134 |
+
<show_in_store>1</show_in_store>
|
135 |
+
<comment>
|
136 |
+
<![CDATA[
|
137 |
+
URL on the payment page which leads to the imprint page of the online shop. <a href="https://guides.wirecard.at/doku.php/request_parameters#serviceurl" target="_blank">More information.</a>
|
138 |
+
]]>
|
139 |
+
</comment>
|
140 |
+
</serviceurl>
|
141 |
+
<displaytext translate="label,comment">
|
142 |
+
<label>Text on payment page</label>
|
143 |
+
<frontend_type>text</frontend_type>
|
144 |
+
<sort_order>12</sort_order>
|
145 |
+
<show_in_default>1</show_in_default>
|
146 |
+
<show_in_website>1</show_in_website>
|
147 |
+
<show_in_store>1</show_in_store>
|
148 |
+
<comment>
|
149 |
+
<![CDATA[
|
150 |
+
Text displayed during the payment process, i.e. "Thank you for ordering in xy-shop". <a href="https://guides.wirecard.at/request_parameters#displaytext" target="_blank">More information.</a>
|
151 |
+
]]>
|
152 |
+
</comment>
|
153 |
+
</displaytext>
|
154 |
+
<imageurl translate="label,comment">
|
155 |
+
<label>URL to image on payment page</label>
|
156 |
+
<frontend_type>text</frontend_type>
|
157 |
+
<validate>validate-url</validate>
|
158 |
+
<sort_order>14</sort_order>
|
159 |
+
<show_in_default>1</show_in_default>
|
160 |
+
<show_in_website>1</show_in_website>
|
161 |
+
<show_in_store>1</show_in_store>
|
162 |
+
<comment>
|
163 |
+
<![CDATA[
|
164 |
+
URL to an image/logo which is displayed during the payment process in Wirecard Checkout Page. <a href="https://guides.wirecard.at/request_parameters#imageurl" target="_blank">More information.</a>
|
165 |
+
]]>
|
166 |
+
</comment>
|
167 |
+
</imageurl>
|
168 |
+
<bgcolor translate="label,comment">
|
169 |
+
<label>Background color for credit card logos</label>
|
170 |
+
<frontend_type>text</frontend_type>
|
171 |
+
<sort_order>14</sort_order>
|
172 |
+
<show_in_default>1</show_in_default>
|
173 |
+
<show_in_website>1</show_in_website>
|
174 |
+
<show_in_store>1</show_in_store>
|
175 |
+
<comment>
|
176 |
+
<![CDATA[
|
177 |
+
Background color for the image containing the credit card brand logos. <a href="https://guides.wirecard.at/doku.php/wcp:customization_desktop" target="_blank">More information.</a>
|
178 |
+
]]>
|
179 |
+
</comment>
|
180 |
+
</bgcolor>
|
181 |
+
<shopname translate="label,comment">
|
182 |
+
<label>Shop prefix in posting text</label>
|
183 |
+
<frontend_type>text</frontend_type>
|
184 |
+
<sort_order>20</sort_order>
|
185 |
+
<show_in_default>1</show_in_default>
|
186 |
+
<show_in_website>1</show_in_website>
|
187 |
+
<show_in_store>1</show_in_store>
|
188 |
+
<comment>
|
189 |
+
Reference to your online shop on your consumer's invoice, limited to 9 characters.
|
190 |
+
</comment>
|
191 |
+
</shopname>
|
192 |
+
<sendadditionaldata translate="label,comment">
|
193 |
+
<label>Forward consumer data</label>
|
194 |
+
<frontend_type>select</frontend_type>
|
195 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
196 |
+
<sort_order>30</sort_order>
|
197 |
+
<show_in_default>1</show_in_default>
|
198 |
+
<show_in_website>1</show_in_website>
|
199 |
+
<show_in_store>1</show_in_store>
|
200 |
+
<comment><![CDATA[
|
201 |
+
Forwarding shipping and billing data about your consumer to the respective financial service provider.
|
202 |
+
]]>
|
203 |
+
</comment>
|
204 |
+
</sendadditionaldata>
|
205 |
+
<sendconfirmationemail translate="label,comment">
|
206 |
+
<label>Notification e-mail</label>
|
207 |
+
<frontend_type>select</frontend_type>
|
208 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
209 |
+
<sort_order>40</sort_order>
|
210 |
+
<show_in_default>1</show_in_default>
|
211 |
+
<show_in_website>1</show_in_website>
|
212 |
+
<show_in_store>1</show_in_store>
|
213 |
+
<comment><![CDATA[
|
214 |
+
Receiving notification by e-mail regarding the orders of your consumers if an error occurred in the communication between Wirecard and your online shop. <a href="https://guides.wirecard.at/request_parameters#confirmMail" target="_blank">More information</a>. Please contact our <a href="https://guides.wirecard.at/sales" target="_blank">sales teams</a> to activate this feature.
|
215 |
+
]]>
|
216 |
+
</comment>
|
217 |
+
</sendconfirmationemail>
|
218 |
+
<autodeposit translate="label,comment">
|
219 |
+
<label>Automated deposit</label>
|
220 |
+
<frontend_type>select</frontend_type>
|
221 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
222 |
+
<sort_order>50</sort_order>
|
223 |
+
<show_in_default>1</show_in_default>
|
224 |
+
<show_in_website>1</show_in_website>
|
225 |
+
<show_in_store>1</show_in_store>
|
226 |
+
<comment><![CDATA[
|
227 |
+
Enabling an automated deposit of payments. <a href="https://guides.wirecard.at/request_parameters#autodeposit" target="_blank">More information</a>. Please contact our <a href="https://guides.wirecard.at/sales" target="_blank">sales teams</a> to activate this feature.
|
228 |
+
]]>
|
229 |
+
</comment>
|
230 |
+
</autodeposit>
|
231 |
+
<sendbasketinformation translate="label,comment">
|
232 |
+
<label>Forward basket data</label>
|
233 |
+
<frontend_type>select</frontend_type>
|
234 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
235 |
+
<sort_order>60</sort_order>
|
236 |
+
<show_in_default>1</show_in_default>
|
237 |
+
<show_in_website>1</show_in_website>
|
238 |
+
<show_in_store>1</show_in_store>
|
239 |
+
<comment><![CDATA[
|
240 |
+
Forwarding basket data to the respective financial service provider.
|
241 |
+
]]>
|
242 |
+
</comment>
|
243 |
+
</sendbasketinformation>
|
244 |
+
<mobiledetect translate="label,comment">
|
245 |
+
<label>Device detection</label>
|
246 |
+
<frontend_type>select</frontend_type>
|
247 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
248 |
+
<sort_order>70</sort_order>
|
249 |
+
<show_in_default>1</show_in_default>
|
250 |
+
<show_in_website>1</show_in_website>
|
251 |
+
<show_in_store>1</show_in_store>
|
252 |
+
<comment><![CDATA[
|
253 |
+
Detecting mobile browsers and setting "layout" request parameter accordingly. Forcing page redirect for mobile devices instead of iframe based checkout.
|
254 |
+
]]>
|
255 |
+
</comment>
|
256 |
+
</mobiledetect>
|
257 |
+
<layout translate="label,comment">
|
258 |
+
<label>Device type optimization</label>
|
259 |
+
<frontend_type>select</frontend_type>
|
260 |
+
<source_model>Wirecard_CheckoutPage_Model_System_Config_Layouts</source_model>
|
261 |
+
<sort_order>80</sort_order>
|
262 |
+
<show_in_default>1</show_in_default>
|
263 |
+
<show_in_website>1</show_in_website>
|
264 |
+
<show_in_store>1</show_in_store>
|
265 |
+
<comment>
|
266 |
+
<![CDATA[
|
267 |
+
Specific device type for which Wirecard Checkout Page should be optimized ("desktop", "tablet" or "smartphone"). <a href="https://guides.wirecard.at/request_parameters#layout" target="_blank">More information.</a>
|
268 |
+
]]>
|
269 |
+
</comment>
|
270 |
+
</layout>
|
271 |
+
<maxretries translate="label,comment">
|
272 |
+
<label>Max. retries</label>
|
273 |
+
<frontend_type>text</frontend_type>
|
274 |
+
<validate>validate-number</validate>
|
275 |
+
<sort_order>85</sort_order>
|
276 |
+
<show_in_default>1</show_in_default>
|
277 |
+
<show_in_website>1</show_in_website>
|
278 |
+
<show_in_store>1</show_in_store>
|
279 |
+
<comment>
|
280 |
+
<![CDATA[
|
281 |
+
Maximum number of payment attempts regarding a certain order. <a href="https://guides.wirecard.at/request_parameters#maxretries" target="_blank">More information.</a>
|
282 |
+
]]>
|
283 |
+
</comment>
|
284 |
+
</maxretries>
|
285 |
+
<payolution_terms translate="label,comment">
|
286 |
+
<label>payolution terms</label>
|
287 |
+
<frontend_type>select</frontend_type>
|
288 |
+
<source_model>adminhtml/system_config_source_enabledisable</source_model>
|
289 |
+
<sort_order>90</sort_order>
|
290 |
+
<show_in_default>1</show_in_default>
|
291 |
+
<show_in_website>1</show_in_website>
|
292 |
+
<show_in_store>1</show_in_store>
|
293 |
+
<comment>
|
294 |
+
<![CDATA[
|
295 |
+
Consumer must accept payolution terms during the checkout process. <a href="https://guides.wirecard.at/payment_methods:payolution:start" target="_blank">More information.</a>
|
296 |
+
]]>
|
297 |
+
</comment>
|
298 |
+
</payolution_terms>
|
299 |
+
<payolution_mid translate="label,comment">
|
300 |
+
<label>payolution mID</label>
|
301 |
+
<frontend_type>text</frontend_type>
|
302 |
+
<sort_order>100</sort_order>
|
303 |
+
<show_in_default>1</show_in_default>
|
304 |
+
<show_in_website>1</show_in_website>
|
305 |
+
<show_in_store>1</show_in_store>
|
306 |
+
<comment>
|
307 |
+
<![CDATA[
|
308 |
+
Your payolution merchant ID, non-base64-encoded.
|
309 |
+
]]>
|
310 |
+
</comment>
|
311 |
+
</payolution_mid>
|
312 |
+
</fields>
|
313 |
+
</options>
|
314 |
+
</groups>
|
315 |
+
</wirecard_checkoutpage>
|
316 |
+
</sections>
|
317 |
+
<sections>
|
318 |
+
<payment>
|
319 |
+
<groups>
|
320 |
+
<wirecard_checkoutpage_select translate="label" module="wirecard_checkoutpage">
|
321 |
+
<label>Wirecard Checkout Page Select</label>
|
322 |
+
<frontend_type>text</frontend_type>
|
323 |
+
<sort_order>1000</sort_order>
|
324 |
+
<show_in_default>1</show_in_default>
|
325 |
+
<show_in_website>1</show_in_website>
|
326 |
+
<show_in_store>1</show_in_store>
|
327 |
+
<fields>
|
328 |
+
<active translate="label">
|
329 |
+
<label>Enabled</label>
|
330 |
+
<frontend_type>select</frontend_type>
|
331 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
332 |
+
<sort_order>20</sort_order>
|
333 |
+
<show_in_default>1</show_in_default>
|
334 |
+
<show_in_website>1</show_in_website>
|
335 |
+
<show_in_store>1</show_in_store>
|
336 |
+
</active>
|
337 |
+
<sort_order translate="label">
|
338 |
+
<label>Sorting order number</label>
|
339 |
+
<frontend_type>text</frontend_type>
|
340 |
+
<sort_order>30</sort_order>
|
341 |
+
<show_in_default>1</show_in_default>
|
342 |
+
<show_in_website>1</show_in_website>
|
343 |
+
<show_in_store>1</show_in_store>
|
344 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
345 |
+
</sort_order>
|
346 |
+
<title translate="label">
|
347 |
+
<label>Name for payment method</label>
|
348 |
+
<frontend_type>text</frontend_type>
|
349 |
+
<sort_order>40</sort_order>
|
350 |
+
<show_in_default>1</show_in_default>
|
351 |
+
<show_in_website>1</show_in_website>
|
352 |
+
<show_in_store>1</show_in_store>
|
353 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
354 |
+
</title>
|
355 |
+
<iframe>
|
356 |
+
<label>Display as iframe</label>
|
357 |
+
<frontend_type>select</frontend_type>
|
358 |
+
<sort_order>50</sort_order>
|
359 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
360 |
+
</source_model>
|
361 |
+
<show_in_default>1</show_in_default>
|
362 |
+
<show_in_website>1</show_in_website>
|
363 |
+
<show_in_store>1</show_in_store>
|
364 |
+
</iframe>
|
365 |
+
<allowspecific translate="label">
|
366 |
+
<label>Payment method available for</label>
|
367 |
+
<frontend_type>allowspecific</frontend_type>
|
368 |
+
<sort_order>70</sort_order>
|
369 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
370 |
+
</source_model>
|
371 |
+
<show_in_default>1</show_in_default>
|
372 |
+
<show_in_website>1</show_in_website>
|
373 |
+
<show_in_store>1</show_in_store>
|
374 |
+
</allowspecific>
|
375 |
+
<specificcountry translate="label">
|
376 |
+
<label>Specific countries</label>
|
377 |
+
<frontend_type>multiselect</frontend_type>
|
378 |
+
<sort_order>80</sort_order>
|
379 |
+
<source_model>adminhtml/system_config_source_country
|
380 |
+
</source_model>
|
381 |
+
<show_in_default>1</show_in_default>
|
382 |
+
<show_in_website>1</show_in_website>
|
383 |
+
<show_in_store>1</show_in_store>
|
384 |
+
</specificcountry>
|
385 |
+
<min_order_total translate="label">
|
386 |
+
<label>Minimum order total</label>
|
387 |
+
<frontend_type>text</frontend_type>
|
388 |
+
<sort_order>90</sort_order>
|
389 |
+
<show_in_default>1</show_in_default>
|
390 |
+
<show_in_website>1</show_in_website>
|
391 |
+
<show_in_store>1</show_in_store>
|
392 |
+
</min_order_total>
|
393 |
+
<max_order_total translate="label">
|
394 |
+
<label>Maximum order total</label>
|
395 |
+
<frontend_type>text</frontend_type>
|
396 |
+
<sort_order>100</sort_order>
|
397 |
+
<show_in_default>1</show_in_default>
|
398 |
+
<show_in_website>1</show_in_website>
|
399 |
+
<show_in_store>0</show_in_store>
|
400 |
+
</max_order_total>
|
401 |
+
</fields>
|
402 |
+
</wirecard_checkoutpage_select>
|
403 |
+
<wirecard_checkoutpage_cc translate="label" module="wirecard_checkoutpage">
|
404 |
+
<label>Wirecard Checkout Page Credit Card / Maestro SecureCode</label>
|
405 |
+
<frontend_type>text</frontend_type>
|
406 |
+
<sort_order>1020</sort_order>
|
407 |
+
<show_in_default>1</show_in_default>
|
408 |
+
<show_in_website>1</show_in_website>
|
409 |
+
<show_in_store>1</show_in_store>
|
410 |
+
<fields>
|
411 |
+
<active translate="label">
|
412 |
+
<label>Enabled</label>
|
413 |
+
<frontend_type>select</frontend_type>
|
414 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
415 |
+
<sort_order>20</sort_order>
|
416 |
+
<show_in_default>1</show_in_default>
|
417 |
+
<show_in_website>1</show_in_website>
|
418 |
+
<show_in_store>1</show_in_store>
|
419 |
+
</active>
|
420 |
+
<sort_order translate="label">
|
421 |
+
<label>Sorting order number</label>
|
422 |
+
<frontend_type>text</frontend_type>
|
423 |
+
<sort_order>30</sort_order>
|
424 |
+
<show_in_default>1</show_in_default>
|
425 |
+
<show_in_website>1</show_in_website>
|
426 |
+
<show_in_store>1</show_in_store>
|
427 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
428 |
+
</sort_order>
|
429 |
+
<title translate="label">
|
430 |
+
<label>Name for payment method</label>
|
431 |
+
<frontend_type>text</frontend_type>
|
432 |
+
<sort_order>40</sort_order>
|
433 |
+
<show_in_default>1</show_in_default>
|
434 |
+
<show_in_website>1</show_in_website>
|
435 |
+
<show_in_store>1</show_in_store>
|
436 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
437 |
+
</title>
|
438 |
+
<iframe>
|
439 |
+
<label>Display as iframe</label>
|
440 |
+
<frontend_type>select</frontend_type>
|
441 |
+
<sort_order>50</sort_order>
|
442 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
443 |
+
</source_model>
|
444 |
+
<show_in_default>1</show_in_default>
|
445 |
+
<show_in_website>1</show_in_website>
|
446 |
+
<show_in_store>1</show_in_store>
|
447 |
+
</iframe>
|
448 |
+
<allowspecific translate="label">
|
449 |
+
<label>Payment method available for</label>
|
450 |
+
<frontend_type>allowspecific</frontend_type>
|
451 |
+
<sort_order>70</sort_order>
|
452 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
453 |
+
</source_model>
|
454 |
+
<show_in_default>1</show_in_default>
|
455 |
+
<show_in_website>1</show_in_website>
|
456 |
+
<show_in_store>1</show_in_store>
|
457 |
+
</allowspecific>
|
458 |
+
<specificcountry translate="label">
|
459 |
+
<label>Specific countries</label>
|
460 |
+
<frontend_type>multiselect</frontend_type>
|
461 |
+
<sort_order>80</sort_order>
|
462 |
+
<source_model>adminhtml/system_config_source_country
|
463 |
+
</source_model>
|
464 |
+
<show_in_default>1</show_in_default>
|
465 |
+
<show_in_website>1</show_in_website>
|
466 |
+
<show_in_store>1</show_in_store>
|
467 |
+
</specificcountry>
|
468 |
+
<min_order_total translate="label">
|
469 |
+
<label>Minimum order total</label>
|
470 |
+
<frontend_type>text</frontend_type>
|
471 |
+
<sort_order>90</sort_order>
|
472 |
+
<show_in_default>1</show_in_default>
|
473 |
+
<show_in_website>1</show_in_website>
|
474 |
+
<show_in_store>1</show_in_store>
|
475 |
+
</min_order_total>
|
476 |
+
<max_order_total translate="label">
|
477 |
+
<label>Maximum order total</label>
|
478 |
+
<frontend_type>text</frontend_type>
|
479 |
+
<sort_order>100</sort_order>
|
480 |
+
<show_in_default>1</show_in_default>
|
481 |
+
<show_in_website>1</show_in_website>
|
482 |
+
<show_in_store>0</show_in_store>
|
483 |
+
</max_order_total>
|
484 |
+
</fields>
|
485 |
+
</wirecard_checkoutpage_cc>
|
486 |
+
<wirecard_checkoutpage_ccMoto translate="label" module="wirecard_checkoutpage">
|
487 |
+
<label>Wirecard Checkout Page Credit Card - Mail Order / Telephone Order</label>
|
488 |
+
<frontend_type>text</frontend_type>
|
489 |
+
<sort_order>1030</sort_order>
|
490 |
+
<show_in_default>1</show_in_default>
|
491 |
+
<show_in_website>1</show_in_website>
|
492 |
+
<show_in_store>1</show_in_store>
|
493 |
+
<fields>
|
494 |
+
<active translate="label">
|
495 |
+
<label>Enabled</label>
|
496 |
+
<frontend_type>select</frontend_type>
|
497 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
498 |
+
<sort_order>20</sort_order>
|
499 |
+
<show_in_default>1</show_in_default>
|
500 |
+
<show_in_website>1</show_in_website>
|
501 |
+
<show_in_store>1</show_in_store>
|
502 |
+
</active>
|
503 |
+
<sort_order translate="label">
|
504 |
+
<label>Sorting order number</label>
|
505 |
+
<frontend_type>text</frontend_type>
|
506 |
+
<sort_order>30</sort_order>
|
507 |
+
<show_in_default>1</show_in_default>
|
508 |
+
<show_in_website>1</show_in_website>
|
509 |
+
<show_in_store>1</show_in_store>
|
510 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
511 |
+
</sort_order>
|
512 |
+
<title translate="label">
|
513 |
+
<label>Name for payment method</label>
|
514 |
+
<frontend_type>text</frontend_type>
|
515 |
+
<sort_order>40</sort_order>
|
516 |
+
<show_in_default>1</show_in_default>
|
517 |
+
<show_in_website>1</show_in_website>
|
518 |
+
<show_in_store>1</show_in_store>
|
519 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
520 |
+
</title>
|
521 |
+
<iframe>
|
522 |
+
<label>Display as iframe</label>
|
523 |
+
<frontend_type>select</frontend_type>
|
524 |
+
<sort_order>50</sort_order>
|
525 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
526 |
+
</source_model>
|
527 |
+
<show_in_default>1</show_in_default>
|
528 |
+
<show_in_website>1</show_in_website>
|
529 |
+
<show_in_store>1</show_in_store>
|
530 |
+
</iframe>
|
531 |
+
<allowspecific translate="label">
|
532 |
+
<label>Payment method available for</label>
|
533 |
+
<frontend_type>allowspecific</frontend_type>
|
534 |
+
<sort_order>70</sort_order>
|
535 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
536 |
+
</source_model>
|
537 |
+
<show_in_default>1</show_in_default>
|
538 |
+
<show_in_website>1</show_in_website>
|
539 |
+
<show_in_store>1</show_in_store>
|
540 |
+
</allowspecific>
|
541 |
+
<specificcountry translate="label">
|
542 |
+
<label>Specific countries</label>
|
543 |
+
<frontend_type>multiselect</frontend_type>
|
544 |
+
<sort_order>80</sort_order>
|
545 |
+
<source_model>adminhtml/system_config_source_country
|
546 |
+
</source_model>
|
547 |
+
<show_in_default>1</show_in_default>
|
548 |
+
<show_in_website>1</show_in_website>
|
549 |
+
<show_in_store>1</show_in_store>
|
550 |
+
</specificcountry>
|
551 |
+
<min_order_total translate="label">
|
552 |
+
<label>Minimum order total</label>
|
553 |
+
<frontend_type>text</frontend_type>
|
554 |
+
<sort_order>90</sort_order>
|
555 |
+
<show_in_default>1</show_in_default>
|
556 |
+
<show_in_website>1</show_in_website>
|
557 |
+
<show_in_store>1</show_in_store>
|
558 |
+
</min_order_total>
|
559 |
+
<max_order_total translate="label">
|
560 |
+
<label>Maximum order total</label>
|
561 |
+
<frontend_type>text</frontend_type>
|
562 |
+
<sort_order>100</sort_order>
|
563 |
+
<show_in_default>1</show_in_default>
|
564 |
+
<show_in_website>1</show_in_website>
|
565 |
+
<show_in_store>0</show_in_store>
|
566 |
+
</max_order_total>
|
567 |
+
</fields>
|
568 |
+
</wirecard_checkoutpage_ccMoto>
|
569 |
+
<wirecard_checkoutpage_eps translate="label" module="wirecard_checkoutpage">
|
570 |
+
<label>Wirecard Checkout Page eps Online-Ãœberweisung</label>
|
571 |
+
<frontend_type>text</frontend_type>
|
572 |
+
<sort_order>1040</sort_order>
|
573 |
+
<show_in_default>1</show_in_default>
|
574 |
+
<show_in_website>1</show_in_website>
|
575 |
+
<show_in_store>1</show_in_store>
|
576 |
+
<fields>
|
577 |
+
<active translate="label">
|
578 |
+
<label>Enabled</label>
|
579 |
+
<frontend_type>select</frontend_type>
|
580 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
581 |
+
<sort_order>20</sort_order>
|
582 |
+
<show_in_default>1</show_in_default>
|
583 |
+
<show_in_website>1</show_in_website>
|
584 |
+
<show_in_store>1</show_in_store>
|
585 |
+
</active>
|
586 |
+
<sort_order translate="label">
|
587 |
+
<label>Sorting order number</label>
|
588 |
+
<frontend_type>text</frontend_type>
|
589 |
+
<sort_order>30</sort_order>
|
590 |
+
<show_in_default>1</show_in_default>
|
591 |
+
<show_in_website>1</show_in_website>
|
592 |
+
<show_in_store>1</show_in_store>
|
593 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
594 |
+
</sort_order>
|
595 |
+
<title translate="label">
|
596 |
+
<label>Name for payment method</label>
|
597 |
+
<frontend_type>text</frontend_type>
|
598 |
+
<sort_order>40</sort_order>
|
599 |
+
<show_in_default>1</show_in_default>
|
600 |
+
<show_in_website>1</show_in_website>
|
601 |
+
<show_in_store>1</show_in_store>
|
602 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
603 |
+
</title>
|
604 |
+
<iframe>
|
605 |
+
<label>Display as iframe</label>
|
606 |
+
<frontend_type>select</frontend_type>
|
607 |
+
<sort_order>50</sort_order>
|
608 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
609 |
+
</source_model>
|
610 |
+
<show_in_default>1</show_in_default>
|
611 |
+
<show_in_website>1</show_in_website>
|
612 |
+
<show_in_store>1</show_in_store>
|
613 |
+
</iframe>
|
614 |
+
<allowspecific translate="label">
|
615 |
+
<label>Payment method available for</label>
|
616 |
+
<frontend_type>allowspecific</frontend_type>
|
617 |
+
<sort_order>70</sort_order>
|
618 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
619 |
+
</source_model>
|
620 |
+
<show_in_default>1</show_in_default>
|
621 |
+
<show_in_website>1</show_in_website>
|
622 |
+
<show_in_store>1</show_in_store>
|
623 |
+
</allowspecific>
|
624 |
+
<specificcountry translate="label">
|
625 |
+
<label>Specific countries</label>
|
626 |
+
<frontend_type>multiselect</frontend_type>
|
627 |
+
<sort_order>80</sort_order>
|
628 |
+
<source_model>adminhtml/system_config_source_country
|
629 |
+
</source_model>
|
630 |
+
<show_in_default>1</show_in_default>
|
631 |
+
<show_in_website>1</show_in_website>
|
632 |
+
<show_in_store>1</show_in_store>
|
633 |
+
</specificcountry>
|
634 |
+
<min_order_total translate="label">
|
635 |
+
<label>Minimum order total</label>
|
636 |
+
<frontend_type>text</frontend_type>
|
637 |
+
<sort_order>90</sort_order>
|
638 |
+
<show_in_default>1</show_in_default>
|
639 |
+
<show_in_website>1</show_in_website>
|
640 |
+
<show_in_store>1</show_in_store>
|
641 |
+
</min_order_total>
|
642 |
+
<max_order_total translate="label">
|
643 |
+
<label>Maximum order total</label>
|
644 |
+
<frontend_type>text</frontend_type>
|
645 |
+
<sort_order>100</sort_order>
|
646 |
+
<show_in_default>1</show_in_default>
|
647 |
+
<show_in_website>1</show_in_website>
|
648 |
+
<show_in_store>0</show_in_store>
|
649 |
+
</max_order_total>
|
650 |
+
</fields>
|
651 |
+
</wirecard_checkoutpage_eps>
|
652 |
+
<wirecard_checkoutpage_ideal translate="label" module="wirecard_checkoutpage">
|
653 |
+
<label>Wirecard Checkout Page iDEAL</label>
|
654 |
+
<frontend_type>text</frontend_type>
|
655 |
+
<sort_order>1050</sort_order>
|
656 |
+
<show_in_default>1</show_in_default>
|
657 |
+
<show_in_website>1</show_in_website>
|
658 |
+
<show_in_store>1</show_in_store>
|
659 |
+
<fields>
|
660 |
+
<active translate="label">
|
661 |
+
<label>Enabled</label>
|
662 |
+
<frontend_type>select</frontend_type>
|
663 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
664 |
+
<sort_order>20</sort_order>
|
665 |
+
<show_in_default>1</show_in_default>
|
666 |
+
<show_in_website>1</show_in_website>
|
667 |
+
<show_in_store>1</show_in_store>
|
668 |
+
</active>
|
669 |
+
<sort_order translate="label">
|
670 |
+
<label>Sorting order number</label>
|
671 |
+
<frontend_type>text</frontend_type>
|
672 |
+
<sort_order>30</sort_order>
|
673 |
+
<show_in_default>1</show_in_default>
|
674 |
+
<show_in_website>1</show_in_website>
|
675 |
+
<show_in_store>1</show_in_store>
|
676 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
677 |
+
</sort_order>
|
678 |
+
<title translate="label">
|
679 |
+
<label>Name for payment method</label>
|
680 |
+
<frontend_type>text</frontend_type>
|
681 |
+
<sort_order>40</sort_order>
|
682 |
+
<show_in_default>1</show_in_default>
|
683 |
+
<show_in_website>1</show_in_website>
|
684 |
+
<show_in_store>1</show_in_store>
|
685 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
686 |
+
</title>
|
687 |
+
<iframe>
|
688 |
+
<label>Display as iframe</label>
|
689 |
+
<frontend_type>select</frontend_type>
|
690 |
+
<sort_order>50</sort_order>
|
691 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
692 |
+
</source_model>
|
693 |
+
<show_in_default>1</show_in_default>
|
694 |
+
<show_in_website>1</show_in_website>
|
695 |
+
<show_in_store>1</show_in_store>
|
696 |
+
</iframe>
|
697 |
+
<allowspecific translate="label">
|
698 |
+
<label>Payment method available for</label>
|
699 |
+
<frontend_type>allowspecific</frontend_type>
|
700 |
+
<sort_order>70</sort_order>
|
701 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
702 |
+
</source_model>
|
703 |
+
<show_in_default>1</show_in_default>
|
704 |
+
<show_in_website>1</show_in_website>
|
705 |
+
<show_in_store>1</show_in_store>
|
706 |
+
</allowspecific>
|
707 |
+
<specificcountry translate="label">
|
708 |
+
<label>Specific countries</label>
|
709 |
+
<frontend_type>multiselect</frontend_type>
|
710 |
+
<sort_order>80</sort_order>
|
711 |
+
<source_model>adminhtml/system_config_source_country
|
712 |
+
</source_model>
|
713 |
+
<show_in_default>1</show_in_default>
|
714 |
+
<show_in_website>1</show_in_website>
|
715 |
+
<show_in_store>1</show_in_store>
|
716 |
+
</specificcountry>
|
717 |
+
<min_order_total translate="label">
|
718 |
+
<label>Minimum order total</label>
|
719 |
+
<frontend_type>text</frontend_type>
|
720 |
+
<sort_order>90</sort_order>
|
721 |
+
<show_in_default>1</show_in_default>
|
722 |
+
<show_in_website>1</show_in_website>
|
723 |
+
<show_in_store>1</show_in_store>
|
724 |
+
</min_order_total>
|
725 |
+
<max_order_total translate="label">
|
726 |
+
<label>Maximum order total</label>
|
727 |
+
<frontend_type>text</frontend_type>
|
728 |
+
<sort_order>100</sort_order>
|
729 |
+
<show_in_default>1</show_in_default>
|
730 |
+
<show_in_website>1</show_in_website>
|
731 |
+
<show_in_store>0</show_in_store>
|
732 |
+
</max_order_total>
|
733 |
+
</fields>
|
734 |
+
</wirecard_checkoutpage_ideal>
|
735 |
+
<wirecard_checkoutpage_giropay translate="label" module="wirecard_checkoutpage">
|
736 |
+
<label>Wirecard Checkout Page giropay</label>
|
737 |
+
<frontend_type>text</frontend_type>
|
738 |
+
<sort_order>1060</sort_order>
|
739 |
+
<show_in_default>1</show_in_default>
|
740 |
+
<show_in_website>1</show_in_website>
|
741 |
+
<show_in_store>1</show_in_store>
|
742 |
+
<fields>
|
743 |
+
<active translate="label">
|
744 |
+
<label>Enabled</label>
|
745 |
+
<frontend_type>select</frontend_type>
|
746 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
747 |
+
<sort_order>20</sort_order>
|
748 |
+
<show_in_default>1</show_in_default>
|
749 |
+
<show_in_website>1</show_in_website>
|
750 |
+
<show_in_store>1</show_in_store>
|
751 |
+
</active>
|
752 |
+
<sort_order translate="label">
|
753 |
+
<label>Sorting order number</label>
|
754 |
+
<frontend_type>text</frontend_type>
|
755 |
+
<sort_order>30</sort_order>
|
756 |
+
<show_in_default>1</show_in_default>
|
757 |
+
<show_in_website>1</show_in_website>
|
758 |
+
<show_in_store>1</show_in_store>
|
759 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
760 |
+
</sort_order>
|
761 |
+
<title translate="label">
|
762 |
+
<label>Name for payment method</label>
|
763 |
+
<frontend_type>text</frontend_type>
|
764 |
+
<sort_order>40</sort_order>
|
765 |
+
<show_in_default>1</show_in_default>
|
766 |
+
<show_in_website>1</show_in_website>
|
767 |
+
<show_in_store>1</show_in_store>
|
768 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
769 |
+
</title>
|
770 |
+
<iframe>
|
771 |
+
<label>Display as iframe</label>
|
772 |
+
<frontend_type>select</frontend_type>
|
773 |
+
<sort_order>50</sort_order>
|
774 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
775 |
+
</source_model>
|
776 |
+
<show_in_default>1</show_in_default>
|
777 |
+
<show_in_website>1</show_in_website>
|
778 |
+
<show_in_store>1</show_in_store>
|
779 |
+
</iframe>
|
780 |
+
<allowspecific translate="label">
|
781 |
+
<label>Payment method available for</label>
|
782 |
+
<frontend_type>allowspecific</frontend_type>
|
783 |
+
<sort_order>70</sort_order>
|
784 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
785 |
+
</source_model>
|
786 |
+
<show_in_default>1</show_in_default>
|
787 |
+
<show_in_website>1</show_in_website>
|
788 |
+
<show_in_store>1</show_in_store>
|
789 |
+
</allowspecific>
|
790 |
+
<specificcountry translate="label">
|
791 |
+
<label>Specific countries</label>
|
792 |
+
<frontend_type>multiselect</frontend_type>
|
793 |
+
<sort_order>80</sort_order>
|
794 |
+
<source_model>adminhtml/system_config_source_country
|
795 |
+
</source_model>
|
796 |
+
<show_in_default>1</show_in_default>
|
797 |
+
<show_in_website>1</show_in_website>
|
798 |
+
<show_in_store>1</show_in_store>
|
799 |
+
</specificcountry>
|
800 |
+
<min_order_total translate="label">
|
801 |
+
<label>Minimum order total</label>
|
802 |
+
<frontend_type>text</frontend_type>
|
803 |
+
<sort_order>90</sort_order>
|
804 |
+
<show_in_default>1</show_in_default>
|
805 |
+
<show_in_website>1</show_in_website>
|
806 |
+
<show_in_store>1</show_in_store>
|
807 |
+
</min_order_total>
|
808 |
+
<max_order_total translate="label">
|
809 |
+
<label>Maximum order total</label>
|
810 |
+
<frontend_type>text</frontend_type>
|
811 |
+
<sort_order>100</sort_order>
|
812 |
+
<show_in_default>1</show_in_default>
|
813 |
+
<show_in_website>1</show_in_website>
|
814 |
+
<show_in_store>0</show_in_store>
|
815 |
+
</max_order_total>
|
816 |
+
</fields>
|
817 |
+
</wirecard_checkoutpage_giropay>
|
818 |
+
<wirecard_checkoutpage_tatrapay translate="label" module="wirecard_checkoutpage">
|
819 |
+
<label>Wirecard Checkout Page TatraPay</label>
|
820 |
+
<frontend_type>text</frontend_type>
|
821 |
+
<sort_order>1070</sort_order>
|
822 |
+
<show_in_default>1</show_in_default>
|
823 |
+
<show_in_website>1</show_in_website>
|
824 |
+
<show_in_store>1</show_in_store>
|
825 |
+
<fields>
|
826 |
+
<active translate="label">
|
827 |
+
<label>Enabled</label>
|
828 |
+
<frontend_type>select</frontend_type>
|
829 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
830 |
+
<sort_order>20</sort_order>
|
831 |
+
<show_in_default>1</show_in_default>
|
832 |
+
<show_in_website>1</show_in_website>
|
833 |
+
<show_in_store>1</show_in_store>
|
834 |
+
</active>
|
835 |
+
<sort_order translate="label">
|
836 |
+
<label>Sorting order number</label>
|
837 |
+
<frontend_type>text</frontend_type>
|
838 |
+
<sort_order>30</sort_order>
|
839 |
+
<show_in_default>1</show_in_default>
|
840 |
+
<show_in_website>1</show_in_website>
|
841 |
+
<show_in_store>1</show_in_store>
|
842 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
843 |
+
</sort_order>
|
844 |
+
<title translate="label">
|
845 |
+
<label>Name for payment method</label>
|
846 |
+
<frontend_type>text</frontend_type>
|
847 |
+
<sort_order>40</sort_order>
|
848 |
+
<show_in_default>1</show_in_default>
|
849 |
+
<show_in_website>1</show_in_website>
|
850 |
+
<show_in_store>1</show_in_store>
|
851 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
852 |
+
</title>
|
853 |
+
<iframe>
|
854 |
+
<label>Display as iframe</label>
|
855 |
+
<frontend_type>select</frontend_type>
|
856 |
+
<sort_order>50</sort_order>
|
857 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
858 |
+
</source_model>
|
859 |
+
<show_in_default>1</show_in_default>
|
860 |
+
<show_in_website>1</show_in_website>
|
861 |
+
<show_in_store>1</show_in_store>
|
862 |
+
</iframe>
|
863 |
+
<allowspecific translate="label">
|
864 |
+
<label>Payment method available for</label>
|
865 |
+
<frontend_type>allowspecific</frontend_type>
|
866 |
+
<sort_order>70</sort_order>
|
867 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
868 |
+
</source_model>
|
869 |
+
<show_in_default>1</show_in_default>
|
870 |
+
<show_in_website>1</show_in_website>
|
871 |
+
<show_in_store>1</show_in_store>
|
872 |
+
</allowspecific>
|
873 |
+
<specificcountry translate="label">
|
874 |
+
<label>Specific countries</label>
|
875 |
+
<frontend_type>multiselect</frontend_type>
|
876 |
+
<sort_order>80</sort_order>
|
877 |
+
<source_model>adminhtml/system_config_source_country
|
878 |
+
</source_model>
|
879 |
+
<show_in_default>1</show_in_default>
|
880 |
+
<show_in_website>1</show_in_website>
|
881 |
+
<show_in_store>1</show_in_store>
|
882 |
+
</specificcountry>
|
883 |
+
<min_order_total translate="label">
|
884 |
+
<label>Minimum order total</label>
|
885 |
+
<frontend_type>text</frontend_type>
|
886 |
+
<sort_order>90</sort_order>
|
887 |
+
<show_in_default>1</show_in_default>
|
888 |
+
<show_in_website>1</show_in_website>
|
889 |
+
<show_in_store>1</show_in_store>
|
890 |
+
</min_order_total>
|
891 |
+
<max_order_total translate="label">
|
892 |
+
<label>Maximum order total</label>
|
893 |
+
<frontend_type>text</frontend_type>
|
894 |
+
<sort_order>100</sort_order>
|
895 |
+
<show_in_default>1</show_in_default>
|
896 |
+
<show_in_website>1</show_in_website>
|
897 |
+
<show_in_store>0</show_in_store>
|
898 |
+
</max_order_total>
|
899 |
+
</fields>
|
900 |
+
</wirecard_checkoutpage_tatrapay>
|
901 |
+
<wirecard_checkoutpage_sofortbanking translate="label" module="wirecard_checkoutpage">
|
902 |
+
<label>Wirecard Checkout Page SOFORT Banking</label>
|
903 |
+
<frontend_type>text</frontend_type>
|
904 |
+
<sort_order>1080</sort_order>
|
905 |
+
<show_in_default>1</show_in_default>
|
906 |
+
<show_in_website>1</show_in_website>
|
907 |
+
<show_in_store>1</show_in_store>
|
908 |
+
<fields>
|
909 |
+
<active translate="label">
|
910 |
+
<label>Enabled</label>
|
911 |
+
<frontend_type>select</frontend_type>
|
912 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
913 |
+
<sort_order>20</sort_order>
|
914 |
+
<show_in_default>1</show_in_default>
|
915 |
+
<show_in_website>1</show_in_website>
|
916 |
+
<show_in_store>1</show_in_store>
|
917 |
+
</active>
|
918 |
+
<sort_order translate="label">
|
919 |
+
<label>Sorting order number</label>
|
920 |
+
<frontend_type>text</frontend_type>
|
921 |
+
<sort_order>30</sort_order>
|
922 |
+
<show_in_default>1</show_in_default>
|
923 |
+
<show_in_website>1</show_in_website>
|
924 |
+
<show_in_store>1</show_in_store>
|
925 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
926 |
+
</sort_order>
|
927 |
+
<title translate="label">
|
928 |
+
<label>Name for payment method</label>
|
929 |
+
<frontend_type>text</frontend_type>
|
930 |
+
<sort_order>40</sort_order>
|
931 |
+
<show_in_default>1</show_in_default>
|
932 |
+
<show_in_website>1</show_in_website>
|
933 |
+
<show_in_store>1</show_in_store>
|
934 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
935 |
+
</title>
|
936 |
+
<iframe>
|
937 |
+
<label>Display as iframe</label>
|
938 |
+
<frontend_type>select</frontend_type>
|
939 |
+
<sort_order>50</sort_order>
|
940 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
941 |
+
</source_model>
|
942 |
+
<show_in_default>1</show_in_default>
|
943 |
+
<show_in_website>1</show_in_website>
|
944 |
+
<show_in_store>1</show_in_store>
|
945 |
+
</iframe>
|
946 |
+
<allowspecific translate="label">
|
947 |
+
<label>Payment method available for</label>
|
948 |
+
<frontend_type>allowspecific</frontend_type>
|
949 |
+
<sort_order>70</sort_order>
|
950 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
951 |
+
</source_model>
|
952 |
+
<show_in_default>1</show_in_default>
|
953 |
+
<show_in_website>1</show_in_website>
|
954 |
+
<show_in_store>1</show_in_store>
|
955 |
+
</allowspecific>
|
956 |
+
<specificcountry translate="label">
|
957 |
+
<label>Specific countries</label>
|
958 |
+
<frontend_type>multiselect</frontend_type>
|
959 |
+
<sort_order>80</sort_order>
|
960 |
+
<source_model>adminhtml/system_config_source_country
|
961 |
+
</source_model>
|
962 |
+
<show_in_default>1</show_in_default>
|
963 |
+
<show_in_website>1</show_in_website>
|
964 |
+
<show_in_store>1</show_in_store>
|
965 |
+
</specificcountry>
|
966 |
+
<min_order_total translate="label">
|
967 |
+
<label>Minimum order total</label>
|
968 |
+
<frontend_type>text</frontend_type>
|
969 |
+
<sort_order>90</sort_order>
|
970 |
+
<show_in_default>1</show_in_default>
|
971 |
+
<show_in_website>1</show_in_website>
|
972 |
+
<show_in_store>1</show_in_store>
|
973 |
+
</min_order_total>
|
974 |
+
<max_order_total translate="label">
|
975 |
+
<label>Maximum order total</label>
|
976 |
+
<frontend_type>text</frontend_type>
|
977 |
+
<sort_order>100</sort_order>
|
978 |
+
<show_in_default>1</show_in_default>
|
979 |
+
<show_in_website>1</show_in_website>
|
980 |
+
<show_in_store>0</show_in_store>
|
981 |
+
</max_order_total>
|
982 |
+
</fields>
|
983 |
+
</wirecard_checkoutpage_sofortbanking>
|
984 |
+
<wirecard_checkoutpage_skrilldirect translate="label" module="wirecard_checkoutpage">
|
985 |
+
<label>Wirecard Checkout Page Skrill Direct</label>
|
986 |
+
<frontend_type>text</frontend_type>
|
987 |
+
<sort_order>1090</sort_order>
|
988 |
+
<show_in_default>1</show_in_default>
|
989 |
+
<show_in_website>1</show_in_website>
|
990 |
+
<show_in_store>1</show_in_store>
|
991 |
+
<fields>
|
992 |
+
<active translate="label">
|
993 |
+
<label>Enabled</label>
|
994 |
+
<frontend_type>select</frontend_type>
|
995 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
996 |
+
<sort_order>20</sort_order>
|
997 |
+
<show_in_default>1</show_in_default>
|
998 |
+
<show_in_website>1</show_in_website>
|
999 |
+
<show_in_store>1</show_in_store>
|
1000 |
+
</active>
|
1001 |
+
<sort_order translate="label">
|
1002 |
+
<label>Sorting order number</label>
|
1003 |
+
<frontend_type>text</frontend_type>
|
1004 |
+
<sort_order>30</sort_order>
|
1005 |
+
<show_in_default>1</show_in_default>
|
1006 |
+
<show_in_website>1</show_in_website>
|
1007 |
+
<show_in_store>1</show_in_store>
|
1008 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
1009 |
+
</sort_order>
|
1010 |
+
<title translate="label">
|
1011 |
+
<label>Name for payment method</label>
|
1012 |
+
<frontend_type>text</frontend_type>
|
1013 |
+
<sort_order>40</sort_order>
|
1014 |
+
<show_in_default>1</show_in_default>
|
1015 |
+
<show_in_website>1</show_in_website>
|
1016 |
+
<show_in_store>1</show_in_store>
|
1017 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
1018 |
+
</title>
|
1019 |
+
<iframe>
|
1020 |
+
<label>Display as iframe</label>
|
1021 |
+
<frontend_type>select</frontend_type>
|
1022 |
+
<sort_order>50</sort_order>
|
1023 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
1024 |
+
</source_model>
|
1025 |
+
<show_in_default>1</show_in_default>
|
1026 |
+
<show_in_website>1</show_in_website>
|
1027 |
+
<show_in_store>1</show_in_store>
|
1028 |
+
</iframe>
|
1029 |
+
<allowspecific translate="label">
|
1030 |
+
<label>Payment method available for</label>
|
1031 |
+
<frontend_type>allowspecific</frontend_type>
|
1032 |
+
<sort_order>70</sort_order>
|
1033 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
1034 |
+
</source_model>
|
1035 |
+
<show_in_default>1</show_in_default>
|
1036 |
+
<show_in_website>1</show_in_website>
|
1037 |
+
<show_in_store>1</show_in_store>
|
1038 |
+
</allowspecific>
|
1039 |
+
<specificcountry translate="label">
|
1040 |
+
<label>Specific countries</label>
|
1041 |
+
<frontend_type>multiselect</frontend_type>
|
1042 |
+
<sort_order>80</sort_order>
|
1043 |
+
<source_model>adminhtml/system_config_source_country
|
1044 |
+
</source_model>
|
1045 |
+
<show_in_default>1</show_in_default>
|
1046 |
+
<show_in_website>1</show_in_website>
|
1047 |
+
<show_in_store>1</show_in_store>
|
1048 |
+
</specificcountry>
|
1049 |
+
<min_order_total translate="label">
|
1050 |
+
<label>Minimum order total</label>
|
1051 |
+
<frontend_type>text</frontend_type>
|
1052 |
+
<sort_order>90</sort_order>
|
1053 |
+
<show_in_default>1</show_in_default>
|
1054 |
+
<show_in_website>1</show_in_website>
|
1055 |
+
<show_in_store>1</show_in_store>
|
1056 |
+
</min_order_total>
|
1057 |
+
<max_order_total translate="label">
|
1058 |
+
<label>Maximum order total</label>
|
1059 |
+
<frontend_type>text</frontend_type>
|
1060 |
+
<sort_order>100</sort_order>
|
1061 |
+
<show_in_default>1</show_in_default>
|
1062 |
+
<show_in_website>1</show_in_website>
|
1063 |
+
<show_in_store>0</show_in_store>
|
1064 |
+
</max_order_total>
|
1065 |
+
</fields>
|
1066 |
+
</wirecard_checkoutpage_skrilldirect>
|
1067 |
+
<wirecard_checkoutpage_skrillwallet translate="label" module="wirecard_checkoutpage">
|
1068 |
+
<label>Wirecard Checkout Page Skrill Digital Wallet</label>
|
1069 |
+
<frontend_type>text</frontend_type>
|
1070 |
+
<sort_order>1100</sort_order>
|
1071 |
+
<show_in_default>1</show_in_default>
|
1072 |
+
<show_in_website>1</show_in_website>
|
1073 |
+
<show_in_store>1</show_in_store>
|
1074 |
+
<fields>
|
1075 |
+
<active translate="label">
|
1076 |
+
<label>Enabled</label>
|
1077 |
+
<frontend_type>select</frontend_type>
|
1078 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1079 |
+
<sort_order>20</sort_order>
|
1080 |
+
<show_in_default>1</show_in_default>
|
1081 |
+
<show_in_website>1</show_in_website>
|
1082 |
+
<show_in_store>1</show_in_store>
|
1083 |
+
</active>
|
1084 |
+
<sort_order translate="label">
|
1085 |
+
<label>Sorting order number</label>
|
1086 |
+
<frontend_type>text</frontend_type>
|
1087 |
+
<sort_order>30</sort_order>
|
1088 |
+
<show_in_default>1</show_in_default>
|
1089 |
+
<show_in_website>1</show_in_website>
|
1090 |
+
<show_in_store>1</show_in_store>
|
1091 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
1092 |
+
</sort_order>
|
1093 |
+
<title translate="label">
|
1094 |
+
<label>Name for payment method</label>
|
1095 |
+
<frontend_type>text</frontend_type>
|
1096 |
+
<sort_order>40</sort_order>
|
1097 |
+
<show_in_default>1</show_in_default>
|
1098 |
+
<show_in_website>1</show_in_website>
|
1099 |
+
<show_in_store>1</show_in_store>
|
1100 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
1101 |
+
</title>
|
1102 |
+
<iframe>
|
1103 |
+
<label>Display as iframe</label>
|
1104 |
+
<frontend_type>select</frontend_type>
|
1105 |
+
<sort_order>50</sort_order>
|
1106 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
1107 |
+
</source_model>
|
1108 |
+
<show_in_default>1</show_in_default>
|
1109 |
+
<show_in_website>1</show_in_website>
|
1110 |
+
<show_in_store>1</show_in_store>
|
1111 |
+
</iframe>
|
1112 |
+
<allowspecific translate="label">
|
1113 |
+
<label>Payment method available for</label>
|
1114 |
+
<frontend_type>allowspecific</frontend_type>
|
1115 |
+
<sort_order>70</sort_order>
|
1116 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
1117 |
+
</source_model>
|
1118 |
+
<show_in_default>1</show_in_default>
|
1119 |
+
<show_in_website>1</show_in_website>
|
1120 |
+
<show_in_store>1</show_in_store>
|
1121 |
+
</allowspecific>
|
1122 |
+
<specificcountry translate="label">
|
1123 |
+
<label>Specific countries</label>
|
1124 |
+
<frontend_type>multiselect</frontend_type>
|
1125 |
+
<sort_order>80</sort_order>
|
1126 |
+
<source_model>adminhtml/system_config_source_country
|
1127 |
+
</source_model>
|
1128 |
+
<show_in_default>1</show_in_default>
|
1129 |
+
<show_in_website>1</show_in_website>
|
1130 |
+
<show_in_store>1</show_in_store>
|
1131 |
+
</specificcountry>
|
1132 |
+
<min_order_total translate="label">
|
1133 |
+
<label>Minimum order total</label>
|
1134 |
+
<frontend_type>text</frontend_type>
|
1135 |
+
<sort_order>90</sort_order>
|
1136 |
+
<show_in_default>1</show_in_default>
|
1137 |
+
<show_in_website>1</show_in_website>
|
1138 |
+
<show_in_store>1</show_in_store>
|
1139 |
+
</min_order_total>
|
1140 |
+
<max_order_total translate="label">
|
1141 |
+
<label>Maximum order total</label>
|
1142 |
+
<frontend_type>text</frontend_type>
|
1143 |
+
<sort_order>100</sort_order>
|
1144 |
+
<show_in_default>1</show_in_default>
|
1145 |
+
<show_in_website>1</show_in_website>
|
1146 |
+
<show_in_store>0</show_in_store>
|
1147 |
+
</max_order_total>
|
1148 |
+
</fields>
|
1149 |
+
</wirecard_checkoutpage_skrillwallet>
|
1150 |
+
<wirecard_checkoutpage_mpass translate="label" module="wirecard_checkoutpage">
|
1151 |
+
<label>Wirecard Checkout Page mpass</label>
|
1152 |
+
<frontend_type>text</frontend_type>
|
1153 |
+
<sort_order>1110</sort_order>
|
1154 |
+
<show_in_default>1</show_in_default>
|
1155 |
+
<show_in_website>1</show_in_website>
|
1156 |
+
<show_in_store>1</show_in_store>
|
1157 |
+
<fields>
|
1158 |
+
<active translate="label">
|
1159 |
+
<label>Enabled</label>
|
1160 |
+
<frontend_type>select</frontend_type>
|
1161 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1162 |
+
<sort_order>20</sort_order>
|
1163 |
+
<show_in_default>1</show_in_default>
|
1164 |
+
<show_in_website>1</show_in_website>
|
1165 |
+
<show_in_store>1</show_in_store>
|
1166 |
+
</active>
|
1167 |
+
<sort_order translate="label">
|
1168 |
+
<label>Sorting order number</label>
|
1169 |
+
<frontend_type>text</frontend_type>
|
1170 |
+
<sort_order>30</sort_order>
|
1171 |
+
<show_in_default>1</show_in_default>
|
1172 |
+
<show_in_website>1</show_in_website>
|
1173 |
+
<show_in_store>1</show_in_store>
|
1174 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
1175 |
+
</sort_order>
|
1176 |
+
<title translate="label">
|
1177 |
+
<label>Name for payment method</label>
|
1178 |
+
<frontend_type>text</frontend_type>
|
1179 |
+
<sort_order>40</sort_order>
|
1180 |
+
<show_in_default>1</show_in_default>
|
1181 |
+
<show_in_website>1</show_in_website>
|
1182 |
+
<show_in_store>1</show_in_store>
|
1183 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
1184 |
+
</title>
|
1185 |
+
<iframe>
|
1186 |
+
<label>Display as iframe</label>
|
1187 |
+
<frontend_type>select</frontend_type>
|
1188 |
+
<sort_order>50</sort_order>
|
1189 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
1190 |
+
</source_model>
|
1191 |
+
<show_in_default>1</show_in_default>
|
1192 |
+
<show_in_website>1</show_in_website>
|
1193 |
+
<show_in_store>1</show_in_store>
|
1194 |
+
</iframe>
|
1195 |
+
<allowspecific translate="label">
|
1196 |
+
<label>Payment method available for</label>
|
1197 |
+
<frontend_type>allowspecific</frontend_type>
|
1198 |
+
<sort_order>70</sort_order>
|
1199 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
1200 |
+
</source_model>
|
1201 |
+
<show_in_default>1</show_in_default>
|
1202 |
+
<show_in_website>1</show_in_website>
|
1203 |
+
<show_in_store>1</show_in_store>
|
1204 |
+
</allowspecific>
|
1205 |
+
<specificcountry translate="label">
|
1206 |
+
<label>Specific countries</label>
|
1207 |
+
<frontend_type>multiselect</frontend_type>
|
1208 |
+
<sort_order>80</sort_order>
|
1209 |
+
<source_model>adminhtml/system_config_source_country
|
1210 |
+
</source_model>
|
1211 |
+
<show_in_default>1</show_in_default>
|
1212 |
+
<show_in_website>1</show_in_website>
|
1213 |
+
<show_in_store>1</show_in_store>
|
1214 |
+
</specificcountry>
|
1215 |
+
<min_order_total translate="label">
|
1216 |
+
<label>Minimum order total</label>
|
1217 |
+
<frontend_type>text</frontend_type>
|
1218 |
+
<sort_order>90</sort_order>
|
1219 |
+
<show_in_default>1</show_in_default>
|
1220 |
+
<show_in_website>1</show_in_website>
|
1221 |
+
<show_in_store>1</show_in_store>
|
1222 |
+
</min_order_total>
|
1223 |
+
<max_order_total translate="label">
|
1224 |
+
<label>Maximum order total</label>
|
1225 |
+
<frontend_type>text</frontend_type>
|
1226 |
+
<sort_order>100</sort_order>
|
1227 |
+
<show_in_default>1</show_in_default>
|
1228 |
+
<show_in_website>1</show_in_website>
|
1229 |
+
<show_in_store>0</show_in_store>
|
1230 |
+
</max_order_total>
|
1231 |
+
</fields>
|
1232 |
+
</wirecard_checkoutpage_mpass>
|
1233 |
+
<wirecard_checkoutpage_bmc translate="label" module="wirecard_checkoutpage">
|
1234 |
+
<label>Wirecard Checkout Page Bancontact/Mister Cash</label>
|
1235 |
+
<frontend_type>text</frontend_type>
|
1236 |
+
<sort_order>1120</sort_order>
|
1237 |
+
<show_in_default>1</show_in_default>
|
1238 |
+
<show_in_website>1</show_in_website>
|
1239 |
+
<show_in_store>1</show_in_store>
|
1240 |
+
<fields>
|
1241 |
+
<active translate="label">
|
1242 |
+
<label>Enabled</label>
|
1243 |
+
<frontend_type>select</frontend_type>
|
1244 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1245 |
+
<sort_order>20</sort_order>
|
1246 |
+
<show_in_default>1</show_in_default>
|
1247 |
+
<show_in_website>1</show_in_website>
|
1248 |
+
<show_in_store>1</show_in_store>
|
1249 |
+
</active>
|
1250 |
+
<sort_order translate="label">
|
1251 |
+
<label>Sorting order number</label>
|
1252 |
+
<frontend_type>text</frontend_type>
|
1253 |
+
<sort_order>30</sort_order>
|
1254 |
+
<show_in_default>1</show_in_default>
|
1255 |
+
<show_in_website>1</show_in_website>
|
1256 |
+
<show_in_store>1</show_in_store>
|
1257 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
1258 |
+
</sort_order>
|
1259 |
+
<title translate="label">
|
1260 |
+
<label>Name for payment method</label>
|
1261 |
+
<frontend_type>text</frontend_type>
|
1262 |
+
<sort_order>40</sort_order>
|
1263 |
+
<show_in_default>1</show_in_default>
|
1264 |
+
<show_in_website>1</show_in_website>
|
1265 |
+
<show_in_store>1</show_in_store>
|
1266 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
1267 |
+
</title>
|
1268 |
+
<iframe>
|
1269 |
+
<label>Display as iframe</label>
|
1270 |
+
<frontend_type>select</frontend_type>
|
1271 |
+
<sort_order>50</sort_order>
|
1272 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
1273 |
+
</source_model>
|
1274 |
+
<show_in_default>1</show_in_default>
|
1275 |
+
<show_in_website>1</show_in_website>
|
1276 |
+
<show_in_store>1</show_in_store>
|
1277 |
+
</iframe>
|
1278 |
+
<allowspecific translate="label">
|
1279 |
+
<label>Payment method available for</label>
|
1280 |
+
<frontend_type>allowspecific</frontend_type>
|
1281 |
+
<sort_order>70</sort_order>
|
1282 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
1283 |
+
</source_model>
|
1284 |
+
<show_in_default>1</show_in_default>
|
1285 |
+
<show_in_website>1</show_in_website>
|
1286 |
+
<show_in_store>1</show_in_store>
|
1287 |
+
</allowspecific>
|
1288 |
+
<specificcountry translate="label">
|
1289 |
+
<label>Specific countries</label>
|
1290 |
+
<frontend_type>multiselect</frontend_type>
|
1291 |
+
<sort_order>80</sort_order>
|
1292 |
+
<source_model>adminhtml/system_config_source_country
|
1293 |
+
</source_model>
|
1294 |
+
<show_in_default>1</show_in_default>
|
1295 |
+
<show_in_website>1</show_in_website>
|
1296 |
+
<show_in_store>1</show_in_store>
|
1297 |
+
</specificcountry>
|
1298 |
+
<min_order_total translate="label">
|
1299 |
+
<label>Minimum order total</label>
|
1300 |
+
<frontend_type>text</frontend_type>
|
1301 |
+
<sort_order>90</sort_order>
|
1302 |
+
<show_in_default>1</show_in_default>
|
1303 |
+
<show_in_website>1</show_in_website>
|
1304 |
+
<show_in_store>1</show_in_store>
|
1305 |
+
</min_order_total>
|
1306 |
+
<max_order_total translate="label">
|
1307 |
+
<label>Maximum order total</label>
|
1308 |
+
<frontend_type>text</frontend_type>
|
1309 |
+
<sort_order>100</sort_order>
|
1310 |
+
<show_in_default>1</show_in_default>
|
1311 |
+
<show_in_website>1</show_in_website>
|
1312 |
+
<show_in_store>0</show_in_store>
|
1313 |
+
</max_order_total>
|
1314 |
+
</fields>
|
1315 |
+
</wirecard_checkoutpage_bmc>
|
1316 |
+
<wirecard_checkoutpage_p24 translate="label" module="wirecard_checkoutpage">
|
1317 |
+
<label>Wirecard Checkout Page Przelewy24</label>
|
1318 |
+
<frontend_type>text</frontend_type>
|
1319 |
+
<sort_order>1130</sort_order>
|
1320 |
+
<show_in_default>1</show_in_default>
|
1321 |
+
<show_in_website>1</show_in_website>
|
1322 |
+
<show_in_store>1</show_in_store>
|
1323 |
+
<fields>
|
1324 |
+
<active translate="label">
|
1325 |
+
<label>Enabled</label>
|
1326 |
+
<frontend_type>select</frontend_type>
|
1327 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1328 |
+
<sort_order>20</sort_order>
|
1329 |
+
<show_in_default>1</show_in_default>
|
1330 |
+
<show_in_website>1</show_in_website>
|
1331 |
+
<show_in_store>1</show_in_store>
|
1332 |
+
</active>
|
1333 |
+
<sort_order translate="label">
|
1334 |
+
<label>Sorting order number</label>
|
1335 |
+
<frontend_type>text</frontend_type>
|
1336 |
+
<sort_order>30</sort_order>
|
1337 |
+
<show_in_default>1</show_in_default>
|
1338 |
+
<show_in_website>1</show_in_website>
|
1339 |
+
<show_in_store>1</show_in_store>
|
1340 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
1341 |
+
</sort_order>
|
1342 |
+
<title translate="label">
|
1343 |
+
<label>Name for payment method</label>
|
1344 |
+
<frontend_type>text</frontend_type>
|
1345 |
+
<sort_order>40</sort_order>
|
1346 |
+
<show_in_default>1</show_in_default>
|
1347 |
+
<show_in_website>1</show_in_website>
|
1348 |
+
<show_in_store>1</show_in_store>
|
1349 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
1350 |
+
</title>
|
1351 |
+
<iframe>
|
1352 |
+
<label>Display as iframe</label>
|
1353 |
+
<frontend_type>select</frontend_type>
|
1354 |
+
<sort_order>50</sort_order>
|
1355 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
1356 |
+
</source_model>
|
1357 |
+
<show_in_default>1</show_in_default>
|
1358 |
+
<show_in_website>1</show_in_website>
|
1359 |
+
<show_in_store>1</show_in_store>
|
1360 |
+
</iframe>
|
1361 |
+
<allowspecific translate="label">
|
1362 |
+
<label>Payment method available for</label>
|
1363 |
+
<frontend_type>allowspecific</frontend_type>
|
1364 |
+
<sort_order>70</sort_order>
|
1365 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
1366 |
+
</source_model>
|
1367 |
+
<show_in_default>1</show_in_default>
|
1368 |
+
<show_in_website>1</show_in_website>
|
1369 |
+
<show_in_store>1</show_in_store>
|
1370 |
+
</allowspecific>
|
1371 |
+
<specificcountry translate="label">
|
1372 |
+
<label>Specific countries</label>
|
1373 |
+
<frontend_type>multiselect</frontend_type>
|
1374 |
+
<sort_order>80</sort_order>
|
1375 |
+
<source_model>adminhtml/system_config_source_country
|
1376 |
+
</source_model>
|
1377 |
+
<show_in_default>1</show_in_default>
|
1378 |
+
<show_in_website>1</show_in_website>
|
1379 |
+
<show_in_store>1</show_in_store>
|
1380 |
+
</specificcountry>
|
1381 |
+
<min_order_total translate="label">
|
1382 |
+
<label>Minimum order total</label>
|
1383 |
+
<frontend_type>text</frontend_type>
|
1384 |
+
<sort_order>90</sort_order>
|
1385 |
+
<show_in_default>1</show_in_default>
|
1386 |
+
<show_in_website>1</show_in_website>
|
1387 |
+
<show_in_store>1</show_in_store>
|
1388 |
+
</min_order_total>
|
1389 |
+
<max_order_total translate="label">
|
1390 |
+
<label>Maximum order total</label>
|
1391 |
+
<frontend_type>text</frontend_type>
|
1392 |
+
<sort_order>100</sort_order>
|
1393 |
+
<show_in_default>1</show_in_default>
|
1394 |
+
<show_in_website>1</show_in_website>
|
1395 |
+
<show_in_store>0</show_in_store>
|
1396 |
+
</max_order_total>
|
1397 |
+
</fields>
|
1398 |
+
</wirecard_checkoutpage_p24>
|
1399 |
+
<wirecard_checkoutpage_poli translate="label" module="wirecard_checkoutpage">
|
1400 |
+
<label>Wirecard Checkout Page POLi</label>
|
1401 |
+
<frontend_type>text</frontend_type>
|
1402 |
+
<sort_order>1140</sort_order>
|
1403 |
+
<show_in_default>1</show_in_default>
|
1404 |
+
<show_in_website>1</show_in_website>
|
1405 |
+
<show_in_store>1</show_in_store>
|
1406 |
+
<fields>
|
1407 |
+
<active translate="label">
|
1408 |
+
<label>Enabled</label>
|
1409 |
+
<frontend_type>select</frontend_type>
|
1410 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1411 |
+
<sort_order>20</sort_order>
|
1412 |
+
<show_in_default>1</show_in_default>
|
1413 |
+
<show_in_website>1</show_in_website>
|
1414 |
+
<show_in_store>1</show_in_store>
|
1415 |
+
</active>
|
1416 |
+
<sort_order translate="label">
|
1417 |
+
<label>Sorting order number</label>
|
1418 |
+
<frontend_type>text</frontend_type>
|
1419 |
+
<sort_order>30</sort_order>
|
1420 |
+
<show_in_default>1</show_in_default>
|
1421 |
+
<show_in_website>1</show_in_website>
|
1422 |
+
<show_in_store>1</show_in_store>
|
1423 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
1424 |
+
</sort_order>
|
1425 |
+
<title translate="label">
|
1426 |
+
<label>Name for payment method</label>
|
1427 |
+
<frontend_type>text</frontend_type>
|
1428 |
+
<sort_order>40</sort_order>
|
1429 |
+
<show_in_default>1</show_in_default>
|
1430 |
+
<show_in_website>1</show_in_website>
|
1431 |
+
<show_in_store>1</show_in_store>
|
1432 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
1433 |
+
</title>
|
1434 |
+
<iframe>
|
1435 |
+
<label>Display as iframe</label>
|
1436 |
+
<frontend_type>select</frontend_type>
|
1437 |
+
<sort_order>50</sort_order>
|
1438 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
1439 |
+
</source_model>
|
1440 |
+
<show_in_default>1</show_in_default>
|
1441 |
+
<show_in_website>1</show_in_website>
|
1442 |
+
<show_in_store>1</show_in_store>
|
1443 |
+
</iframe>
|
1444 |
+
<allowspecific translate="label">
|
1445 |
+
<label>Payment method available for</label>
|
1446 |
+
<frontend_type>allowspecific</frontend_type>
|
1447 |
+
<sort_order>70</sort_order>
|
1448 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
1449 |
+
</source_model>
|
1450 |
+
<show_in_default>1</show_in_default>
|
1451 |
+
<show_in_website>1</show_in_website>
|
1452 |
+
<show_in_store>1</show_in_store>
|
1453 |
+
</allowspecific>
|
1454 |
+
<specificcountry translate="label">
|
1455 |
+
<label>Specific countries</label>
|
1456 |
+
<frontend_type>multiselect</frontend_type>
|
1457 |
+
<sort_order>80</sort_order>
|
1458 |
+
<source_model>adminhtml/system_config_source_country
|
1459 |
+
</source_model>
|
1460 |
+
<show_in_default>1</show_in_default>
|
1461 |
+
<show_in_website>1</show_in_website>
|
1462 |
+
<show_in_store>1</show_in_store>
|
1463 |
+
</specificcountry>
|
1464 |
+
<min_order_total translate="label">
|
1465 |
+
<label>Minimum order total</label>
|
1466 |
+
<frontend_type>text</frontend_type>
|
1467 |
+
<sort_order>90</sort_order>
|
1468 |
+
<show_in_default>1</show_in_default>
|
1469 |
+
<show_in_website>1</show_in_website>
|
1470 |
+
<show_in_store>1</show_in_store>
|
1471 |
+
</min_order_total>
|
1472 |
+
<max_order_total translate="label">
|
1473 |
+
<label>Maximum order total</label>
|
1474 |
+
<frontend_type>text</frontend_type>
|
1475 |
+
<sort_order>100</sort_order>
|
1476 |
+
<show_in_default>1</show_in_default>
|
1477 |
+
<show_in_website>1</show_in_website>
|
1478 |
+
<show_in_store>0</show_in_store>
|
1479 |
+
</max_order_total>
|
1480 |
+
</fields>
|
1481 |
+
</wirecard_checkoutpage_poli>
|
1482 |
+
<wirecard_checkoutpage_moneta translate="label" module="wirecard_checkoutpage">
|
1483 |
+
<label>Wirecard Checkout Page moneta.ru</label>
|
1484 |
+
<frontend_type>text</frontend_type>
|
1485 |
+
<sort_order>1150</sort_order>
|
1486 |
+
<show_in_default>1</show_in_default>
|
1487 |
+
<show_in_website>1</show_in_website>
|
1488 |
+
<show_in_store>1</show_in_store>
|
1489 |
+
<fields>
|
1490 |
+
<active translate="label">
|
1491 |
+
<label>Enabled</label>
|
1492 |
+
<frontend_type>select</frontend_type>
|
1493 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1494 |
+
<sort_order>20</sort_order>
|
1495 |
+
<show_in_default>1</show_in_default>
|
1496 |
+
<show_in_website>1</show_in_website>
|
1497 |
+
<show_in_store>1</show_in_store>
|
1498 |
+
</active>
|
1499 |
+
<sort_order translate="label">
|
1500 |
+
<label>Sorting order number</label>
|
1501 |
+
<frontend_type>text</frontend_type>
|
1502 |
+
<sort_order>30</sort_order>
|
1503 |
+
<show_in_default>1</show_in_default>
|
1504 |
+
<show_in_website>1</show_in_website>
|
1505 |
+
<show_in_store>1</show_in_store>
|
1506 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
1507 |
+
</sort_order>
|
1508 |
+
<title translate="label">
|
1509 |
+
<label>Name for payment method</label>
|
1510 |
+
<frontend_type>text</frontend_type>
|
1511 |
+
<sort_order>40</sort_order>
|
1512 |
+
<show_in_default>1</show_in_default>
|
1513 |
+
<show_in_website>1</show_in_website>
|
1514 |
+
<show_in_store>1</show_in_store>
|
1515 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
1516 |
+
</title>
|
1517 |
+
<iframe>
|
1518 |
+
<label>Display as iframe</label>
|
1519 |
+
<frontend_type>select</frontend_type>
|
1520 |
+
<sort_order>50</sort_order>
|
1521 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
1522 |
+
</source_model>
|
1523 |
+
<show_in_default>1</show_in_default>
|
1524 |
+
<show_in_website>1</show_in_website>
|
1525 |
+
<show_in_store>1</show_in_store>
|
1526 |
+
</iframe>
|
1527 |
+
<allowspecific translate="label">
|
1528 |
+
<label>Payment method available for</label>
|
1529 |
+
<frontend_type>allowspecific</frontend_type>
|
1530 |
+
<sort_order>70</sort_order>
|
1531 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
1532 |
+
</source_model>
|
1533 |
+
<show_in_default>1</show_in_default>
|
1534 |
+
<show_in_website>1</show_in_website>
|
1535 |
+
<show_in_store>1</show_in_store>
|
1536 |
+
</allowspecific>
|
1537 |
+
<specificcountry translate="label">
|
1538 |
+
<label>Specific countries</label>
|
1539 |
+
<frontend_type>multiselect</frontend_type>
|
1540 |
+
<sort_order>80</sort_order>
|
1541 |
+
<source_model>adminhtml/system_config_source_country
|
1542 |
+
</source_model>
|
1543 |
+
<show_in_default>1</show_in_default>
|
1544 |
+
<show_in_website>1</show_in_website>
|
1545 |
+
<show_in_store>1</show_in_store>
|
1546 |
+
</specificcountry>
|
1547 |
+
<min_order_total translate="label">
|
1548 |
+
<label>Minimum order total</label>
|
1549 |
+
<frontend_type>text</frontend_type>
|
1550 |
+
<sort_order>90</sort_order>
|
1551 |
+
<show_in_default>1</show_in_default>
|
1552 |
+
<show_in_website>1</show_in_website>
|
1553 |
+
<show_in_store>1</show_in_store>
|
1554 |
+
</min_order_total>
|
1555 |
+
<max_order_total translate="label">
|
1556 |
+
<label>Maximum order total</label>
|
1557 |
+
<frontend_type>text</frontend_type>
|
1558 |
+
<sort_order>100</sort_order>
|
1559 |
+
<show_in_default>1</show_in_default>
|
1560 |
+
<show_in_website>1</show_in_website>
|
1561 |
+
<show_in_store>0</show_in_store>
|
1562 |
+
</max_order_total>
|
1563 |
+
</fields>
|
1564 |
+
</wirecard_checkoutpage_moneta>
|
1565 |
+
<wirecard_checkoutpage_ekonto translate="label" module="wirecard_checkoutpage">
|
1566 |
+
<label>Wirecard Checkout Page eKonto</label>
|
1567 |
+
<frontend_type>text</frontend_type>
|
1568 |
+
<sort_order>1160</sort_order>
|
1569 |
+
<show_in_default>1</show_in_default>
|
1570 |
+
<show_in_website>1</show_in_website>
|
1571 |
+
<show_in_store>1</show_in_store>
|
1572 |
+
<fields>
|
1573 |
+
<active translate="label">
|
1574 |
+
<label>Enabled</label>
|
1575 |
+
<frontend_type>select</frontend_type>
|
1576 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1577 |
+
<sort_order>20</sort_order>
|
1578 |
+
<show_in_default>1</show_in_default>
|
1579 |
+
<show_in_website>1</show_in_website>
|
1580 |
+
<show_in_store>1</show_in_store>
|
1581 |
+
</active>
|
1582 |
+
<sort_order translate="label">
|
1583 |
+
<label>Sorting order number</label>
|
1584 |
+
<frontend_type>text</frontend_type>
|
1585 |
+
<sort_order>30</sort_order>
|
1586 |
+
<show_in_default>1</show_in_default>
|
1587 |
+
<show_in_website>1</show_in_website>
|
1588 |
+
<show_in_store>1</show_in_store>
|
1589 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
1590 |
+
</sort_order>
|
1591 |
+
<title translate="label">
|
1592 |
+
<label>Name for payment method</label>
|
1593 |
+
<frontend_type>text</frontend_type>
|
1594 |
+
<sort_order>40</sort_order>
|
1595 |
+
<show_in_default>1</show_in_default>
|
1596 |
+
<show_in_website>1</show_in_website>
|
1597 |
+
<show_in_store>1</show_in_store>
|
1598 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
1599 |
+
</title>
|
1600 |
+
<iframe>
|
1601 |
+
<label>Display as iframe</label>
|
1602 |
+
<frontend_type>select</frontend_type>
|
1603 |
+
<sort_order>50</sort_order>
|
1604 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
1605 |
+
</source_model>
|
1606 |
+
<show_in_default>1</show_in_default>
|
1607 |
+
<show_in_website>1</show_in_website>
|
1608 |
+
<show_in_store>1</show_in_store>
|
1609 |
+
</iframe>
|
1610 |
+
<allowspecific translate="label">
|
1611 |
+
<label>Payment method available for</label>
|
1612 |
+
<frontend_type>allowspecific</frontend_type>
|
1613 |
+
<sort_order>70</sort_order>
|
1614 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
1615 |
+
</source_model>
|
1616 |
+
<show_in_default>1</show_in_default>
|
1617 |
+
<show_in_website>1</show_in_website>
|
1618 |
+
<show_in_store>1</show_in_store>
|
1619 |
+
</allowspecific>
|
1620 |
+
<specificcountry translate="label">
|
1621 |
+
<label>Specific countries</label>
|
1622 |
+
<frontend_type>multiselect</frontend_type>
|
1623 |
+
<sort_order>80</sort_order>
|
1624 |
+
<source_model>adminhtml/system_config_source_country
|
1625 |
+
</source_model>
|
1626 |
+
<show_in_default>1</show_in_default>
|
1627 |
+
<show_in_website>1</show_in_website>
|
1628 |
+
<show_in_store>1</show_in_store>
|
1629 |
+
</specificcountry>
|
1630 |
+
<min_order_total translate="label">
|
1631 |
+
<label>Minimum order total</label>
|
1632 |
+
<frontend_type>text</frontend_type>
|
1633 |
+
<sort_order>90</sort_order>
|
1634 |
+
<show_in_default>1</show_in_default>
|
1635 |
+
<show_in_website>1</show_in_website>
|
1636 |
+
<show_in_store>1</show_in_store>
|
1637 |
+
</min_order_total>
|
1638 |
+
<max_order_total translate="label">
|
1639 |
+
<label>Maximum order total</label>
|
1640 |
+
<frontend_type>text</frontend_type>
|
1641 |
+
<sort_order>100</sort_order>
|
1642 |
+
<show_in_default>1</show_in_default>
|
1643 |
+
<show_in_website>1</show_in_website>
|
1644 |
+
<show_in_store>0</show_in_store>
|
1645 |
+
</max_order_total>
|
1646 |
+
</fields>
|
1647 |
+
</wirecard_checkoutpage_ekonto>
|
1648 |
+
<wirecard_checkoutpage_trustly translate="label" module="wirecard_checkoutpage">
|
1649 |
+
<label>Wirecard Checkout Page Trustly</label>
|
1650 |
+
<frontend_type>text</frontend_type>
|
1651 |
+
<sort_order>1170</sort_order>
|
1652 |
+
<show_in_default>1</show_in_default>
|
1653 |
+
<show_in_website>1</show_in_website>
|
1654 |
+
<show_in_store>1</show_in_store>
|
1655 |
+
<fields>
|
1656 |
+
<active translate="label">
|
1657 |
+
<label>Enabled</label>
|
1658 |
+
<frontend_type>select</frontend_type>
|
1659 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1660 |
+
<sort_order>20</sort_order>
|
1661 |
+
<show_in_default>1</show_in_default>
|
1662 |
+
<show_in_website>1</show_in_website>
|
1663 |
+
<show_in_store>1</show_in_store>
|
1664 |
+
</active>
|
1665 |
+
<sort_order translate="label">
|
1666 |
+
<label>Sorting order number</label>
|
1667 |
+
<frontend_type>text</frontend_type>
|
1668 |
+
<sort_order>30</sort_order>
|
1669 |
+
<show_in_default>1</show_in_default>
|
1670 |
+
<show_in_website>1</show_in_website>
|
1671 |
+
<show_in_store>1</show_in_store>
|
1672 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
1673 |
+
</sort_order>
|
1674 |
+
<title translate="label">
|
1675 |
+
<label>Name for payment method</label>
|
1676 |
+
<frontend_type>text</frontend_type>
|
1677 |
+
<sort_order>40</sort_order>
|
1678 |
+
<show_in_default>1</show_in_default>
|
1679 |
+
<show_in_website>1</show_in_website>
|
1680 |
+
<show_in_store>1</show_in_store>
|
1681 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
1682 |
+
</title>
|
1683 |
+
<iframe>
|
1684 |
+
<label>Display as iframe</label>
|
1685 |
+
<frontend_type>select</frontend_type>
|
1686 |
+
<sort_order>50</sort_order>
|
1687 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
1688 |
+
</source_model>
|
1689 |
+
<show_in_default>1</show_in_default>
|
1690 |
+
<show_in_website>1</show_in_website>
|
1691 |
+
<show_in_store>1</show_in_store>
|
1692 |
+
</iframe>
|
1693 |
+
<allowspecific translate="label">
|
1694 |
+
<label>Payment method available for</label>
|
1695 |
+
<frontend_type>allowspecific</frontend_type>
|
1696 |
+
<sort_order>70</sort_order>
|
1697 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
1698 |
+
</source_model>
|
1699 |
+
<show_in_default>1</show_in_default>
|
1700 |
+
<show_in_website>1</show_in_website>
|
1701 |
+
<show_in_store>1</show_in_store>
|
1702 |
+
</allowspecific>
|
1703 |
+
<specificcountry translate="label">
|
1704 |
+
<label>Specific countries</label>
|
1705 |
+
<frontend_type>multiselect</frontend_type>
|
1706 |
+
<sort_order>80</sort_order>
|
1707 |
+
<source_model>adminhtml/system_config_source_country
|
1708 |
+
</source_model>
|
1709 |
+
<show_in_default>1</show_in_default>
|
1710 |
+
<show_in_website>1</show_in_website>
|
1711 |
+
<show_in_store>1</show_in_store>
|
1712 |
+
</specificcountry>
|
1713 |
+
<min_order_total translate="label">
|
1714 |
+
<label>Minimum order total</label>
|
1715 |
+
<frontend_type>text</frontend_type>
|
1716 |
+
<sort_order>90</sort_order>
|
1717 |
+
<show_in_default>1</show_in_default>
|
1718 |
+
<show_in_website>1</show_in_website>
|
1719 |
+
<show_in_store>1</show_in_store>
|
1720 |
+
</min_order_total>
|
1721 |
+
<max_order_total translate="label">
|
1722 |
+
<label>Maximum order total</label>
|
1723 |
+
<frontend_type>text</frontend_type>
|
1724 |
+
<sort_order>100</sort_order>
|
1725 |
+
<show_in_default>1</show_in_default>
|
1726 |
+
<show_in_website>1</show_in_website>
|
1727 |
+
<show_in_store>0</show_in_store>
|
1728 |
+
</max_order_total>
|
1729 |
+
</fields>
|
1730 |
+
</wirecard_checkoutpage_trustly>
|
1731 |
+
<wirecard_checkoutpage_paybox translate="label" module="wirecard_checkoutpage">
|
1732 |
+
<label>Wirecard Checkout Page paybox</label>
|
1733 |
+
<frontend_type>text</frontend_type>
|
1734 |
+
<sort_order>1180</sort_order>
|
1735 |
+
<show_in_default>1</show_in_default>
|
1736 |
+
<show_in_website>1</show_in_website>
|
1737 |
+
<show_in_store>1</show_in_store>
|
1738 |
+
<fields>
|
1739 |
+
<active translate="label">
|
1740 |
+
<label>Enabled</label>
|
1741 |
+
<frontend_type>select</frontend_type>
|
1742 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1743 |
+
<sort_order>20</sort_order>
|
1744 |
+
<show_in_default>1</show_in_default>
|
1745 |
+
<show_in_website>1</show_in_website>
|
1746 |
+
<show_in_store>1</show_in_store>
|
1747 |
+
</active>
|
1748 |
+
<sort_order translate="label">
|
1749 |
+
<label>Sorting order number</label>
|
1750 |
+
<frontend_type>text</frontend_type>
|
1751 |
+
<sort_order>30</sort_order>
|
1752 |
+
<show_in_default>1</show_in_default>
|
1753 |
+
<show_in_website>1</show_in_website>
|
1754 |
+
<show_in_store>1</show_in_store>
|
1755 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
1756 |
+
</sort_order>
|
1757 |
+
<title translate="label">
|
1758 |
+
<label>Name for payment method</label>
|
1759 |
+
<frontend_type>text</frontend_type>
|
1760 |
+
<sort_order>40</sort_order>
|
1761 |
+
<show_in_default>1</show_in_default>
|
1762 |
+
<show_in_website>1</show_in_website>
|
1763 |
+
<show_in_store>1</show_in_store>
|
1764 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
1765 |
+
</title>
|
1766 |
+
<iframe>
|
1767 |
+
<label>Display as iframe</label>
|
1768 |
+
<frontend_type>select</frontend_type>
|
1769 |
+
<sort_order>50</sort_order>
|
1770 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
1771 |
+
</source_model>
|
1772 |
+
<show_in_default>1</show_in_default>
|
1773 |
+
<show_in_website>1</show_in_website>
|
1774 |
+
<show_in_store>1</show_in_store>
|
1775 |
+
</iframe>
|
1776 |
+
<allowspecific translate="label">
|
1777 |
+
<label>Payment method available for</label>
|
1778 |
+
<frontend_type>allowspecific</frontend_type>
|
1779 |
+
<sort_order>70</sort_order>
|
1780 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
1781 |
+
</source_model>
|
1782 |
+
<show_in_default>1</show_in_default>
|
1783 |
+
<show_in_website>1</show_in_website>
|
1784 |
+
<show_in_store>1</show_in_store>
|
1785 |
+
</allowspecific>
|
1786 |
+
<specificcountry translate="label">
|
1787 |
+
<label>Specific countries</label>
|
1788 |
+
<frontend_type>multiselect</frontend_type>
|
1789 |
+
<sort_order>80</sort_order>
|
1790 |
+
<source_model>adminhtml/system_config_source_country
|
1791 |
+
</source_model>
|
1792 |
+
<show_in_default>1</show_in_default>
|
1793 |
+
<show_in_website>1</show_in_website>
|
1794 |
+
<show_in_store>1</show_in_store>
|
1795 |
+
</specificcountry>
|
1796 |
+
<min_order_total translate="label">
|
1797 |
+
<label>Minimum order total</label>
|
1798 |
+
<frontend_type>text</frontend_type>
|
1799 |
+
<sort_order>90</sort_order>
|
1800 |
+
<show_in_default>1</show_in_default>
|
1801 |
+
<show_in_website>1</show_in_website>
|
1802 |
+
<show_in_store>1</show_in_store>
|
1803 |
+
</min_order_total>
|
1804 |
+
<max_order_total translate="label">
|
1805 |
+
<label>Maximum order total</label>
|
1806 |
+
<frontend_type>text</frontend_type>
|
1807 |
+
<sort_order>100</sort_order>
|
1808 |
+
<show_in_default>1</show_in_default>
|
1809 |
+
<show_in_website>1</show_in_website>
|
1810 |
+
<show_in_store>0</show_in_store>
|
1811 |
+
</max_order_total>
|
1812 |
+
</fields>
|
1813 |
+
</wirecard_checkoutpage_paybox>
|
1814 |
+
<wirecard_checkoutpage_paysafecard translate="label" module="wirecard_checkoutpage">
|
1815 |
+
<label>Wirecard Checkout Page paysafecard</label>
|
1816 |
+
<frontend_type>text</frontend_type>
|
1817 |
+
<sort_order>1190</sort_order>
|
1818 |
+
<show_in_default>1</show_in_default>
|
1819 |
+
<show_in_website>1</show_in_website>
|
1820 |
+
<show_in_store>1</show_in_store>
|
1821 |
+
<fields>
|
1822 |
+
<active translate="label">
|
1823 |
+
<label>Enabled</label>
|
1824 |
+
<frontend_type>select</frontend_type>
|
1825 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1826 |
+
<sort_order>20</sort_order>
|
1827 |
+
<show_in_default>1</show_in_default>
|
1828 |
+
<show_in_website>1</show_in_website>
|
1829 |
+
<show_in_store>1</show_in_store>
|
1830 |
+
</active>
|
1831 |
+
<sort_order translate="label">
|
1832 |
+
<label>Sorting order number</label>
|
1833 |
+
<frontend_type>text</frontend_type>
|
1834 |
+
<sort_order>30</sort_order>
|
1835 |
+
<show_in_default>1</show_in_default>
|
1836 |
+
<show_in_website>1</show_in_website>
|
1837 |
+
<show_in_store>1</show_in_store>
|
1838 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
1839 |
+
</sort_order>
|
1840 |
+
<title translate="label">
|
1841 |
+
<label>Name for payment method</label>
|
1842 |
+
<frontend_type>text</frontend_type>
|
1843 |
+
<sort_order>40</sort_order>
|
1844 |
+
<show_in_default>1</show_in_default>
|
1845 |
+
<show_in_website>1</show_in_website>
|
1846 |
+
<show_in_store>1</show_in_store>
|
1847 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
1848 |
+
</title>
|
1849 |
+
<iframe>
|
1850 |
+
<label>Display as iframe</label>
|
1851 |
+
<frontend_type>select</frontend_type>
|
1852 |
+
<sort_order>50</sort_order>
|
1853 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
1854 |
+
</source_model>
|
1855 |
+
<show_in_default>1</show_in_default>
|
1856 |
+
<show_in_website>1</show_in_website>
|
1857 |
+
<show_in_store>1</show_in_store>
|
1858 |
+
</iframe>
|
1859 |
+
<allowspecific translate="label">
|
1860 |
+
<label>Payment method available for</label>
|
1861 |
+
<frontend_type>allowspecific</frontend_type>
|
1862 |
+
<sort_order>70</sort_order>
|
1863 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
1864 |
+
</source_model>
|
1865 |
+
<show_in_default>1</show_in_default>
|
1866 |
+
<show_in_website>1</show_in_website>
|
1867 |
+
<show_in_store>1</show_in_store>
|
1868 |
+
</allowspecific>
|
1869 |
+
<specificcountry translate="label">
|
1870 |
+
<label>Specific countries</label>
|
1871 |
+
<frontend_type>multiselect</frontend_type>
|
1872 |
+
<sort_order>80</sort_order>
|
1873 |
+
<source_model>adminhtml/system_config_source_country
|
1874 |
+
</source_model>
|
1875 |
+
<show_in_default>1</show_in_default>
|
1876 |
+
<show_in_website>1</show_in_website>
|
1877 |
+
<show_in_store>1</show_in_store>
|
1878 |
+
</specificcountry>
|
1879 |
+
<min_order_total translate="label">
|
1880 |
+
<label>Minimum order total</label>
|
1881 |
+
<frontend_type>text</frontend_type>
|
1882 |
+
<sort_order>90</sort_order>
|
1883 |
+
<show_in_default>1</show_in_default>
|
1884 |
+
<show_in_website>1</show_in_website>
|
1885 |
+
<show_in_store>1</show_in_store>
|
1886 |
+
</min_order_total>
|
1887 |
+
<max_order_total translate="label">
|
1888 |
+
<label>Maximum order total</label>
|
1889 |
+
<frontend_type>text</frontend_type>
|
1890 |
+
<sort_order>100</sort_order>
|
1891 |
+
<show_in_default>1</show_in_default>
|
1892 |
+
<show_in_website>1</show_in_website>
|
1893 |
+
<show_in_store>0</show_in_store>
|
1894 |
+
</max_order_total>
|
1895 |
+
</fields>
|
1896 |
+
</wirecard_checkoutpage_paysafecard>
|
1897 |
+
<wirecard_checkoutpage_quick translate="label" module="wirecard_checkoutpage">
|
1898 |
+
<label>Wirecard Checkout Page @Quick</label>
|
1899 |
+
<frontend_type>text</frontend_type>
|
1900 |
+
<sort_order>1200</sort_order>
|
1901 |
+
<show_in_default>1</show_in_default>
|
1902 |
+
<show_in_website>1</show_in_website>
|
1903 |
+
<show_in_store>1</show_in_store>
|
1904 |
+
<fields>
|
1905 |
+
<active translate="label">
|
1906 |
+
<label>Enabled</label>
|
1907 |
+
<frontend_type>select</frontend_type>
|
1908 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1909 |
+
<sort_order>20</sort_order>
|
1910 |
+
<show_in_default>1</show_in_default>
|
1911 |
+
<show_in_website>1</show_in_website>
|
1912 |
+
<show_in_store>1</show_in_store>
|
1913 |
+
</active>
|
1914 |
+
<sort_order translate="label">
|
1915 |
+
<label>Sorting order number</label>
|
1916 |
+
<frontend_type>text</frontend_type>
|
1917 |
+
<sort_order>30</sort_order>
|
1918 |
+
<show_in_default>1</show_in_default>
|
1919 |
+
<show_in_website>1</show_in_website>
|
1920 |
+
<show_in_store>1</show_in_store>
|
1921 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
1922 |
+
</sort_order>
|
1923 |
+
<title translate="label">
|
1924 |
+
<label>Name for payment method</label>
|
1925 |
+
<frontend_type>text</frontend_type>
|
1926 |
+
<sort_order>40</sort_order>
|
1927 |
+
<show_in_default>1</show_in_default>
|
1928 |
+
<show_in_website>1</show_in_website>
|
1929 |
+
<show_in_store>1</show_in_store>
|
1930 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
1931 |
+
</title>
|
1932 |
+
<iframe>
|
1933 |
+
<label>Display as iframe</label>
|
1934 |
+
<frontend_type>select</frontend_type>
|
1935 |
+
<sort_order>50</sort_order>
|
1936 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
1937 |
+
</source_model>
|
1938 |
+
<show_in_default>1</show_in_default>
|
1939 |
+
<show_in_website>1</show_in_website>
|
1940 |
+
<show_in_store>1</show_in_store>
|
1941 |
+
</iframe>
|
1942 |
+
<allowspecific translate="label">
|
1943 |
+
<label>Payment method available for</label>
|
1944 |
+
<frontend_type>allowspecific</frontend_type>
|
1945 |
+
<sort_order>70</sort_order>
|
1946 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
1947 |
+
</source_model>
|
1948 |
+
<show_in_default>1</show_in_default>
|
1949 |
+
<show_in_website>1</show_in_website>
|
1950 |
+
<show_in_store>1</show_in_store>
|
1951 |
+
</allowspecific>
|
1952 |
+
<specificcountry translate="label">
|
1953 |
+
<label>Specific countries</label>
|
1954 |
+
<frontend_type>multiselect</frontend_type>
|
1955 |
+
<sort_order>80</sort_order>
|
1956 |
+
<source_model>adminhtml/system_config_source_country
|
1957 |
+
</source_model>
|
1958 |
+
<show_in_default>1</show_in_default>
|
1959 |
+
<show_in_website>1</show_in_website>
|
1960 |
+
<show_in_store>1</show_in_store>
|
1961 |
+
</specificcountry>
|
1962 |
+
<min_order_total translate="label">
|
1963 |
+
<label>Minimum order total</label>
|
1964 |
+
<frontend_type>text</frontend_type>
|
1965 |
+
<sort_order>90</sort_order>
|
1966 |
+
<show_in_default>1</show_in_default>
|
1967 |
+
<show_in_website>1</show_in_website>
|
1968 |
+
<show_in_store>1</show_in_store>
|
1969 |
+
</min_order_total>
|
1970 |
+
<max_order_total translate="label">
|
1971 |
+
<label>Maximum order total</label>
|
1972 |
+
<frontend_type>text</frontend_type>
|
1973 |
+
<sort_order>100</sort_order>
|
1974 |
+
<show_in_default>1</show_in_default>
|
1975 |
+
<show_in_website>1</show_in_website>
|
1976 |
+
<show_in_store>0</show_in_store>
|
1977 |
+
</max_order_total>
|
1978 |
+
</fields>
|
1979 |
+
</wirecard_checkoutpage_quick>
|
1980 |
+
<wirecard_checkoutpage_paypal translate="label" module="wirecard_checkoutpage">
|
1981 |
+
<label>Wirecard Checkout Page PayPal</label>
|
1982 |
+
<frontend_type>text</frontend_type>
|
1983 |
+
<sort_order>1210</sort_order>
|
1984 |
+
<show_in_default>1</show_in_default>
|
1985 |
+
<show_in_website>1</show_in_website>
|
1986 |
+
<show_in_store>1</show_in_store>
|
1987 |
+
<fields>
|
1988 |
+
<active translate="label">
|
1989 |
+
<label>Enabled</label>
|
1990 |
+
<frontend_type>select</frontend_type>
|
1991 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
1992 |
+
<sort_order>20</sort_order>
|
1993 |
+
<show_in_default>1</show_in_default>
|
1994 |
+
<show_in_website>1</show_in_website>
|
1995 |
+
<show_in_store>1</show_in_store>
|
1996 |
+
</active>
|
1997 |
+
<sort_order translate="label">
|
1998 |
+
<label>Sorting order number</label>
|
1999 |
+
<frontend_type>text</frontend_type>
|
2000 |
+
<sort_order>30</sort_order>
|
2001 |
+
<show_in_default>1</show_in_default>
|
2002 |
+
<show_in_website>1</show_in_website>
|
2003 |
+
<show_in_store>1</show_in_store>
|
2004 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
2005 |
+
</sort_order>
|
2006 |
+
<title translate="label">
|
2007 |
+
<label>Name for payment method</label>
|
2008 |
+
<frontend_type>text</frontend_type>
|
2009 |
+
<sort_order>40</sort_order>
|
2010 |
+
<show_in_default>1</show_in_default>
|
2011 |
+
<show_in_website>1</show_in_website>
|
2012 |
+
<show_in_store>1</show_in_store>
|
2013 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
2014 |
+
</title>
|
2015 |
+
<iframe>
|
2016 |
+
<label>Display as iframe</label>
|
2017 |
+
<frontend_type>select</frontend_type>
|
2018 |
+
<sort_order>50</sort_order>
|
2019 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
2020 |
+
</source_model>
|
2021 |
+
<show_in_default>1</show_in_default>
|
2022 |
+
<show_in_website>1</show_in_website>
|
2023 |
+
<show_in_store>1</show_in_store>
|
2024 |
+
</iframe>
|
2025 |
+
<allowspecific translate="label">
|
2026 |
+
<label>Payment method available for</label>
|
2027 |
+
<frontend_type>allowspecific</frontend_type>
|
2028 |
+
<sort_order>70</sort_order>
|
2029 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
2030 |
+
</source_model>
|
2031 |
+
<show_in_default>1</show_in_default>
|
2032 |
+
<show_in_website>1</show_in_website>
|
2033 |
+
<show_in_store>1</show_in_store>
|
2034 |
+
</allowspecific>
|
2035 |
+
<specificcountry translate="label">
|
2036 |
+
<label>Specific countries</label>
|
2037 |
+
<frontend_type>multiselect</frontend_type>
|
2038 |
+
<sort_order>80</sort_order>
|
2039 |
+
<source_model>adminhtml/system_config_source_country
|
2040 |
+
</source_model>
|
2041 |
+
<show_in_default>1</show_in_default>
|
2042 |
+
<show_in_website>1</show_in_website>
|
2043 |
+
<show_in_store>1</show_in_store>
|
2044 |
+
</specificcountry>
|
2045 |
+
<min_order_total translate="label">
|
2046 |
+
<label>Minimum order total</label>
|
2047 |
+
<frontend_type>text</frontend_type>
|
2048 |
+
<sort_order>90</sort_order>
|
2049 |
+
<show_in_default>1</show_in_default>
|
2050 |
+
<show_in_website>1</show_in_website>
|
2051 |
+
<show_in_store>1</show_in_store>
|
2052 |
+
</min_order_total>
|
2053 |
+
<max_order_total translate="label">
|
2054 |
+
<label>Maximum order total</label>
|
2055 |
+
<frontend_type>text</frontend_type>
|
2056 |
+
<sort_order>100</sort_order>
|
2057 |
+
<show_in_default>1</show_in_default>
|
2058 |
+
<show_in_website>1</show_in_website>
|
2059 |
+
<show_in_store>0</show_in_store>
|
2060 |
+
</max_order_total>
|
2061 |
+
</fields>
|
2062 |
+
</wirecard_checkoutpage_paypal>
|
2063 |
+
<wirecard_checkoutpage_epaybg translate="label" module="wirecard_checkoutpage">
|
2064 |
+
<label>Wirecard Checkout Page ePay.bg</label>
|
2065 |
+
<frontend_type>text</frontend_type>
|
2066 |
+
<sort_order>1220</sort_order>
|
2067 |
+
<show_in_default>1</show_in_default>
|
2068 |
+
<show_in_website>1</show_in_website>
|
2069 |
+
<show_in_store>1</show_in_store>
|
2070 |
+
<fields>
|
2071 |
+
<active translate="label">
|
2072 |
+
<label>Enabled</label>
|
2073 |
+
<frontend_type>select</frontend_type>
|
2074 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
2075 |
+
<sort_order>20</sort_order>
|
2076 |
+
<show_in_default>1</show_in_default>
|
2077 |
+
<show_in_website>1</show_in_website>
|
2078 |
+
<show_in_store>1</show_in_store>
|
2079 |
+
</active>
|
2080 |
+
<sort_order translate="label">
|
2081 |
+
<label>Sorting order number</label>
|
2082 |
+
<frontend_type>text</frontend_type>
|
2083 |
+
<sort_order>30</sort_order>
|
2084 |
+
<show_in_default>1</show_in_default>
|
2085 |
+
<show_in_website>1</show_in_website>
|
2086 |
+
<show_in_store>1</show_in_store>
|
2087 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
2088 |
+
</sort_order>
|
2089 |
+
<title translate="label">
|
2090 |
+
<label>Name for payment method</label>
|
2091 |
+
<frontend_type>text</frontend_type>
|
2092 |
+
<sort_order>40</sort_order>
|
2093 |
+
<show_in_default>1</show_in_default>
|
2094 |
+
<show_in_website>1</show_in_website>
|
2095 |
+
<show_in_store>1</show_in_store>
|
2096 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
2097 |
+
</title>
|
2098 |
+
<iframe>
|
2099 |
+
<label>Display as iframe</label>
|
2100 |
+
<frontend_type>select</frontend_type>
|
2101 |
+
<sort_order>50</sort_order>
|
2102 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
2103 |
+
</source_model>
|
2104 |
+
<show_in_default>1</show_in_default>
|
2105 |
+
<show_in_website>1</show_in_website>
|
2106 |
+
<show_in_store>1</show_in_store>
|
2107 |
+
</iframe>
|
2108 |
+
<allowspecific translate="label">
|
2109 |
+
<label>Payment method available for</label>
|
2110 |
+
<frontend_type>allowspecific</frontend_type>
|
2111 |
+
<sort_order>70</sort_order>
|
2112 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
2113 |
+
</source_model>
|
2114 |
+
<show_in_default>1</show_in_default>
|
2115 |
+
<show_in_website>1</show_in_website>
|
2116 |
+
<show_in_store>1</show_in_store>
|
2117 |
+
</allowspecific>
|
2118 |
+
<specificcountry translate="label">
|
2119 |
+
<label>Specific countries</label>
|
2120 |
+
<frontend_type>multiselect</frontend_type>
|
2121 |
+
<sort_order>80</sort_order>
|
2122 |
+
<source_model>adminhtml/system_config_source_country
|
2123 |
+
</source_model>
|
2124 |
+
<show_in_default>1</show_in_default>
|
2125 |
+
<show_in_website>1</show_in_website>
|
2126 |
+
<show_in_store>1</show_in_store>
|
2127 |
+
</specificcountry>
|
2128 |
+
<min_order_total translate="label">
|
2129 |
+
<label>Minimum order total</label>
|
2130 |
+
<frontend_type>text</frontend_type>
|
2131 |
+
<sort_order>90</sort_order>
|
2132 |
+
<show_in_default>1</show_in_default>
|
2133 |
+
<show_in_website>1</show_in_website>
|
2134 |
+
<show_in_store>1</show_in_store>
|
2135 |
+
</min_order_total>
|
2136 |
+
<max_order_total translate="label">
|
2137 |
+
<label>Maximum order total</label>
|
2138 |
+
<frontend_type>text</frontend_type>
|
2139 |
+
<sort_order>100</sort_order>
|
2140 |
+
<show_in_default>1</show_in_default>
|
2141 |
+
<show_in_website>1</show_in_website>
|
2142 |
+
<show_in_store>0</show_in_store>
|
2143 |
+
</max_order_total>
|
2144 |
+
</fields>
|
2145 |
+
</wirecard_checkoutpage_epaybg>
|
2146 |
+
<wirecard_checkoutpage_sepadd translate="label" module="wirecard_checkoutpage">
|
2147 |
+
<label>Wirecard Checkout Page SEPA Direct Debit</label>
|
2148 |
+
<frontend_type>text</frontend_type>
|
2149 |
+
<sort_order>1230</sort_order>
|
2150 |
+
<show_in_default>1</show_in_default>
|
2151 |
+
<show_in_website>1</show_in_website>
|
2152 |
+
<show_in_store>1</show_in_store>
|
2153 |
+
<fields>
|
2154 |
+
<active translate="label">
|
2155 |
+
<label>Enabled</label>
|
2156 |
+
<frontend_type>select</frontend_type>
|
2157 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
2158 |
+
<sort_order>20</sort_order>
|
2159 |
+
<show_in_default>1</show_in_default>
|
2160 |
+
<show_in_website>1</show_in_website>
|
2161 |
+
<show_in_store>1</show_in_store>
|
2162 |
+
</active>
|
2163 |
+
<sort_order translate="label">
|
2164 |
+
<label>Sorting order number</label>
|
2165 |
+
<frontend_type>text</frontend_type>
|
2166 |
+
<sort_order>30</sort_order>
|
2167 |
+
<show_in_default>1</show_in_default>
|
2168 |
+
<show_in_website>1</show_in_website>
|
2169 |
+
<show_in_store>1</show_in_store>
|
2170 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
2171 |
+
</sort_order>
|
2172 |
+
<title translate="label">
|
2173 |
+
<label>Name for payment method</label>
|
2174 |
+
<frontend_type>text</frontend_type>
|
2175 |
+
<sort_order>40</sort_order>
|
2176 |
+
<show_in_default>1</show_in_default>
|
2177 |
+
<show_in_website>1</show_in_website>
|
2178 |
+
<show_in_store>1</show_in_store>
|
2179 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
2180 |
+
</title>
|
2181 |
+
<iframe>
|
2182 |
+
<label>Display as iframe</label>
|
2183 |
+
<frontend_type>select</frontend_type>
|
2184 |
+
<sort_order>50</sort_order>
|
2185 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
2186 |
+
</source_model>
|
2187 |
+
<show_in_default>1</show_in_default>
|
2188 |
+
<show_in_website>1</show_in_website>
|
2189 |
+
<show_in_store>1</show_in_store>
|
2190 |
+
</iframe>
|
2191 |
+
<allowspecific translate="label">
|
2192 |
+
<label>Payment method available for</label>
|
2193 |
+
<frontend_type>allowspecific</frontend_type>
|
2194 |
+
<sort_order>70</sort_order>
|
2195 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
2196 |
+
</source_model>
|
2197 |
+
<show_in_default>1</show_in_default>
|
2198 |
+
<show_in_website>1</show_in_website>
|
2199 |
+
<show_in_store>1</show_in_store>
|
2200 |
+
</allowspecific>
|
2201 |
+
<specificcountry translate="label">
|
2202 |
+
<label>Specific countries</label>
|
2203 |
+
<frontend_type>multiselect</frontend_type>
|
2204 |
+
<sort_order>80</sort_order>
|
2205 |
+
<source_model>adminhtml/system_config_source_country
|
2206 |
+
</source_model>
|
2207 |
+
<show_in_default>1</show_in_default>
|
2208 |
+
<show_in_website>1</show_in_website>
|
2209 |
+
<show_in_store>1</show_in_store>
|
2210 |
+
</specificcountry>
|
2211 |
+
<min_order_total translate="label">
|
2212 |
+
<label>Minimum order total</label>
|
2213 |
+
<frontend_type>text</frontend_type>
|
2214 |
+
<sort_order>90</sort_order>
|
2215 |
+
<show_in_default>1</show_in_default>
|
2216 |
+
<show_in_website>1</show_in_website>
|
2217 |
+
<show_in_store>1</show_in_store>
|
2218 |
+
</min_order_total>
|
2219 |
+
<max_order_total translate="label">
|
2220 |
+
<label>Maximum order total</label>
|
2221 |
+
<frontend_type>text</frontend_type>
|
2222 |
+
<sort_order>100</sort_order>
|
2223 |
+
<show_in_default>1</show_in_default>
|
2224 |
+
<show_in_website>1</show_in_website>
|
2225 |
+
<show_in_store>0</show_in_store>
|
2226 |
+
</max_order_total>
|
2227 |
+
</fields>
|
2228 |
+
</wirecard_checkoutpage_sepadd>
|
2229 |
+
<wirecard_checkoutpage_invoice translate="label" module="wirecard_checkoutpage">
|
2230 |
+
<label>Wirecard Checkout Page Invoice</label>
|
2231 |
+
<frontend_type>text</frontend_type>
|
2232 |
+
<sort_order>1240</sort_order>
|
2233 |
+
<show_in_default>1</show_in_default>
|
2234 |
+
<show_in_website>1</show_in_website>
|
2235 |
+
<show_in_store>1</show_in_store>
|
2236 |
+
<fields>
|
2237 |
+
<active translate="label">
|
2238 |
+
<label>Enabled</label>
|
2239 |
+
<frontend_type>select</frontend_type>
|
2240 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
2241 |
+
<sort_order>20</sort_order>
|
2242 |
+
<show_in_default>1</show_in_default>
|
2243 |
+
<show_in_website>1</show_in_website>
|
2244 |
+
<show_in_store>1</show_in_store>
|
2245 |
+
</active>
|
2246 |
+
<provider translate="label">
|
2247 |
+
<label>Financial service provider</label>
|
2248 |
+
<frontend_type>select</frontend_type>
|
2249 |
+
<source_model>Wirecard_CheckoutPage_Model_System_Config_InvoiceProviders</source_model>
|
2250 |
+
<sort_order>22</sort_order>
|
2251 |
+
<show_in_default>1</show_in_default>
|
2252 |
+
<show_in_website>1</show_in_website>
|
2253 |
+
<show_in_store>1</show_in_store>
|
2254 |
+
</provider>
|
2255 |
+
<sort_order translate="label">
|
2256 |
+
<label>Sorting order number</label>
|
2257 |
+
<frontend_type>text</frontend_type>
|
2258 |
+
<sort_order>30</sort_order>
|
2259 |
+
<show_in_default>1</show_in_default>
|
2260 |
+
<show_in_website>1</show_in_website>
|
2261 |
+
<show_in_store>1</show_in_store>
|
2262 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
2263 |
+
</sort_order>
|
2264 |
+
<title translate="label">
|
2265 |
+
<label>Name for payment method</label>
|
2266 |
+
<frontend_type>text</frontend_type>
|
2267 |
+
<sort_order>40</sort_order>
|
2268 |
+
<show_in_default>1</show_in_default>
|
2269 |
+
<show_in_website>1</show_in_website>
|
2270 |
+
<show_in_store>1</show_in_store>
|
2271 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
2272 |
+
</title>
|
2273 |
+
<iframe>
|
2274 |
+
<label>Display as iframe</label>
|
2275 |
+
<frontend_type>select</frontend_type>
|
2276 |
+
<sort_order>50</sort_order>
|
2277 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
2278 |
+
</source_model>
|
2279 |
+
<show_in_default>1</show_in_default>
|
2280 |
+
<show_in_website>1</show_in_website>
|
2281 |
+
<show_in_store>1</show_in_store>
|
2282 |
+
</iframe>
|
2283 |
+
<allowspecific translate="label">
|
2284 |
+
<label>Payment method available for</label>
|
2285 |
+
<frontend_type>allowspecific</frontend_type>
|
2286 |
+
<sort_order>70</sort_order>
|
2287 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
2288 |
+
</source_model>
|
2289 |
+
<show_in_default>1</show_in_default>
|
2290 |
+
<show_in_website>1</show_in_website>
|
2291 |
+
<show_in_store>1</show_in_store>
|
2292 |
+
</allowspecific>
|
2293 |
+
<specificcountry translate="label">
|
2294 |
+
<label>Specific countries</label>
|
2295 |
+
<frontend_type>multiselect</frontend_type>
|
2296 |
+
<sort_order>80</sort_order>
|
2297 |
+
<source_model>adminhtml/system_config_source_country
|
2298 |
+
</source_model>
|
2299 |
+
<show_in_default>1</show_in_default>
|
2300 |
+
<show_in_website>1</show_in_website>
|
2301 |
+
<show_in_store>1</show_in_store>
|
2302 |
+
</specificcountry>
|
2303 |
+
<min_order_total translate="label">
|
2304 |
+
<label>Minimum order total</label>
|
2305 |
+
<frontend_type>text</frontend_type>
|
2306 |
+
<sort_order>90</sort_order>
|
2307 |
+
<show_in_default>1</show_in_default>
|
2308 |
+
<show_in_website>1</show_in_website>
|
2309 |
+
<show_in_store>1</show_in_store>
|
2310 |
+
</min_order_total>
|
2311 |
+
<max_order_total translate="label">
|
2312 |
+
<label>Maximum order total</label>
|
2313 |
+
<frontend_type>text</frontend_type>
|
2314 |
+
<sort_order>100</sort_order>
|
2315 |
+
<show_in_default>1</show_in_default>
|
2316 |
+
<show_in_website>1</show_in_website>
|
2317 |
+
<show_in_store>1</show_in_store>
|
2318 |
+
</max_order_total>
|
2319 |
+
<currencies translate="label,comment">
|
2320 |
+
<label>Supported currencies</label>
|
2321 |
+
<frontend_type>multiselect</frontend_type>
|
2322 |
+
<source_model>adminhtml/system_config_source_currency</source_model>
|
2323 |
+
<sort_order>110</sort_order>
|
2324 |
+
<show_in_default>1</show_in_default>
|
2325 |
+
<show_in_website>1</show_in_website>
|
2326 |
+
<show_in_store>1</show_in_store>
|
2327 |
+
<comment>Only applicable for RatePay.</comment>
|
2328 |
+
</currencies>
|
2329 |
+
<min_age translate="label,comment">
|
2330 |
+
<label>Minimum age</label>
|
2331 |
+
<frontend_type>text</frontend_type>
|
2332 |
+
<validate>validate-not-negative-number</validate>
|
2333 |
+
<sort_order>120</sort_order>
|
2334 |
+
<show_in_default>1</show_in_default>
|
2335 |
+
<show_in_website>1</show_in_website>
|
2336 |
+
<show_in_store>1</show_in_store>
|
2337 |
+
<comment>Only applicable for RatePay.</comment>
|
2338 |
+
</min_age>
|
2339 |
+
</fields>
|
2340 |
+
</wirecard_checkoutpage_invoice>
|
2341 |
+
<wirecard_checkoutpage_invoiceb2b translate="label" module="wirecard_checkoutpage">
|
2342 |
+
<label>Wirecard Checkout Page Invoice B2B</label>
|
2343 |
+
<frontend_type>text</frontend_type>
|
2344 |
+
<sort_order>1250</sort_order>
|
2345 |
+
<show_in_default>1</show_in_default>
|
2346 |
+
<show_in_website>1</show_in_website>
|
2347 |
+
<show_in_store>1</show_in_store>
|
2348 |
+
<fields>
|
2349 |
+
<active translate="label">
|
2350 |
+
<label>Enabled</label>
|
2351 |
+
<frontend_type>select</frontend_type>
|
2352 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
2353 |
+
<sort_order>20</sort_order>
|
2354 |
+
<show_in_default>1</show_in_default>
|
2355 |
+
<show_in_website>1</show_in_website>
|
2356 |
+
<show_in_store>1</show_in_store>
|
2357 |
+
</active>
|
2358 |
+
<provider translate="label">
|
2359 |
+
<label>Financial service provider</label>
|
2360 |
+
<frontend_type>select</frontend_type>
|
2361 |
+
<source_model>Wirecard_CheckoutPage_Model_System_Config_InvoiceProviders</source_model>
|
2362 |
+
<sort_order>22</sort_order>
|
2363 |
+
<show_in_default>1</show_in_default>
|
2364 |
+
<show_in_website>1</show_in_website>
|
2365 |
+
<show_in_store>1</show_in_store>
|
2366 |
+
</provider>
|
2367 |
+
<sort_order translate="label">
|
2368 |
+
<label>Sorting order number</label>
|
2369 |
+
<frontend_type>text</frontend_type>
|
2370 |
+
<sort_order>30</sort_order>
|
2371 |
+
<show_in_default>1</show_in_default>
|
2372 |
+
<show_in_website>1</show_in_website>
|
2373 |
+
<show_in_store>1</show_in_store>
|
2374 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
2375 |
+
</sort_order>
|
2376 |
+
<title translate="label">
|
2377 |
+
<label>Name for payment method</label>
|
2378 |
+
<frontend_type>text</frontend_type>
|
2379 |
+
<sort_order>40</sort_order>
|
2380 |
+
<show_in_default>1</show_in_default>
|
2381 |
+
<show_in_website>1</show_in_website>
|
2382 |
+
<show_in_store>1</show_in_store>
|
2383 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
2384 |
+
</title>
|
2385 |
+
<iframe>
|
2386 |
+
<label>Display as iframe</label>
|
2387 |
+
<frontend_type>select</frontend_type>
|
2388 |
+
<sort_order>50</sort_order>
|
2389 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
2390 |
+
</source_model>
|
2391 |
+
<show_in_default>1</show_in_default>
|
2392 |
+
<show_in_website>1</show_in_website>
|
2393 |
+
<show_in_store>1</show_in_store>
|
2394 |
+
</iframe>
|
2395 |
+
<allowspecific translate="label">
|
2396 |
+
<label>Payment method available for</label>
|
2397 |
+
<frontend_type>allowspecific</frontend_type>
|
2398 |
+
<sort_order>70</sort_order>
|
2399 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
2400 |
+
</source_model>
|
2401 |
+
<show_in_default>1</show_in_default>
|
2402 |
+
<show_in_website>1</show_in_website>
|
2403 |
+
<show_in_store>1</show_in_store>
|
2404 |
+
</allowspecific>
|
2405 |
+
<specificcountry translate="label">
|
2406 |
+
<label>Specific countries</label>
|
2407 |
+
<frontend_type>multiselect</frontend_type>
|
2408 |
+
<sort_order>80</sort_order>
|
2409 |
+
<source_model>adminhtml/system_config_source_country
|
2410 |
+
</source_model>
|
2411 |
+
<show_in_default>1</show_in_default>
|
2412 |
+
<show_in_website>1</show_in_website>
|
2413 |
+
<show_in_store>1</show_in_store>
|
2414 |
+
</specificcountry>
|
2415 |
+
<min_order_total translate="label">
|
2416 |
+
<label>Minimum order total</label>
|
2417 |
+
<frontend_type>text</frontend_type>
|
2418 |
+
<sort_order>90</sort_order>
|
2419 |
+
<show_in_default>1</show_in_default>
|
2420 |
+
<show_in_website>1</show_in_website>
|
2421 |
+
<show_in_store>1</show_in_store>
|
2422 |
+
</min_order_total>
|
2423 |
+
<max_order_total translate="label">
|
2424 |
+
<label>Maximum order total</label>
|
2425 |
+
<frontend_type>text</frontend_type>
|
2426 |
+
<sort_order>100</sort_order>
|
2427 |
+
<show_in_default>1</show_in_default>
|
2428 |
+
<show_in_website>1</show_in_website>
|
2429 |
+
<show_in_store>0</show_in_store>
|
2430 |
+
</max_order_total>
|
2431 |
+
</fields>
|
2432 |
+
</wirecard_checkoutpage_invoiceb2b>
|
2433 |
+
<wirecard_checkoutpage_installment translate="label" module="wirecard_checkoutpage">
|
2434 |
+
<label>Wirecard Checkout Page Installment</label>
|
2435 |
+
<frontend_type>text</frontend_type>
|
2436 |
+
<sort_order>1260</sort_order>
|
2437 |
+
<show_in_default>1</show_in_default>
|
2438 |
+
<show_in_website>1</show_in_website>
|
2439 |
+
<show_in_store>1</show_in_store>
|
2440 |
+
<fields>
|
2441 |
+
<active translate="label">
|
2442 |
+
<label>Enabled</label>
|
2443 |
+
<frontend_type>select</frontend_type>
|
2444 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
2445 |
+
<sort_order>20</sort_order>
|
2446 |
+
<show_in_default>1</show_in_default>
|
2447 |
+
<show_in_website>1</show_in_website>
|
2448 |
+
<show_in_store>1</show_in_store>
|
2449 |
+
</active>
|
2450 |
+
<provider translate="label">
|
2451 |
+
<label>Financial service provider</label>
|
2452 |
+
<frontend_type>select</frontend_type>
|
2453 |
+
<source_model>Wirecard_CheckoutPage_Model_System_Config_InstallmentProviders</source_model>
|
2454 |
+
<sort_order>22</sort_order>
|
2455 |
+
<show_in_default>1</show_in_default>
|
2456 |
+
<show_in_website>1</show_in_website>
|
2457 |
+
<show_in_store>1</show_in_store>
|
2458 |
+
</provider>
|
2459 |
+
<sort_order translate="label">
|
2460 |
+
<label>Sorting order number</label>
|
2461 |
+
<frontend_type>text</frontend_type>
|
2462 |
+
<sort_order>30</sort_order>
|
2463 |
+
<show_in_default>1</show_in_default>
|
2464 |
+
<show_in_website>1</show_in_website>
|
2465 |
+
<show_in_store>1</show_in_store>
|
2466 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
2467 |
+
</sort_order>
|
2468 |
+
<title translate="label">
|
2469 |
+
<label>Name for payment method</label>
|
2470 |
+
<frontend_type>text</frontend_type>
|
2471 |
+
<sort_order>40</sort_order>
|
2472 |
+
<show_in_default>1</show_in_default>
|
2473 |
+
<show_in_website>1</show_in_website>
|
2474 |
+
<show_in_store>1</show_in_store>
|
2475 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
2476 |
+
</title>
|
2477 |
+
<iframe>
|
2478 |
+
<label>Display as iframe</label>
|
2479 |
+
<frontend_type>select</frontend_type>
|
2480 |
+
<sort_order>50</sort_order>
|
2481 |
+
<source_model>adminhtml/system_config_source_enabledisable</source_model>
|
2482 |
+
<show_in_default>1</show_in_default>
|
2483 |
+
<show_in_website>1</show_in_website>
|
2484 |
+
<show_in_store>1</show_in_store>
|
2485 |
+
</iframe>
|
2486 |
+
<allowspecific translate="label">
|
2487 |
+
<label>Payment method available for</label>
|
2488 |
+
<frontend_type>allowspecific</frontend_type>
|
2489 |
+
<sort_order>70</sort_order>
|
2490 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
2491 |
+
</source_model>
|
2492 |
+
<show_in_default>1</show_in_default>
|
2493 |
+
<show_in_website>1</show_in_website>
|
2494 |
+
<show_in_store>1</show_in_store>
|
2495 |
+
</allowspecific>
|
2496 |
+
<specificcountry translate="label">
|
2497 |
+
<label>Specific countries</label>
|
2498 |
+
<frontend_type>multiselect</frontend_type>
|
2499 |
+
<sort_order>80</sort_order>
|
2500 |
+
<source_model>adminhtml/system_config_source_country
|
2501 |
+
</source_model>
|
2502 |
+
<show_in_default>1</show_in_default>
|
2503 |
+
<show_in_website>1</show_in_website>
|
2504 |
+
<show_in_store>1</show_in_store>
|
2505 |
+
</specificcountry>
|
2506 |
+
<min_order_total translate="label">
|
2507 |
+
<label>Minimum order total</label>
|
2508 |
+
<frontend_type>text</frontend_type>
|
2509 |
+
<sort_order>90</sort_order>
|
2510 |
+
<show_in_default>1</show_in_default>
|
2511 |
+
<show_in_website>1</show_in_website>
|
2512 |
+
<show_in_store>1</show_in_store>
|
2513 |
+
</min_order_total>
|
2514 |
+
<max_order_total translate="label">
|
2515 |
+
<label>Maximum order total</label>
|
2516 |
+
<frontend_type>text</frontend_type>
|
2517 |
+
<sort_order>100</sort_order>
|
2518 |
+
<show_in_default>1</show_in_default>
|
2519 |
+
<show_in_website>1</show_in_website>
|
2520 |
+
<show_in_store>0</show_in_store>
|
2521 |
+
</max_order_total>
|
2522 |
+
<currencies translate="label,comment">
|
2523 |
+
<label>Supported currencies</label>
|
2524 |
+
<frontend_type>multiselect</frontend_type>
|
2525 |
+
<source_model>adminhtml/system_config_source_currency</source_model>
|
2526 |
+
<sort_order>110</sort_order>
|
2527 |
+
<show_in_default>1</show_in_default>
|
2528 |
+
<show_in_website>1</show_in_website>
|
2529 |
+
<show_in_store>1</show_in_store>
|
2530 |
+
<comment>Only applicable for RatePay.</comment>
|
2531 |
+
</currencies>
|
2532 |
+
<min_age translate="label,comment">
|
2533 |
+
<label>Minimum Age</label>
|
2534 |
+
<frontend_type>text</frontend_type>
|
2535 |
+
<validate>validate-not-negative-number</validate>
|
2536 |
+
<sort_order>120</sort_order>
|
2537 |
+
<show_in_default>1</show_in_default>
|
2538 |
+
<show_in_website>1</show_in_website>
|
2539 |
+
<show_in_store>1</show_in_store>
|
2540 |
+
<comment>Only applicable for RatePay.</comment>
|
2541 |
+
</min_age>
|
2542 |
+
</fields>
|
2543 |
+
</wirecard_checkoutpage_installment>
|
2544 |
+
<wirecard_checkoutpage_voucher translate="label" module="wirecard_checkoutpage">
|
2545 |
+
<label>Wirecard Checkout Page My Voucher</label>
|
2546 |
+
<frontend_type>text</frontend_type>
|
2547 |
+
<sort_order>1270</sort_order>
|
2548 |
+
<show_in_default>1</show_in_default>
|
2549 |
+
<show_in_website>1</show_in_website>
|
2550 |
+
<show_in_store>1</show_in_store>
|
2551 |
+
<fields>
|
2552 |
+
<active translate="label">
|
2553 |
+
<label>Enabled</label>
|
2554 |
+
<frontend_type>select</frontend_type>
|
2555 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
2556 |
+
<sort_order>20</sort_order>
|
2557 |
+
<show_in_default>1</show_in_default>
|
2558 |
+
<show_in_website>1</show_in_website>
|
2559 |
+
<show_in_store>1</show_in_store>
|
2560 |
+
</active>
|
2561 |
+
<sort_order translate="label">
|
2562 |
+
<label>Sorting order number</label>
|
2563 |
+
<frontend_type>text</frontend_type>
|
2564 |
+
<sort_order>30</sort_order>
|
2565 |
+
<show_in_default>1</show_in_default>
|
2566 |
+
<show_in_website>1</show_in_website>
|
2567 |
+
<show_in_store>1</show_in_store>
|
2568 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
2569 |
+
</sort_order>
|
2570 |
+
<title translate="label">
|
2571 |
+
<label>Name for payment method</label>
|
2572 |
+
<frontend_type>text</frontend_type>
|
2573 |
+
<sort_order>40</sort_order>
|
2574 |
+
<show_in_default>1</show_in_default>
|
2575 |
+
<show_in_website>1</show_in_website>
|
2576 |
+
<show_in_store>1</show_in_store>
|
2577 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
2578 |
+
</title>
|
2579 |
+
<iframe>
|
2580 |
+
<label>Display as iframe</label>
|
2581 |
+
<frontend_type>select</frontend_type>
|
2582 |
+
<sort_order>50</sort_order>
|
2583 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
2584 |
+
</source_model>
|
2585 |
+
<show_in_default>1</show_in_default>
|
2586 |
+
<show_in_website>1</show_in_website>
|
2587 |
+
<show_in_store>1</show_in_store>
|
2588 |
+
</iframe>
|
2589 |
+
<allowspecific translate="label">
|
2590 |
+
<label>Payment method available for</label>
|
2591 |
+
<frontend_type>allowspecific</frontend_type>
|
2592 |
+
<sort_order>70</sort_order>
|
2593 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
2594 |
+
</source_model>
|
2595 |
+
<show_in_default>1</show_in_default>
|
2596 |
+
<show_in_website>1</show_in_website>
|
2597 |
+
<show_in_store>1</show_in_store>
|
2598 |
+
</allowspecific>
|
2599 |
+
<specificcountry translate="label">
|
2600 |
+
<label>Specific countries</label>
|
2601 |
+
<frontend_type>multiselect</frontend_type>
|
2602 |
+
<sort_order>80</sort_order>
|
2603 |
+
<source_model>adminhtml/system_config_source_country
|
2604 |
+
</source_model>
|
2605 |
+
<show_in_default>1</show_in_default>
|
2606 |
+
<show_in_website>1</show_in_website>
|
2607 |
+
<show_in_store>1</show_in_store>
|
2608 |
+
</specificcountry>
|
2609 |
+
<min_order_total translate="label">
|
2610 |
+
<label>Minimum order total</label>
|
2611 |
+
<frontend_type>text</frontend_type>
|
2612 |
+
<sort_order>90</sort_order>
|
2613 |
+
<show_in_default>1</show_in_default>
|
2614 |
+
<show_in_website>1</show_in_website>
|
2615 |
+
<show_in_store>1</show_in_store>
|
2616 |
+
</min_order_total>
|
2617 |
+
<max_order_total translate="label">
|
2618 |
+
<label>Maximum order total</label>
|
2619 |
+
<frontend_type>text</frontend_type>
|
2620 |
+
<sort_order>100</sort_order>
|
2621 |
+
<show_in_default>1</show_in_default>
|
2622 |
+
<show_in_website>1</show_in_website>
|
2623 |
+
<show_in_store>0</show_in_store>
|
2624 |
+
</max_order_total>
|
2625 |
+
</fields>
|
2626 |
+
</wirecard_checkoutpage_voucher>
|
2627 |
+
<wirecard_checkoutpage_trustpay translate="label" module="wirecard_checkoutpage">
|
2628 |
+
<label>Wirecard Checkout Page TrustPay</label>
|
2629 |
+
<frontend_type>text</frontend_type>
|
2630 |
+
<sort_order>1280</sort_order>
|
2631 |
+
<show_in_default>1</show_in_default>
|
2632 |
+
<show_in_website>1</show_in_website>
|
2633 |
+
<show_in_store>1</show_in_store>
|
2634 |
+
<fields>
|
2635 |
+
<active translate="label">
|
2636 |
+
<label>Enabled</label>
|
2637 |
+
<frontend_type>select</frontend_type>
|
2638 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
2639 |
+
<sort_order>20</sort_order>
|
2640 |
+
<show_in_default>1</show_in_default>
|
2641 |
+
<show_in_website>1</show_in_website>
|
2642 |
+
<show_in_store>1</show_in_store>
|
2643 |
+
</active>
|
2644 |
+
<sort_order translate="label">
|
2645 |
+
<label>Sorting order number</label>
|
2646 |
+
<frontend_type>text</frontend_type>
|
2647 |
+
<sort_order>30</sort_order>
|
2648 |
+
<show_in_default>1</show_in_default>
|
2649 |
+
<show_in_website>1</show_in_website>
|
2650 |
+
<show_in_store>1</show_in_store>
|
2651 |
+
<comment>This payment method will be displayed depending on the sorting order numbers of other payment methods.</comment>
|
2652 |
+
</sort_order>
|
2653 |
+
<title translate="label">
|
2654 |
+
<label>Name for payment method</label>
|
2655 |
+
<frontend_type>text</frontend_type>
|
2656 |
+
<sort_order>40</sort_order>
|
2657 |
+
<show_in_default>1</show_in_default>
|
2658 |
+
<show_in_website>1</show_in_website>
|
2659 |
+
<show_in_store>1</show_in_store>
|
2660 |
+
<comment>The name for the payment method to be displayed in the online shop.</comment>
|
2661 |
+
</title>
|
2662 |
+
<iframe>
|
2663 |
+
<label>Display as iframe</label>
|
2664 |
+
<frontend_type>select</frontend_type>
|
2665 |
+
<sort_order>50</sort_order>
|
2666 |
+
<source_model>adminhtml/system_config_source_enabledisable
|
2667 |
+
</source_model>
|
2668 |
+
<show_in_default>1</show_in_default>
|
2669 |
+
<show_in_website>1</show_in_website>
|
2670 |
+
<show_in_store>1</show_in_store>
|
2671 |
+
</iframe>
|
2672 |
+
<allowspecific translate="label">
|
2673 |
+
<label>Payment method available for</label>
|
2674 |
+
<frontend_type>allowspecific</frontend_type>
|
2675 |
+
<sort_order>70</sort_order>
|
2676 |
+
<source_model>adminhtml/system_config_source_payment_allspecificcountries
|
2677 |
+
</source_model>
|
2678 |
+
<show_in_default>1</show_in_default>
|
2679 |
+
<show_in_website>1</show_in_website>
|
2680 |
+
<show_in_store>1</show_in_store>
|
2681 |
+
</allowspecific>
|
2682 |
+
<specificcountry translate="label">
|
2683 |
+
<label>Specific countries</label>
|
2684 |
+
<frontend_type>multiselect</frontend_type>
|
2685 |
+
<sort_order>80</sort_order>
|
2686 |
+
<source_model>adminhtml/system_config_source_country
|
2687 |
+
</source_model>
|
2688 |
+
<show_in_default>1</show_in_default>
|
2689 |
+
<show_in_website>1</show_in_website>
|
2690 |
+
<show_in_store>1</show_in_store>
|
2691 |
+
</specificcountry>
|
2692 |
+
<min_order_total translate="label">
|
2693 |
+
<label>Minimum order total</label>
|
2694 |
+
<frontend_type>text</frontend_type>
|
2695 |
+
<sort_order>90</sort_order>
|
2696 |
+
<show_in_default>1</show_in_default>
|
2697 |
+
<show_in_website>1</show_in_website>
|
2698 |
+
<show_in_store>1</show_in_store>
|
2699 |
+
</min_order_total>
|
2700 |
+
<max_order_total translate="label">
|
2701 |
+
<label>Maximum order total</label>
|
2702 |
+
<frontend_type>text</frontend_type>
|
2703 |
+
<sort_order>100</sort_order>
|
2704 |
+
<show_in_default>1</show_in_default>
|
2705 |
+
<show_in_website>1</show_in_website>
|
2706 |
+
<show_in_store>0</show_in_store>
|
2707 |
+
</max_order_total>
|
2708 |
+
</fields>
|
2709 |
+
</wirecard_checkoutpage_trustpay>
|
2710 |
+
</groups>
|
2711 |
+
</payment>
|
2712 |
+
</sections>
|
2713 |
+
</config>
|
app/code/community/Wirecard/CheckoutPage/sql/wirecard_checkoutpage_setup/mysql4-install-4.0.0.php
ADDED
@@ -0,0 +1,73 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
echo 'Running This Upgrade: '.get_class($this)."\n <br /> \n";die;
|
34 |
+
$installer = $this;
|
35 |
+
$installer->startSetup();
|
36 |
+
|
37 |
+
$installer->addAttribute(
|
38 |
+
"customer",
|
39 |
+
"company_trade_reg_number",
|
40 |
+
array(
|
41 |
+
"type" => "varchar",
|
42 |
+
"backend" => "",
|
43 |
+
"label" => "Company Trade Registration Number",
|
44 |
+
"input" => "text",
|
45 |
+
"source" => "",
|
46 |
+
"visible" => true,
|
47 |
+
"required" => false,
|
48 |
+
"default" => "",
|
49 |
+
"frontend" => "",
|
50 |
+
"unique" => false,
|
51 |
+
"note" => ""
|
52 |
+
|
53 |
+
)
|
54 |
+
);
|
55 |
+
|
56 |
+
$used_in_forms = array(
|
57 |
+
"adminhtml_customer",
|
58 |
+
"checkout_register",
|
59 |
+
"customer_account_create",
|
60 |
+
"customer_account_edit",
|
61 |
+
"adminhtml_checkout"
|
62 |
+
);
|
63 |
+
|
64 |
+
$attribute = Mage::getSingleton("eav/config")->getAttribute("customer", "company_trade_reg_number");
|
65 |
+
$attribute->setData("used_in_forms", $used_in_forms)
|
66 |
+
->setData("is_used_for_customer_segment", true)
|
67 |
+
->setData("is_system", 0)
|
68 |
+
->setData("is_user_defined", 1)
|
69 |
+
->setData("is_visible", 1)
|
70 |
+
->setData("sort_order", 999);
|
71 |
+
$attribute->save();
|
72 |
+
|
73 |
+
$installer->endSetup();
|
app/code/local/Wirecard/QPay/Config/client.config.php
ADDED
@@ -0,0 +1,24 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
return Array(
|
12 |
+
'FRONTEND_URL' => 'https://checkout.wirecard.com/page/init-server.php',
|
13 |
+
'TOOLKIT_URL' => 'https://checkout.wirecard.com/page/toolkit.php',
|
14 |
+
'MODULE_NAME' => 'WirecardCEE_QPay',
|
15 |
+
'MODULE_VERSION' => '3.1.0',
|
16 |
+
'DEPENDENCIES' => Array(
|
17 |
+
'FRAMEWORK_NAME' => 'Zend_Framework',
|
18 |
+
'FRAMEWORK_VERSION' => Array(
|
19 |
+
'MINIMUM' => '1.11.10',
|
20 |
+
'CURRENT' => Zend_Version::VERSION
|
21 |
+
),
|
22 |
+
),
|
23 |
+
'USE_DEBUG' => FALSE
|
24 |
+
);
|
app/code/local/Wirecard/QPay/Config/user.config.php
ADDED
@@ -0,0 +1,25 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* Configuration array
|
14 |
+
*
|
15 |
+
* Please input your details
|
16 |
+
*/
|
17 |
+
return Array(
|
18 |
+
'WirecardCEEQPayConfig' => Array(
|
19 |
+
'CUSTOMER_ID' => 'D200001',
|
20 |
+
'SHOP_ID' => '',
|
21 |
+
'SECRET' => 'B8AKTPWBRMNBV455FG6M2DANE99WU2',
|
22 |
+
'LANGUAGE' => 'en',
|
23 |
+
'TOOLKIT_PASSWORD' => 'jcv45z'
|
24 |
+
)
|
25 |
+
);
|
app/code/local/Wirecard/QPay/Error.php
ADDED
@@ -0,0 +1,27 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_QPay_Error
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QPay
|
15 |
+
* @version 3.2.0
|
16 |
+
*/
|
17 |
+
class WirecardCEE_QPay_Error extends WirecardCEE_Stdlib_Error {
|
18 |
+
|
19 |
+
/**
|
20 |
+
* WirecardCEE_QPay_Error contructor
|
21 |
+
*
|
22 |
+
* @param string $message
|
23 |
+
*/
|
24 |
+
public function __construct($message) {
|
25 |
+
$this->setMessage($message);
|
26 |
+
}
|
27 |
+
}
|
app/code/local/Wirecard/QPay/Exception/BadMethodCallException.php
ADDED
@@ -0,0 +1,18 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_QPay_Exception_BadMethodCallException
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QPay
|
15 |
+
* @subpackage Exception
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_QPay_Exception_BadMethodCallException extends BadMethodCallException implements WirecardCEE_QPay_Exception_ExceptionInterface {}
|
app/code/local/Wirecard/QPay/Exception/ExceptionInterface.php
ADDED
@@ -0,0 +1,18 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_QPay_Exception_ExceptionInterface
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QPay
|
15 |
+
* @subpackage Exception
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
interface WirecardCEE_QPay_Exception_ExceptionInterface {}
|
app/code/local/Wirecard/QPay/Exception/InvalidArgumentException.php
ADDED
@@ -0,0 +1,18 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_QPay_Exception_InvalidArgumentException
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QPay
|
15 |
+
* @subpackage Exception
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_QPay_Exception_InvalidArgumentException extends InvalidArgumentException implements WirecardCEE_QPay_Exception_ExceptionInterface {}
|
app/code/local/Wirecard/QPay/Exception/InvalidParamLengthException.php
ADDED
@@ -0,0 +1,18 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_QPay_Exception_InvalidParamLengthException
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QPay
|
15 |
+
* @subpackage Exception
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_QPay_Exception_InvalidParamLengthException extends LengthException implements WirecardCEE_QPay_Exception_ExceptionInterface {}
|
app/code/local/Wirecard/QPay/Exception/InvalidResponseException.php
ADDED
@@ -0,0 +1,18 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_QPay_Exception_InvalidResponseException
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QPay
|
15 |
+
* @subpackage Exception
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_QPay_Exception_InvalidResponseException extends WirecardCEE_Stdlib_Exception_InvalidResponseException implements WirecardCEE_QPay_Exception_ExceptionInterface {}
|
app/code/local/Wirecard/QPay/FrontendClient.php
ADDED
@@ -0,0 +1,743 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_QPay_FrontendClient
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QPay
|
15 |
+
* @version 3.2.0
|
16 |
+
*/
|
17 |
+
class WirecardCEE_QPay_FrontendClient extends WirecardCEE_Stdlib_Client_ClientAbstract {
|
18 |
+
|
19 |
+
/**
|
20 |
+
* Field name: PaymentType
|
21 |
+
*
|
22 |
+
* @var string
|
23 |
+
*/
|
24 |
+
const PAYMENT_TYPE = 'paymentType';
|
25 |
+
|
26 |
+
/**
|
27 |
+
* Field name: successUrl
|
28 |
+
*
|
29 |
+
* @var string
|
30 |
+
*/
|
31 |
+
const SUCCESS_URL = 'successUrl';
|
32 |
+
|
33 |
+
/**
|
34 |
+
* Field name: cancelUrl
|
35 |
+
*
|
36 |
+
* @var string
|
37 |
+
*/
|
38 |
+
const CANCEL_URL = 'cancelUrl';
|
39 |
+
|
40 |
+
/**
|
41 |
+
* Field name: failureUrl
|
42 |
+
*
|
43 |
+
* @var string
|
44 |
+
*/
|
45 |
+
const FAILURE_URL = 'failureUrl';
|
46 |
+
|
47 |
+
/**
|
48 |
+
* Field name: serviceUrl
|
49 |
+
*
|
50 |
+
* @var string
|
51 |
+
*/
|
52 |
+
const SERVICE_URL = 'serviceUrl';
|
53 |
+
|
54 |
+
/**
|
55 |
+
* Field name: pendingUrl
|
56 |
+
*
|
57 |
+
* @var string
|
58 |
+
*/
|
59 |
+
const PENDING_URL = 'pendingUrl';
|
60 |
+
|
61 |
+
/**
|
62 |
+
* Field name: financialInstitution
|
63 |
+
*
|
64 |
+
* @var string
|
65 |
+
*/
|
66 |
+
const FINANCIAL_INSTITUTION = 'financialInstitution';
|
67 |
+
|
68 |
+
/**
|
69 |
+
* Field name: displayText
|
70 |
+
*
|
71 |
+
* @var string
|
72 |
+
*/
|
73 |
+
const DISPLAY_TEXT = 'displayText';
|
74 |
+
|
75 |
+
/**
|
76 |
+
* Field name: confirmUrl
|
77 |
+
*
|
78 |
+
* @var string
|
79 |
+
*/
|
80 |
+
const CONFIRM_URL = 'confirmUrl';
|
81 |
+
|
82 |
+
/**
|
83 |
+
* Field name: imageUrl
|
84 |
+
*
|
85 |
+
* @var string
|
86 |
+
*/
|
87 |
+
const IMAGE_URL = 'imageUrl';
|
88 |
+
|
89 |
+
/**
|
90 |
+
* Field name: windowName
|
91 |
+
*
|
92 |
+
* @var string
|
93 |
+
*/
|
94 |
+
const WINDOW_NAME = 'windowName';
|
95 |
+
|
96 |
+
/**
|
97 |
+
* Field name: duplicateRequestCheck
|
98 |
+
*
|
99 |
+
* @var string
|
100 |
+
*/
|
101 |
+
const DUPLICATE_REQUEST_CHECK = 'duplicateRequestCheck';
|
102 |
+
|
103 |
+
/**
|
104 |
+
* Field name: customerStatement
|
105 |
+
*
|
106 |
+
* @var string
|
107 |
+
*/
|
108 |
+
const CUSTOMER_STATEMENT = 'customerStatement';
|
109 |
+
|
110 |
+
/**
|
111 |
+
* Field name: orderReference
|
112 |
+
*
|
113 |
+
* @var string
|
114 |
+
*/
|
115 |
+
const ORDER_REFERENCE = 'orderReference';
|
116 |
+
|
117 |
+
/**
|
118 |
+
* Field name: maxRetries
|
119 |
+
*
|
120 |
+
* @var string
|
121 |
+
*/
|
122 |
+
const MAX_RETRIES = 'maxRetries';
|
123 |
+
|
124 |
+
/**
|
125 |
+
* Field name: confirmMail
|
126 |
+
*
|
127 |
+
* @var string
|
128 |
+
*/
|
129 |
+
const CONFIRM_MAIL = 'confirmMail';
|
130 |
+
|
131 |
+
/**
|
132 |
+
* Field name: orderIdent
|
133 |
+
*
|
134 |
+
* @var string
|
135 |
+
*/
|
136 |
+
const ORDER_IDENT = 'orderIdent';
|
137 |
+
|
138 |
+
/**
|
139 |
+
* Field name: storageId
|
140 |
+
*
|
141 |
+
* @var string
|
142 |
+
*/
|
143 |
+
const STORAGE_ID = 'storageId';
|
144 |
+
|
145 |
+
/**
|
146 |
+
* Field name: backgroundColor
|
147 |
+
*
|
148 |
+
* @var string
|
149 |
+
*/
|
150 |
+
const BACKGROUND_COLOR = 'backgroundColor';
|
151 |
+
|
152 |
+
/**
|
153 |
+
* Field name: layout
|
154 |
+
*
|
155 |
+
* @var string
|
156 |
+
*/
|
157 |
+
const LAYOUT = 'layout';
|
158 |
+
|
159 |
+
/**
|
160 |
+
* Field name: pluginVersion
|
161 |
+
*
|
162 |
+
* @var string
|
163 |
+
*/
|
164 |
+
const PLUGIN_VERSION = 'pluginVersion';
|
165 |
+
|
166 |
+
/**
|
167 |
+
* Type of the fingerprint order
|
168 |
+
*
|
169 |
+
* @var int
|
170 |
+
*/
|
171 |
+
protected $_fingerprintOrderType = 0;
|
172 |
+
|
173 |
+
/**
|
174 |
+
* Response object
|
175 |
+
*
|
176 |
+
* @var WirecardCEE_QPay_Response_Initiation
|
177 |
+
*/
|
178 |
+
protected $oResponse;
|
179 |
+
|
180 |
+
/**
|
181 |
+
* Consumer data holder
|
182 |
+
*
|
183 |
+
* @var WirecardCEE_Stdlib_ConsumerData
|
184 |
+
*/
|
185 |
+
protected $oConsumerData;
|
186 |
+
|
187 |
+
/**
|
188 |
+
* Library name
|
189 |
+
* @staticvar string
|
190 |
+
* @internal
|
191 |
+
*/
|
192 |
+
protected static $LIBRARY_NAME = 'WirecardCEE_QPay';
|
193 |
+
|
194 |
+
/**
|
195 |
+
* Library version
|
196 |
+
* @staticvar string
|
197 |
+
* @internal
|
198 |
+
*/
|
199 |
+
protected static $LIBRARY_VERSION = '3.0.0';
|
200 |
+
|
201 |
+
/**
|
202 |
+
* Framewor name (is populated from client.config.php)
|
203 |
+
* @staticvar string
|
204 |
+
* @internal
|
205 |
+
*/
|
206 |
+
protected static $FRAMEWORK_NAME;
|
207 |
+
|
208 |
+
/**
|
209 |
+
* Constructor
|
210 |
+
*
|
211 |
+
* @param mixed $aConfig
|
212 |
+
* @throws WIrecardCEE_QPay_Exception_InvalidParamLengthException
|
213 |
+
* @throws WirecardCEE_QPay_Exception_InvalidArgumentException
|
214 |
+
* @formatter:off
|
215 |
+
*/
|
216 |
+
public function __construct(array $aConfig = null) {
|
217 |
+
$this->_fingerprintOrder = new WirecardCEE_Stdlib_FingerprintOrder();
|
218 |
+
|
219 |
+
//if no config was sent fallback to default config file
|
220 |
+
if(is_null($aConfig)) {
|
221 |
+
$aConfig = WirecardCEE_QPay_Module::getConfig();
|
222 |
+
}
|
223 |
+
|
224 |
+
if (isset($aConfig['WirecardCEEQPayConfig'])) {
|
225 |
+
//we only need the WirecardCEEQPayConfig here
|
226 |
+
$aConfig = $aConfig['WirecardCEEQPayConfig'];
|
227 |
+
}
|
228 |
+
|
229 |
+
//let's store configuration details in internal objects
|
230 |
+
$this->oUserConfig = new WirecardCEE_Stdlib_Config($aConfig);
|
231 |
+
$this->oClientConfig = new WirecardCEE_Stdlib_Config(WirecardCEE_QPay_Module::getClientConfig());
|
232 |
+
|
233 |
+
self::$FRAMEWORK_NAME = $this->getClientConfig()->DEPENDENCIES->FRAMEWORK_NAME;
|
234 |
+
|
235 |
+
//now let's check if the CUSTOMER_ID, SHOP_ID, LANGUAGE and SECRET exist in $this->oUserConfig object that we created from config array
|
236 |
+
$sCustomerId = isset($this->oUserConfig->CUSTOMER_ID) ? trim($this->oUserConfig->CUSTOMER_ID) : null;
|
237 |
+
$sShopId = isset($this->oUserConfig->SHOP_ID) ? trim($this->oUserConfig->SHOP_ID) : null;
|
238 |
+
$sLanguage = isset($this->oUserConfig->LANGUAGE) ? trim($this->oUserConfig->LANGUAGE) : null;
|
239 |
+
$sSecret = isset($this->oUserConfig->SECRET) ? trim($this->oUserConfig->SECRET) : null;
|
240 |
+
|
241 |
+
//If not throw the InvalidArgumentException exception!
|
242 |
+
if (empty($sCustomerId) || is_null($sCustomerId)) {
|
243 |
+
throw new WirecardCEE_QPay_Exception_InvalidArgumentException(sprintf('CUSTOMER_ID passed to %s is invalid.', __METHOD__));
|
244 |
+
}
|
245 |
+
|
246 |
+
if (empty($sLanguage) || is_null($sLanguage)) {
|
247 |
+
throw new WirecardCEE_QPay_Exception_InvalidArgumentException(sprintf('LANGUAGE passed to %s is invalid.', __METHOD__));
|
248 |
+
}
|
249 |
+
|
250 |
+
if (empty($sSecret) || is_null($sSecret)) {
|
251 |
+
throw new WirecardCEE_QPay_Exception_InvalidArgumentException(sprintf('SECRET passed to %s is invalid.', __METHOD__));
|
252 |
+
}
|
253 |
+
|
254 |
+
// we're using hmac sha512 for hash-ing
|
255 |
+
WirecardCEE_Stdlib_Fingerprint::setHashAlgorithm(WirecardCEE_Stdlib_Fingerprint::HASH_ALGORITHM_HMAC_SHA512);
|
256 |
+
|
257 |
+
//everything ok! let's set the fields
|
258 |
+
$this->_setField(self::CUSTOMER_ID, $sCustomerId);
|
259 |
+
$this->_setField(self::SHOP_ID, $sShopId);
|
260 |
+
$this->_setField(self::LANGUAGE, $sLanguage);
|
261 |
+
$this->_setSecret($sSecret);
|
262 |
+
}
|
263 |
+
|
264 |
+
/**
|
265 |
+
* Initialization of QPay Client
|
266 |
+
* This function should be called AFTER you've set all the mandatory fields
|
267 |
+
* (for a list of mandatory fields please consult the integration manual)
|
268 |
+
*
|
269 |
+
* @throws WirecardCEE_QPay_Exception_InvalidArgumentException
|
270 |
+
* @return WirecardCEE_QPay_Response_Initiation
|
271 |
+
*/
|
272 |
+
public function initiate() {
|
273 |
+
//First let's check if all mandatory fields are set! If not add them to $aMissingFields Array Object
|
274 |
+
$aMissingFields = new ArrayObject();
|
275 |
+
|
276 |
+
if(!$this->_isFieldSet(self::AMOUNT)) $aMissingFields->append(self::AMOUNT);
|
277 |
+
if(!$this->_isFieldSet(self::PAYMENT_TYPE)) $aMissingFields->append(self::PAYMENT_TYPE);
|
278 |
+
if(!$this->_isFieldSet(self::ORDER_DESCRIPTION)) $aMissingFields->append(self::ORDER_DESCRIPTION);
|
279 |
+
if(!$this->_isFieldSet(self::SUCCESS_URL)) $aMissingFields->append(self::SUCCESS_URL);
|
280 |
+
if(!$this->_isFieldSet(self::CANCEL_URL)) $aMissingFields->append(self::CANCEL_URL);
|
281 |
+
if(!$this->_isFieldSet(self::FAILURE_URL)) $aMissingFields->append(self::FAILURE_URL);
|
282 |
+
if(!$this->_isFieldSet(self::SERVICE_URL)) $aMissingFields->append(self::SERVICE_URL);
|
283 |
+
if(!$this->_isFieldSet(self::CURRENCY)) $aMissingFields->append(self::CURRENCY);
|
284 |
+
if(!$this->_isFieldSet(self::LANGUAGE)) $aMissingFields->append(self::LANGUAGE);
|
285 |
+
if(!$this->_isConsumerDataValid()) $aMissingFields->append('Consumer IP Address, Consumer User Agent');
|
286 |
+
|
287 |
+
//Are there any errors in the $aMissingFields object?
|
288 |
+
//If so throw the InvalidArgumentException and print all the fields that are missing!
|
289 |
+
if($aMissingFields->count()) {
|
290 |
+
throw new WirecardCEE_QPay_Exception_InvalidArgumentException(sprintf(
|
291 |
+
"Could not initiate QPay! Missing mandatory field(s): %s; thrown in %s; Please use the appropriate setter functions to set missing fields.",
|
292 |
+
implode(", ", (array) $aMissingFields), __METHOD__));
|
293 |
+
}
|
294 |
+
|
295 |
+
//this is where the magic happens! We send our data to response object and hopefully get back the response object with 'redirectUrl'.
|
296 |
+
//Reponse object is also the one who will, if anything goes wrong, return the errors in an array!
|
297 |
+
$this->oResponse = new WirecardCEE_QPay_Response_Initiation($this->_send());
|
298 |
+
|
299 |
+
//and return the Response object
|
300 |
+
return $this->oResponse;
|
301 |
+
}
|
302 |
+
|
303 |
+
/**
|
304 |
+
* Setter for amount
|
305 |
+
*
|
306 |
+
* @param int|float $amount
|
307 |
+
* @return WirecardCEE_QPay_FrontendClient
|
308 |
+
* @formatter:on
|
309 |
+
*/
|
310 |
+
public function setAmount($amount) {
|
311 |
+
$this->_setField(self::AMOUNT, $amount);
|
312 |
+
return $this;
|
313 |
+
}
|
314 |
+
|
315 |
+
/**
|
316 |
+
* Setter for currency
|
317 |
+
*
|
318 |
+
* @param string $sCurrency
|
319 |
+
* @return WirecardCEE_QPay_FrontendClient
|
320 |
+
*/
|
321 |
+
public function setCurrency($sCurrency) {
|
322 |
+
$this->_setField(self::CURRENCY, $sCurrency);
|
323 |
+
return $this;
|
324 |
+
}
|
325 |
+
|
326 |
+
/**
|
327 |
+
* Setter for payment type
|
328 |
+
*
|
329 |
+
* @param string $sPaymentType
|
330 |
+
* @return WirecardCEE_QPay_FrontendClient
|
331 |
+
*/
|
332 |
+
public function setPaymentType($sPaymentType) {
|
333 |
+
$this->_setField(self::PAYMENT_TYPE, $sPaymentType);
|
334 |
+
return $this;
|
335 |
+
}
|
336 |
+
|
337 |
+
/**
|
338 |
+
* Setter for order description
|
339 |
+
*
|
340 |
+
* @param string $sDesc
|
341 |
+
* @return WirecardCEE_QPay_FrontendClient
|
342 |
+
*/
|
343 |
+
public function setOrderDescription($sDesc) {
|
344 |
+
$this->_setField(self::ORDER_DESCRIPTION, $sDesc);
|
345 |
+
return $this;
|
346 |
+
}
|
347 |
+
|
348 |
+
/**
|
349 |
+
* Setter for success url
|
350 |
+
*
|
351 |
+
* @param string $sUrl
|
352 |
+
* @return WirecardCEE_QPay_FrontendClient
|
353 |
+
*/
|
354 |
+
public function setSuccessUrl($sUrl) {
|
355 |
+
$this->_setField(self::SUCCESS_URL, $sUrl);
|
356 |
+
return $this;
|
357 |
+
}
|
358 |
+
|
359 |
+
/**
|
360 |
+
* Setter for cancel url
|
361 |
+
*
|
362 |
+
* @param string $sUrl
|
363 |
+
* @return WirecardCEE_QPay_FrontendClient
|
364 |
+
*/
|
365 |
+
public function setCancelUrl($sUrl) {
|
366 |
+
$this->_setField(self::CANCEL_URL, $sUrl);
|
367 |
+
return $this;
|
368 |
+
}
|
369 |
+
|
370 |
+
/**
|
371 |
+
* Setter for failure url
|
372 |
+
*
|
373 |
+
* @param string $sUrl
|
374 |
+
* @return WirecardCEE_QPay_FrontendClient
|
375 |
+
*/
|
376 |
+
public function setFailureUrl($sUrl) {
|
377 |
+
$this->_setField(self::FAILURE_URL, $sUrl);
|
378 |
+
return $this;
|
379 |
+
}
|
380 |
+
|
381 |
+
/**
|
382 |
+
* Setter for service url
|
383 |
+
*
|
384 |
+
* @param string $sUrl
|
385 |
+
* @return WirecardCEE_QPay_FrontendClient
|
386 |
+
*/
|
387 |
+
public function setServiceUrl($sUrl) {
|
388 |
+
$this->_setField(self::SERVICE_URL, $sUrl);
|
389 |
+
return $this;
|
390 |
+
}
|
391 |
+
|
392 |
+
/**
|
393 |
+
* setter for the QPay parameter pendingUrl
|
394 |
+
*
|
395 |
+
* @param string $pendingUrl
|
396 |
+
* @return WirecardCEE_QPay_FrontendClient
|
397 |
+
*/
|
398 |
+
public function setPendingUrl($pendingUrl) {
|
399 |
+
$this->_setField(self::PENDING_URL, $pendingUrl);
|
400 |
+
return $this;
|
401 |
+
}
|
402 |
+
|
403 |
+
/**
|
404 |
+
* Setter for the qpay parameter financialInstitution
|
405 |
+
* Only applicable if payment type is EPS or IDL (iDeal)
|
406 |
+
*
|
407 |
+
* @param string $financialInstitution
|
408 |
+
* @return WirecardCEE_QPay_FrontendClient
|
409 |
+
*/
|
410 |
+
public function setFinancialInstitution($financialInstitution) {
|
411 |
+
$this->_setField(self::FINANCIAL_INSTITUTION, $financialInstitution);
|
412 |
+
return $this;
|
413 |
+
}
|
414 |
+
|
415 |
+
/**
|
416 |
+
* setter for the qpay parameter displaytext
|
417 |
+
*
|
418 |
+
* @param string $displayText
|
419 |
+
* @return WirecardCEE_QPay_FrontendClient
|
420 |
+
*/
|
421 |
+
public function setDisplayText($displayText) {
|
422 |
+
$this->_setField(self::DISPLAY_TEXT, $displayText);
|
423 |
+
return $this;
|
424 |
+
}
|
425 |
+
|
426 |
+
/**
|
427 |
+
* setter for the qpay parameter confirmUrl
|
428 |
+
*
|
429 |
+
* @param string $confirmUrl
|
430 |
+
* @return WirecardCEE_QPay_FrontendClient
|
431 |
+
*/
|
432 |
+
public function setConfirmUrl($confirmUrl) {
|
433 |
+
$this->_setField(self::CONFIRM_URL, $confirmUrl);
|
434 |
+
return $this;
|
435 |
+
}
|
436 |
+
|
437 |
+
/**
|
438 |
+
* setter for the qpay parameter imageUrl
|
439 |
+
*
|
440 |
+
* @param string $imageUrl
|
441 |
+
* @return WirecardCEE_QPay_FrontendClient
|
442 |
+
*/
|
443 |
+
public function setImageUrl($imageUrl) {
|
444 |
+
$this->_setField(self::IMAGE_URL, $imageUrl);
|
445 |
+
return $this;
|
446 |
+
}
|
447 |
+
|
448 |
+
/**
|
449 |
+
* setter for the qpay parameter windowName
|
450 |
+
*
|
451 |
+
* @param string $windowName
|
452 |
+
* @return WirecardCEE_QPay_FrontendClient
|
453 |
+
*/
|
454 |
+
public function setWindowName($windowName) {
|
455 |
+
$this->_requestData[self::WINDOW_NAME] = $windowName;
|
456 |
+
return $this;
|
457 |
+
}
|
458 |
+
|
459 |
+
/**
|
460 |
+
* setter for the qpay parameter duplicateRequestCheck
|
461 |
+
*
|
462 |
+
* @param bool $duplicateRequestCheck
|
463 |
+
* @return WirecardCEE_QPay_FrontendClient
|
464 |
+
*/
|
465 |
+
public function setDuplicateRequestCheck($duplicateRequestCheck) {
|
466 |
+
if ($duplicateRequestCheck) {
|
467 |
+
$this->_setField(self::DUPLICATE_REQUEST_CHECK, self::$BOOL_TRUE);
|
468 |
+
}
|
469 |
+
return $this;
|
470 |
+
}
|
471 |
+
|
472 |
+
/**
|
473 |
+
* setter for the QMore parameter customerStatement
|
474 |
+
*
|
475 |
+
* @param string $customerStatement
|
476 |
+
*
|
477 |
+
* @return $this
|
478 |
+
*/
|
479 |
+
public function setCustomerStatement($customerStatement)
|
480 |
+
{
|
481 |
+
$this->_setField(self::CUSTOMER_STATEMENT, $customerStatement);
|
482 |
+
return $this;
|
483 |
+
}
|
484 |
+
|
485 |
+
/**
|
486 |
+
* @param string|null $prefix Prefix, e.g. Shopname
|
487 |
+
* @param string|null $uniqString Uniqid
|
488 |
+
*
|
489 |
+
* @return $this
|
490 |
+
* @throws Exception
|
491 |
+
*/
|
492 |
+
public function generateCustomerStatement($prefix = null, $uniqString = null)
|
493 |
+
{
|
494 |
+
if (!$this->_isFieldSet(self::PAYMENT_TYPE))
|
495 |
+
throw new Exception('Paymenttype field is not set.');
|
496 |
+
|
497 |
+
$this->_setField(
|
498 |
+
self::CUSTOMER_STATEMENT,
|
499 |
+
$this->_composeCustomerStatement($this->_requestData[self::PAYMENT_TYPE], $prefix, $uniqString));
|
500 |
+
|
501 |
+
return $this;
|
502 |
+
}
|
503 |
+
|
504 |
+
/**
|
505 |
+
* getter for the QMore parameter customerStatement
|
506 |
+
*
|
507 |
+
* @return string|null
|
508 |
+
*/
|
509 |
+
public function getCustomerStatement()
|
510 |
+
{
|
511 |
+
if (!$this->_isFieldSet(self::CUSTOMER_STATEMENT))
|
512 |
+
return null;
|
513 |
+
|
514 |
+
return $this->_requestData[self::CUSTOMER_STATEMENT];
|
515 |
+
}
|
516 |
+
|
517 |
+
/**
|
518 |
+
* setter for the qpay parameter orderReference
|
519 |
+
*
|
520 |
+
* @param string $orderReference
|
521 |
+
* @return WirecardCEE_QPay_FrontendClient
|
522 |
+
*/
|
523 |
+
public function setOrderReference($orderReference) {
|
524 |
+
$this->_setField(self::ORDER_REFERENCE, $orderReference);
|
525 |
+
return $this;
|
526 |
+
}
|
527 |
+
|
528 |
+
/**
|
529 |
+
* setter for the qpay paramter autoDeposit
|
530 |
+
*
|
531 |
+
* @param string $autoDeposit
|
532 |
+
* @return WirecardCEE_QPay_FrontendClient
|
533 |
+
*/
|
534 |
+
public function setAutoDeposit($bBool) {
|
535 |
+
$this->_setField(self::AUTO_DEPOSIT, ($bBool) ? self::$BOOL_TRUE : self::$BOOL_FALSE);
|
536 |
+
return $this;
|
537 |
+
}
|
538 |
+
|
539 |
+
/**
|
540 |
+
* setter for the qpay parameter maxRetries
|
541 |
+
*
|
542 |
+
* @param string $maxRetries
|
543 |
+
* @return WirecardCEE_QPay_FrontendClient
|
544 |
+
*/
|
545 |
+
public function setMaxRetries($maxRetries) {
|
546 |
+
$maxRetries = intval($maxRetries);
|
547 |
+
if ($maxRetries >= 0) {
|
548 |
+
$this->_setField(self::MAX_RETRIES, $maxRetries);
|
549 |
+
}
|
550 |
+
return $this;
|
551 |
+
}
|
552 |
+
|
553 |
+
/**
|
554 |
+
* setter for the qpay parameter orderNumber
|
555 |
+
*
|
556 |
+
* @param int $orderNumber
|
557 |
+
* @return WirecardCEE_QPay_FrontendClient
|
558 |
+
*/
|
559 |
+
public function setOrderNumber($orderNumber) {
|
560 |
+
$this->_setField(self::ORDER_NUMBER, $orderNumber);
|
561 |
+
return $this;
|
562 |
+
}
|
563 |
+
|
564 |
+
/**
|
565 |
+
* setter for the qpay parameter confirmMail
|
566 |
+
*
|
567 |
+
* @param string $confirmMail
|
568 |
+
* @return WirecardCEE_QPay_FrontendClient
|
569 |
+
*/
|
570 |
+
public function setConfirmMail($confirmMail) {
|
571 |
+
$this->_setField(self::CONFIRM_MAIL, $confirmMail);
|
572 |
+
return $this;
|
573 |
+
}
|
574 |
+
|
575 |
+
/**
|
576 |
+
* setter for the qpay parameter backgroundColor
|
577 |
+
*
|
578 |
+
* @param string $backgroundColor
|
579 |
+
* @return WirecardCEE_QPay_FrontendClient
|
580 |
+
*/
|
581 |
+
public function setBackgroundColor($backgroundColor) {
|
582 |
+
$this->_setField(self::BACKGROUND_COLOR, $backgroundColor);
|
583 |
+
return $this;
|
584 |
+
}
|
585 |
+
|
586 |
+
/**
|
587 |
+
* setter for the qpay parameter backgroundColor
|
588 |
+
*
|
589 |
+
* @param string $layout
|
590 |
+
* @return WirecardCEE_QPay_FrontendClient
|
591 |
+
*/
|
592 |
+
public function setLayout($layout) {
|
593 |
+
$this->_setField(self::LAYOUT, $layout);
|
594 |
+
return $this;
|
595 |
+
}
|
596 |
+
|
597 |
+
/**
|
598 |
+
* adds given consumerData to qpay request
|
599 |
+
*
|
600 |
+
* @param WirecardCEE_Stdlib_ConsumerData $consumerData
|
601 |
+
* @return WirecardCEE_QPay_FrontendClient
|
602 |
+
*/
|
603 |
+
public function setConsumerData(WirecardCEE_Stdlib_ConsumerData $consumerData) {
|
604 |
+
$this->oConsumerData = $consumerData;
|
605 |
+
foreach($consumerData->getData() as $key => $value) {
|
606 |
+
$this->_setField($key, $value);
|
607 |
+
}
|
608 |
+
return $this;
|
609 |
+
}
|
610 |
+
|
611 |
+
/**
|
612 |
+
*
|
613 |
+
* @param string $sPluginVersion
|
614 |
+
* @return WirecardCEE_QPay_FrontendClient
|
615 |
+
*/
|
616 |
+
public function setPluginVersion($sPluginVersion) {
|
617 |
+
$this->_setField(self::PLUGIN_VERSION, $sPluginVersion);
|
618 |
+
return $this;
|
619 |
+
}
|
620 |
+
|
621 |
+
/**
|
622 |
+
* Getter for response object
|
623 |
+
*
|
624 |
+
* @return WirecardCEE_QPay_Response_Initiation
|
625 |
+
* @throws Exception
|
626 |
+
*/
|
627 |
+
public function getResponse() {
|
628 |
+
if (!$this->oResponse instanceof WirecardCEE_QPay_Response_Initiation) {
|
629 |
+
throw new Exception(sprintf("%s should be called after the initiate() function!", __METHOD__));
|
630 |
+
}
|
631 |
+
|
632 |
+
return $this->oResponse;
|
633 |
+
}
|
634 |
+
|
635 |
+
/**
|
636 |
+
* Magic method for setting request parameters.
|
637 |
+
* may be used for additional parameters
|
638 |
+
*
|
639 |
+
* @param string $name
|
640 |
+
* @param mixed $value
|
641 |
+
*/
|
642 |
+
public function __set($name, $value) {
|
643 |
+
$this->_setField($name, $value);
|
644 |
+
}
|
645 |
+
|
646 |
+
/**
|
647 |
+
* generates an base64 encoded pluginVersion string from the given shop-
|
648 |
+
* plugin- and library-versions
|
649 |
+
* QPAY Client Libary and Zend Framework Version will be added automatically
|
650 |
+
*
|
651 |
+
* @param string $shopName
|
652 |
+
* @param string $shopVersion
|
653 |
+
* @param string $pluginName
|
654 |
+
* @param string $pluginVersion
|
655 |
+
* @param array|null $libraries
|
656 |
+
* @return string base64 encoded pluginVersion
|
657 |
+
*/
|
658 |
+
public static function generatePluginVersion($shopName, $shopVersion, $pluginName, $pluginVersion, $libraries = null) {
|
659 |
+
$libraryString = self::_getQPayClientVersionString();
|
660 |
+
$libraryString .= ', ' . self::_getZendFrameworkVersionString();
|
661 |
+
if (is_array($libraries)) {
|
662 |
+
foreach($libraries as $libName => $libVersion) {
|
663 |
+
$libraryString .= ", {$libName} {$libVersion}";
|
664 |
+
}
|
665 |
+
}
|
666 |
+
|
667 |
+
$version = base64_encode("{$shopName};{$shopVersion};{$libraryString};{$pluginName};{$pluginVersion}");
|
668 |
+
|
669 |
+
return $version;
|
670 |
+
}
|
671 |
+
|
672 |
+
#----------------------------#
|
673 |
+
# PROTECTED METHODS #
|
674 |
+
#----------------------------#
|
675 |
+
|
676 |
+
/**
|
677 |
+
* Checks to see if the consumer data object is set and has at least
|
678 |
+
* madatory fields set
|
679 |
+
*
|
680 |
+
* @return boolean
|
681 |
+
*/
|
682 |
+
protected function _isConsumerDataValid() {
|
683 |
+
// if consumer data is not an instance of WirecardCEE_Stdlib_ConsumerData
|
684 |
+
// or if it's empty don't even bother with any checkings...
|
685 |
+
if (empty($this->oConsumerData) || !$this->oConsumerData instanceof WirecardCEE_Stdlib_ConsumerData)
|
686 |
+
return false;
|
687 |
+
|
688 |
+
// @see WirecardCEE_QPay_Request_Initiation_ConsumerData
|
689 |
+
$sConsumerIpAddressField = WirecardCEE_Stdlib_ConsumerData::getConsumerIpAddressFieldName();
|
690 |
+
$sConsumerUserAgentField = WirecardCEE_Stdlib_ConsumerData::getConsumerUserAgentFieldName();
|
691 |
+
|
692 |
+
// get all the consumer data in an array
|
693 |
+
// @todo when 5.4 becomes available on our server we coulde use eg.
|
694 |
+
// $this->oConsumerData->getData()[$sConsumerIpAddressField]
|
695 |
+
$aConsumerData = $this->oConsumerData->getData();
|
696 |
+
|
697 |
+
// check
|
698 |
+
return (isset($aConsumerData[$sConsumerIpAddressField]) && !empty($aConsumerData[$sConsumerIpAddressField])) &&
|
699 |
+
(isset($aConsumerData[$sConsumerUserAgentField]) && !empty($aConsumerData[$sConsumerUserAgentField]));
|
700 |
+
}
|
701 |
+
|
702 |
+
/**
|
703 |
+
* Returns the requestUrl
|
704 |
+
*
|
705 |
+
* @see WirecardCEE_Stdlib_Client_ClientAbstract::_getRequestUrl()
|
706 |
+
* @return string
|
707 |
+
*/
|
708 |
+
protected function _getRequestUrl() {
|
709 |
+
return $this->oClientConfig->FRONTEND_URL . '/init';
|
710 |
+
}
|
711 |
+
|
712 |
+
/**
|
713 |
+
* Getter for QPay Client Library Versionstring
|
714 |
+
*
|
715 |
+
* @access private
|
716 |
+
* @return String
|
717 |
+
*/
|
718 |
+
protected static function _getQPayClientVersionString() {
|
719 |
+
return self::$LIBRARY_NAME . ' ' . self::$LIBRARY_VERSION;
|
720 |
+
}
|
721 |
+
|
722 |
+
/**
|
723 |
+
* Getter for Zend Framework Versionstring
|
724 |
+
*
|
725 |
+
* @access private
|
726 |
+
* @return string
|
727 |
+
*/
|
728 |
+
protected static function _getZendFrameworkVersionString() {
|
729 |
+
if (!class_exists('Zend_Version', false)) {
|
730 |
+
require_once ('Zend/Version.php');
|
731 |
+
}
|
732 |
+
|
733 |
+
return self::$FRAMEWORK_NAME . ' ' . Zend_Version::VERSION;
|
734 |
+
}
|
735 |
+
|
736 |
+
/**
|
737 |
+
* Returns the user agent string
|
738 |
+
* @return string
|
739 |
+
*/
|
740 |
+
protected function _getUserAgent() {
|
741 |
+
return "{$this->oClientConfig->MODULE_NAME};{$this->oClientConfig->MODULE_VERSION}";
|
742 |
+
}
|
743 |
+
}
|
app/code/local/Wirecard/QPay/MobileDetect.php
ADDED
@@ -0,0 +1,1509 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Mobile Detect Library
|
4 |
+
* =====================
|
5 |
+
*
|
6 |
+
* Motto: "Every business should have a mobile detection script to detect mobile readers"
|
7 |
+
*
|
8 |
+
* Mobile_Detect is a lightweight PHP class for detecting mobile devices (including tablets).
|
9 |
+
* It uses the User-Agent string combined with specific HTTP headers to detect the mobile environment.
|
10 |
+
*
|
11 |
+
* @author Current authors: Serban Ghita <serbanghita@gmail.com>
|
12 |
+
* Nick Ilyin <nick.ilyin@gmail.com>
|
13 |
+
*
|
14 |
+
* Original author: Victor Stanciu <vic.stanciu@gmail.com>
|
15 |
+
*
|
16 |
+
* @license Code and contributions have 'MIT License'
|
17 |
+
* More details: https://github.com/serbanghita/Mobile-Detect/blob/master/LICENSE.txt
|
18 |
+
*
|
19 |
+
* @link Homepage: http://mobiledetect.net
|
20 |
+
* GitHub Repo: https://github.com/serbanghita/Mobile-Detect
|
21 |
+
* Google Code: http://code.google.com/p/php-mobile-detect/
|
22 |
+
* README: https://github.com/serbanghita/Mobile-Detect/blob/master/README.md
|
23 |
+
* HOWTO: https://github.com/serbanghita/Mobile-Detect/wiki/Code-examples
|
24 |
+
*
|
25 |
+
* @version 2.8.16
|
26 |
+
*/
|
27 |
+
|
28 |
+
class WirecardCEE_QPay_MobileDetect
|
29 |
+
{
|
30 |
+
/**
|
31 |
+
* Mobile detection type.
|
32 |
+
*
|
33 |
+
* @deprecated since version 2.6.9
|
34 |
+
*/
|
35 |
+
const DETECTION_TYPE_MOBILE = 'mobile';
|
36 |
+
|
37 |
+
/**
|
38 |
+
* Extended detection type.
|
39 |
+
*
|
40 |
+
* @deprecated since version 2.6.9
|
41 |
+
*/
|
42 |
+
const DETECTION_TYPE_EXTENDED = 'extended';
|
43 |
+
|
44 |
+
/**
|
45 |
+
* A frequently used regular expression to extract version #s.
|
46 |
+
*
|
47 |
+
* @deprecated since version 2.6.9
|
48 |
+
*/
|
49 |
+
const VER = '([\w._\+]+)';
|
50 |
+
|
51 |
+
/**
|
52 |
+
* Top-level device.
|
53 |
+
*/
|
54 |
+
const MOBILE_GRADE_A = 'A';
|
55 |
+
|
56 |
+
/**
|
57 |
+
* Mid-level device.
|
58 |
+
*/
|
59 |
+
const MOBILE_GRADE_B = 'B';
|
60 |
+
|
61 |
+
/**
|
62 |
+
* Low-level device.
|
63 |
+
*/
|
64 |
+
const MOBILE_GRADE_C = 'C';
|
65 |
+
|
66 |
+
/**
|
67 |
+
* Stores the version number of the current release.
|
68 |
+
*/
|
69 |
+
const VERSION = '2.8.16';
|
70 |
+
|
71 |
+
/**
|
72 |
+
* A type for the version() method indicating a string return value.
|
73 |
+
*/
|
74 |
+
const VERSION_TYPE_STRING = 'text';
|
75 |
+
|
76 |
+
/**
|
77 |
+
* A type for the version() method indicating a float return value.
|
78 |
+
*/
|
79 |
+
const VERSION_TYPE_FLOAT = 'float';
|
80 |
+
|
81 |
+
/**
|
82 |
+
* A cache for resolved matches
|
83 |
+
*
|
84 |
+
* @var array
|
85 |
+
*/
|
86 |
+
protected $cache = array();
|
87 |
+
|
88 |
+
/**
|
89 |
+
* The User-Agent HTTP header is stored in here.
|
90 |
+
*
|
91 |
+
* @var string
|
92 |
+
*/
|
93 |
+
protected $userAgent = null;
|
94 |
+
|
95 |
+
/**
|
96 |
+
* HTTP headers in the PHP-flavor. So HTTP_USER_AGENT and SERVER_SOFTWARE.
|
97 |
+
*
|
98 |
+
* @var array
|
99 |
+
*/
|
100 |
+
protected $httpHeaders = array();
|
101 |
+
|
102 |
+
/**
|
103 |
+
* CloudFront headers. E.g. CloudFront-Is-Desktop-Viewer, CloudFront-Is-Mobile-Viewer & CloudFront-Is-Tablet-Viewer.
|
104 |
+
*
|
105 |
+
* @var array
|
106 |
+
*/
|
107 |
+
protected $cloudfrontHeaders = array();
|
108 |
+
|
109 |
+
/**
|
110 |
+
* The matching Regex.
|
111 |
+
* This is good for debug.
|
112 |
+
*
|
113 |
+
* @var string
|
114 |
+
*/
|
115 |
+
protected $matchingRegex = null;
|
116 |
+
|
117 |
+
/**
|
118 |
+
* The matches extracted from the regex expression.
|
119 |
+
* This is good for debug.
|
120 |
+
*
|
121 |
+
* @var string
|
122 |
+
*/
|
123 |
+
protected $matchesArray = null;
|
124 |
+
|
125 |
+
/**
|
126 |
+
* The detection type, using self::DETECTION_TYPE_MOBILE or self::DETECTION_TYPE_EXTENDED.
|
127 |
+
*
|
128 |
+
* @deprecated since version 2.6.9
|
129 |
+
*
|
130 |
+
* @var string
|
131 |
+
*/
|
132 |
+
protected $detectionType = self::DETECTION_TYPE_MOBILE;
|
133 |
+
|
134 |
+
/**
|
135 |
+
* HTTP headers that trigger the 'isMobile' detection
|
136 |
+
* to be true.
|
137 |
+
*
|
138 |
+
* @var array
|
139 |
+
*/
|
140 |
+
protected static $mobileHeaders = array(
|
141 |
+
|
142 |
+
'HTTP_ACCEPT' => array('matches' => array(
|
143 |
+
// Opera Mini; @reference: http://dev.opera.com/articles/view/opera-binary-markup-language/
|
144 |
+
'application/x-obml2d',
|
145 |
+
// BlackBerry devices.
|
146 |
+
'application/vnd.rim.html',
|
147 |
+
'text/vnd.wap.wml',
|
148 |
+
'application/vnd.wap.xhtml+xml'
|
149 |
+
)),
|
150 |
+
'HTTP_X_WAP_PROFILE' => null,
|
151 |
+
'HTTP_X_WAP_CLIENTID' => null,
|
152 |
+
'HTTP_WAP_CONNECTION' => null,
|
153 |
+
'HTTP_PROFILE' => null,
|
154 |
+
// Reported by Opera on Nokia devices (eg. C3).
|
155 |
+
'HTTP_X_OPERAMINI_PHONE_UA' => null,
|
156 |
+
'HTTP_X_NOKIA_GATEWAY_ID' => null,
|
157 |
+
'HTTP_X_ORANGE_ID' => null,
|
158 |
+
'HTTP_X_VODAFONE_3GPDPCONTEXT' => null,
|
159 |
+
'HTTP_X_HUAWEI_USERID' => null,
|
160 |
+
// Reported by Windows Smartphones.
|
161 |
+
'HTTP_UA_OS' => null,
|
162 |
+
// Reported by Verizon, Vodafone proxy system.
|
163 |
+
'HTTP_X_MOBILE_GATEWAY' => null,
|
164 |
+
// Seen this on HTC Sensation. SensationXE_Beats_Z715e.
|
165 |
+
'HTTP_X_ATT_DEVICEID' => null,
|
166 |
+
// Seen this on a HTC.
|
167 |
+
'HTTP_UA_CPU' => array('matches' => array('ARM')),
|
168 |
+
);
|
169 |
+
|
170 |
+
/**
|
171 |
+
* List of mobile devices (phones).
|
172 |
+
*
|
173 |
+
* @var array
|
174 |
+
*/
|
175 |
+
protected static $phoneDevices = array(
|
176 |
+
'iPhone' => '\biPhone\b|\biPod\b', // |\biTunes
|
177 |
+
'BlackBerry' => 'BlackBerry|\bBB10\b|rim[0-9]+',
|
178 |
+
'HTC' => 'HTC|HTC.*(Sensation|Evo|Vision|Explorer|6800|8100|8900|A7272|S510e|C110e|Legend|Desire|T8282)|APX515CKT|Qtek9090|APA9292KT|HD_mini|Sensation.*Z710e|PG86100|Z715e|Desire.*(A8181|HD)|ADR6200|ADR6400L|ADR6425|001HT|Inspire 4G|Android.*\bEVO\b|T-Mobile G1|Z520m',
|
179 |
+
'Nexus' => 'Nexus One|Nexus S|Galaxy.*Nexus|Android.*Nexus.*Mobile|Nexus 4|Nexus 5|Nexus 6',
|
180 |
+
// @todo: Is 'Dell Streak' a tablet or a phone? ;)
|
181 |
+
'Dell' => 'Dell.*Streak|Dell.*Aero|Dell.*Venue|DELL.*Venue Pro|Dell Flash|Dell Smoke|Dell Mini 3iX|XCD28|XCD35|\b001DL\b|\b101DL\b|\bGS01\b',
|
182 |
+
'Motorola' => 'Motorola|DROIDX|DROID BIONIC|\bDroid\b.*Build|Android.*Xoom|HRI39|MOT-|A1260|A1680|A555|A853|A855|A953|A955|A956|Motorola.*ELECTRIFY|Motorola.*i1|i867|i940|MB200|MB300|MB501|MB502|MB508|MB511|MB520|MB525|MB526|MB611|MB612|MB632|MB810|MB855|MB860|MB861|MB865|MB870|ME501|ME502|ME511|ME525|ME600|ME632|ME722|ME811|ME860|ME863|ME865|MT620|MT710|MT716|MT720|MT810|MT870|MT917|Motorola.*TITANIUM|WX435|WX445|XT300|XT301|XT311|XT316|XT317|XT319|XT320|XT390|XT502|XT530|XT531|XT532|XT535|XT603|XT610|XT611|XT615|XT681|XT701|XT702|XT711|XT720|XT800|XT806|XT860|XT862|XT875|XT882|XT883|XT894|XT901|XT907|XT909|XT910|XT912|XT928|XT926|XT915|XT919|XT925|XT1021|\bMoto E\b',
|
183 |
+
'Samsung' => 'Samsung|SM-G9250|GT-19300|SGH-I337|BGT-S5230|GT-B2100|GT-B2700|GT-B2710|GT-B3210|GT-B3310|GT-B3410|GT-B3730|GT-B3740|GT-B5510|GT-B5512|GT-B5722|GT-B6520|GT-B7300|GT-B7320|GT-B7330|GT-B7350|GT-B7510|GT-B7722|GT-B7800|GT-C3010|GT-C3011|GT-C3060|GT-C3200|GT-C3212|GT-C3212I|GT-C3262|GT-C3222|GT-C3300|GT-C3300K|GT-C3303|GT-C3303K|GT-C3310|GT-C3322|GT-C3330|GT-C3350|GT-C3500|GT-C3510|GT-C3530|GT-C3630|GT-C3780|GT-C5010|GT-C5212|GT-C6620|GT-C6625|GT-C6712|GT-E1050|GT-E1070|GT-E1075|GT-E1080|GT-E1081|GT-E1085|GT-E1087|GT-E1100|GT-E1107|GT-E1110|GT-E1120|GT-E1125|GT-E1130|GT-E1160|GT-E1170|GT-E1175|GT-E1180|GT-E1182|GT-E1200|GT-E1210|GT-E1225|GT-E1230|GT-E1390|GT-E2100|GT-E2120|GT-E2121|GT-E2152|GT-E2220|GT-E2222|GT-E2230|GT-E2232|GT-E2250|GT-E2370|GT-E2550|GT-E2652|GT-E3210|GT-E3213|GT-I5500|GT-I5503|GT-I5700|GT-I5800|GT-I5801|GT-I6410|GT-I6420|GT-I7110|GT-I7410|GT-I7500|GT-I8000|GT-I8150|GT-I8160|GT-I8190|GT-I8320|GT-I8330|GT-I8350|GT-I8530|GT-I8700|GT-I8703|GT-I8910|GT-I9000|GT-I9001|GT-I9003|GT-I9010|GT-I9020|GT-I9023|GT-I9070|GT-I9082|GT-I9100|GT-I9103|GT-I9220|GT-I9250|GT-I9300|GT-I9305|GT-I9500|GT-I9505|GT-M3510|GT-M5650|GT-M7500|GT-M7600|GT-M7603|GT-M8800|GT-M8910|GT-N7000|GT-S3110|GT-S3310|GT-S3350|GT-S3353|GT-S3370|GT-S3650|GT-S3653|GT-S3770|GT-S3850|GT-S5210|GT-S5220|GT-S5229|GT-S5230|GT-S5233|GT-S5250|GT-S5253|GT-S5260|GT-S5263|GT-S5270|GT-S5300|GT-S5330|GT-S5350|GT-S5360|GT-S5363|GT-S5369|GT-S5380|GT-S5380D|GT-S5560|GT-S5570|GT-S5600|GT-S5603|GT-S5610|GT-S5620|GT-S5660|GT-S5670|GT-S5690|GT-S5750|GT-S5780|GT-S5830|GT-S5839|GT-S6102|GT-S6500|GT-S7070|GT-S7200|GT-S7220|GT-S7230|GT-S7233|GT-S7250|GT-S7500|GT-S7530|GT-S7550|GT-S7562|GT-S7710|GT-S8000|GT-S8003|GT-S8500|GT-S8530|GT-S8600|SCH-A310|SCH-A530|SCH-A570|SCH-A610|SCH-A630|SCH-A650|SCH-A790|SCH-A795|SCH-A850|SCH-A870|SCH-A890|SCH-A930|SCH-A950|SCH-A970|SCH-A990|SCH-I100|SCH-I110|SCH-I400|SCH-I405|SCH-I500|SCH-I510|SCH-I515|SCH-I600|SCH-I730|SCH-I760|SCH-I770|SCH-I830|SCH-I910|SCH-I920|SCH-I959|SCH-LC11|SCH-N150|SCH-N300|SCH-R100|SCH-R300|SCH-R351|SCH-R400|SCH-R410|SCH-T300|SCH-U310|SCH-U320|SCH-U350|SCH-U360|SCH-U365|SCH-U370|SCH-U380|SCH-U410|SCH-U430|SCH-U450|SCH-U460|SCH-U470|SCH-U490|SCH-U540|SCH-U550|SCH-U620|SCH-U640|SCH-U650|SCH-U660|SCH-U700|SCH-U740|SCH-U750|SCH-U810|SCH-U820|SCH-U900|SCH-U940|SCH-U960|SCS-26UC|SGH-A107|SGH-A117|SGH-A127|SGH-A137|SGH-A157|SGH-A167|SGH-A177|SGH-A187|SGH-A197|SGH-A227|SGH-A237|SGH-A257|SGH-A437|SGH-A517|SGH-A597|SGH-A637|SGH-A657|SGH-A667|SGH-A687|SGH-A697|SGH-A707|SGH-A717|SGH-A727|SGH-A737|SGH-A747|SGH-A767|SGH-A777|SGH-A797|SGH-A817|SGH-A827|SGH-A837|SGH-A847|SGH-A867|SGH-A877|SGH-A887|SGH-A897|SGH-A927|SGH-B100|SGH-B130|SGH-B200|SGH-B220|SGH-C100|SGH-C110|SGH-C120|SGH-C130|SGH-C140|SGH-C160|SGH-C170|SGH-C180|SGH-C200|SGH-C207|SGH-C210|SGH-C225|SGH-C230|SGH-C417|SGH-C450|SGH-D307|SGH-D347|SGH-D357|SGH-D407|SGH-D415|SGH-D780|SGH-D807|SGH-D980|SGH-E105|SGH-E200|SGH-E315|SGH-E316|SGH-E317|SGH-E335|SGH-E590|SGH-E635|SGH-E715|SGH-E890|SGH-F300|SGH-F480|SGH-I200|SGH-I300|SGH-I320|SGH-I550|SGH-I577|SGH-I600|SGH-I607|SGH-I617|SGH-I627|SGH-I637|SGH-I677|SGH-I700|SGH-I717|SGH-I727|SGH-i747M|SGH-I777|SGH-I780|SGH-I827|SGH-I847|SGH-I857|SGH-I896|SGH-I897|SGH-I900|SGH-I907|SGH-I917|SGH-I927|SGH-I937|SGH-I997|SGH-J150|SGH-J200|SGH-L170|SGH-L700|SGH-M110|SGH-M150|SGH-M200|SGH-N105|SGH-N500|SGH-N600|SGH-N620|SGH-N625|SGH-N700|SGH-N710|SGH-P107|SGH-P207|SGH-P300|SGH-P310|SGH-P520|SGH-P735|SGH-P777|SGH-Q105|SGH-R210|SGH-R220|SGH-R225|SGH-S105|SGH-S307|SGH-T109|SGH-T119|SGH-T139|SGH-T209|SGH-T219|SGH-T229|SGH-T239|SGH-T249|SGH-T259|SGH-T309|SGH-T319|SGH-T329|SGH-T339|SGH-T349|SGH-T359|SGH-T369|SGH-T379|SGH-T409|SGH-T429|SGH-T439|SGH-T459|SGH-T469|SGH-T479|SGH-T499|SGH-T509|SGH-T519|SGH-T539|SGH-T559|SGH-T589|SGH-T609|SGH-T619|SGH-T629|SGH-T639|SGH-T659|SGH-T669|SGH-T679|SGH-T709|SGH-T719|SGH-T729|SGH-T739|SGH-T746|SGH-T749|SGH-T759|SGH-T769|SGH-T809|SGH-T819|SGH-T839|SGH-T919|SGH-T929|SGH-T939|SGH-T959|SGH-T989|SGH-U100|SGH-U200|SGH-U800|SGH-V205|SGH-V206|SGH-X100|SGH-X105|SGH-X120|SGH-X140|SGH-X426|SGH-X427|SGH-X475|SGH-X495|SGH-X497|SGH-X507|SGH-X600|SGH-X610|SGH-X620|SGH-X630|SGH-X700|SGH-X820|SGH-X890|SGH-Z130|SGH-Z150|SGH-Z170|SGH-ZX10|SGH-ZX20|SHW-M110|SPH-A120|SPH-A400|SPH-A420|SPH-A460|SPH-A500|SPH-A560|SPH-A600|SPH-A620|SPH-A660|SPH-A700|SPH-A740|SPH-A760|SPH-A790|SPH-A800|SPH-A820|SPH-A840|SPH-A880|SPH-A900|SPH-A940|SPH-A960|SPH-D600|SPH-D700|SPH-D710|SPH-D720|SPH-I300|SPH-I325|SPH-I330|SPH-I350|SPH-I500|SPH-I600|SPH-I700|SPH-L700|SPH-M100|SPH-M220|SPH-M240|SPH-M300|SPH-M305|SPH-M320|SPH-M330|SPH-M350|SPH-M360|SPH-M370|SPH-M380|SPH-M510|SPH-M540|SPH-M550|SPH-M560|SPH-M570|SPH-M580|SPH-M610|SPH-M620|SPH-M630|SPH-M800|SPH-M810|SPH-M850|SPH-M900|SPH-M910|SPH-M920|SPH-M930|SPH-N100|SPH-N200|SPH-N240|SPH-N300|SPH-N400|SPH-Z400|SWC-E100|SCH-i909|GT-N7100|GT-N7105|SCH-I535|SM-N900A|SGH-I317|SGH-T999L|GT-S5360B|GT-I8262|GT-S6802|GT-S6312|GT-S6310|GT-S5312|GT-S5310|GT-I9105|GT-I8510|GT-S6790N|SM-G7105|SM-N9005|GT-S5301|GT-I9295|GT-I9195|SM-C101|GT-S7392|GT-S7560|GT-B7610|GT-I5510|GT-S7582|GT-S7530E|GT-I8750|SM-G9006V|SM-G9008V|SM-G9009D|SM-G900A|SM-G900D|SM-G900F|SM-G900H|SM-G900I|SM-G900J|SM-G900K|SM-G900L|SM-G900M|SM-G900P|SM-G900R4|SM-G900S|SM-G900T|SM-G900V|SM-G900W8|SHV-E160K|SCH-P709|SCH-P729|SM-T2558|GT-I9205',
|
184 |
+
'LG' => '\bLG\b;|LG[- ]?(C800|C900|E400|E610|E900|E-900|F160|F180K|F180L|F180S|730|855|L160|LS740|LS840|LS970|LU6200|MS690|MS695|MS770|MS840|MS870|MS910|P500|P700|P705|VM696|AS680|AS695|AX840|C729|E970|GS505|272|C395|E739BK|E960|L55C|L75C|LS696|LS860|P769BK|P350|P500|P509|P870|UN272|US730|VS840|VS950|LN272|LN510|LS670|LS855|LW690|MN270|MN510|P509|P769|P930|UN200|UN270|UN510|UN610|US670|US740|US760|UX265|UX840|VN271|VN530|VS660|VS700|VS740|VS750|VS910|VS920|VS930|VX9200|VX11000|AX840A|LW770|P506|P925|P999|E612|D955|D802)',
|
185 |
+
'Sony' => 'SonyST|SonyLT|SonyEricsson|SonyEricssonLT15iv|LT18i|E10i|LT28h|LT26w|SonyEricssonMT27i|C5303|C6902|C6903|C6906|C6943|D2533',
|
186 |
+
'Asus' => 'Asus.*Galaxy|PadFone.*Mobile',
|
187 |
+
// http://www.micromaxinfo.com/mobiles/smartphones
|
188 |
+
// Added because the codes might conflict with Acer Tablets.
|
189 |
+
'Micromax' => 'Micromax.*\b(A210|A92|A88|A72|A111|A110Q|A115|A116|A110|A90S|A26|A51|A35|A54|A25|A27|A89|A68|A65|A57|A90)\b',
|
190 |
+
// @todo Complete the regex.
|
191 |
+
'Palm' => 'PalmSource|Palm', // avantgo|blazer|elaine|hiptop|plucker|xiino ;
|
192 |
+
'Vertu' => 'Vertu|Vertu.*Ltd|Vertu.*Ascent|Vertu.*Ayxta|Vertu.*Constellation(F|Quest)?|Vertu.*Monika|Vertu.*Signature', // Just for fun ;)
|
193 |
+
// http://www.pantech.co.kr/en/prod/prodList.do?gbrand=VEGA (PANTECH)
|
194 |
+
// Most of the VEGA devices are legacy. PANTECH seem to be newer devices based on Android.
|
195 |
+
'Pantech' => 'PANTECH|IM-A850S|IM-A840S|IM-A830L|IM-A830K|IM-A830S|IM-A820L|IM-A810K|IM-A810S|IM-A800S|IM-T100K|IM-A725L|IM-A780L|IM-A775C|IM-A770K|IM-A760S|IM-A750K|IM-A740S|IM-A730S|IM-A720L|IM-A710K|IM-A690L|IM-A690S|IM-A650S|IM-A630K|IM-A600S|VEGA PTL21|PT003|P8010|ADR910L|P6030|P6020|P9070|P4100|P9060|P5000|CDM8992|TXT8045|ADR8995|IS11PT|P2030|P6010|P8000|PT002|IS06|CDM8999|P9050|PT001|TXT8040|P2020|P9020|P2000|P7040|P7000|C790',
|
196 |
+
// http://www.fly-phone.com/devices/smartphones/ ; Included only smartphones.
|
197 |
+
'Fly' => 'IQ230|IQ444|IQ450|IQ440|IQ442|IQ441|IQ245|IQ256|IQ236|IQ255|IQ235|IQ245|IQ275|IQ240|IQ285|IQ280|IQ270|IQ260|IQ250',
|
198 |
+
// http://fr.wikomobile.com
|
199 |
+
'Wiko' => 'KITE 4G|HIGHWAY|GETAWAY|STAIRWAY|DARKSIDE|DARKFULL|DARKNIGHT|DARKMOON|SLIDE|WAX 4G|RAINBOW|BLOOM|SUNSET|GOA|LENNY|BARRY|IGGY|OZZY|CINK FIVE|CINK PEAX|CINK PEAX 2|CINK SLIM|CINK SLIM 2|CINK +|CINK KING|CINK PEAX|CINK SLIM|SUBLIM',
|
200 |
+
'iMobile' => 'i-mobile (IQ|i-STYLE|idea|ZAA|Hitz)',
|
201 |
+
// Added simvalley mobile just for fun. They have some interesting devices.
|
202 |
+
// http://www.simvalley.fr/telephonie---gps-_22_telephonie-mobile_telephones_.html
|
203 |
+
'SimValley' => '\b(SP-80|XT-930|SX-340|XT-930|SX-310|SP-360|SP60|SPT-800|SP-120|SPT-800|SP-140|SPX-5|SPX-8|SP-100|SPX-8|SPX-12)\b',
|
204 |
+
// Wolfgang - a brand that is sold by Aldi supermarkets.
|
205 |
+
// http://www.wolfgangmobile.com/
|
206 |
+
'Wolfgang' => 'AT-B24D|AT-AS50HD|AT-AS40W|AT-AS55HD|AT-AS45q2|AT-B26D|AT-AS50Q',
|
207 |
+
'Alcatel' => 'Alcatel',
|
208 |
+
'Nintendo' => 'Nintendo 3DS',
|
209 |
+
// http://en.wikipedia.org/wiki/Amoi
|
210 |
+
'Amoi' => 'Amoi',
|
211 |
+
// http://en.wikipedia.org/wiki/INQ
|
212 |
+
'INQ' => 'INQ',
|
213 |
+
// @Tapatalk is a mobile app; http://support.tapatalk.com/threads/smf-2-0-2-os-and-browser-detection-plugin-and-tapatalk.15565/#post-79039
|
214 |
+
'GenericPhone' => 'Tapatalk|PDA;|SAGEM|\bmmp\b|pocket|\bpsp\b|symbian|Smartphone|smartfon|treo|up.browser|up.link|vodafone|\bwap\b|nokia|Series40|Series60|S60|SonyEricsson|N900|MAUI.*WAP.*Browser',
|
215 |
+
);
|
216 |
+
|
217 |
+
/**
|
218 |
+
* List of tablet devices.
|
219 |
+
*
|
220 |
+
* @var array
|
221 |
+
*/
|
222 |
+
protected static $tabletDevices = array(
|
223 |
+
'iPad' => 'iPad|iPad.*Mobile', // @todo: check for mobile friendly emails topic.
|
224 |
+
'NexusTablet' => 'Android.*Nexus[\s]+(7|9|10)|^.*Android.*Nexus(?:(?!Mobile).)*$',
|
225 |
+
'SamsungTablet' => 'SAMSUNG.*Tablet|Galaxy.*Tab|SC-01C|GT-P1000|GT-P1003|GT-P1010|GT-P3105|GT-P6210|GT-P6800|GT-P6810|GT-P7100|GT-P7300|GT-P7310|GT-P7500|GT-P7510|SCH-I800|SCH-I815|SCH-I905|SGH-I957|SGH-I987|SGH-T849|SGH-T859|SGH-T869|SPH-P100|GT-P3100|GT-P3108|GT-P3110|GT-P5100|GT-P5110|GT-P6200|GT-P7320|GT-P7511|GT-N8000|GT-P8510|SGH-I497|SPH-P500|SGH-T779|SCH-I705|SCH-I915|GT-N8013|GT-P3113|GT-P5113|GT-P8110|GT-N8010|GT-N8005|GT-N8020|GT-P1013|GT-P6201|GT-P7501|GT-N5100|GT-N5105|GT-N5110|SHV-E140K|SHV-E140L|SHV-E140S|SHV-E150S|SHV-E230K|SHV-E230L|SHV-E230S|SHW-M180K|SHW-M180L|SHW-M180S|SHW-M180W|SHW-M300W|SHW-M305W|SHW-M380K|SHW-M380S|SHW-M380W|SHW-M430W|SHW-M480K|SHW-M480S|SHW-M480W|SHW-M485W|SHW-M486W|SHW-M500W|GT-I9228|SCH-P739|SCH-I925|GT-I9200|GT-P5200|GT-P5210|GT-P5210X|SM-T311|SM-T310|SM-T310X|SM-T210|SM-T210R|SM-T211|SM-P600|SM-P601|SM-P605|SM-P900|SM-P901|SM-T217|SM-T217A|SM-T217S|SM-P6000|SM-T3100|SGH-I467|XE500|SM-T110|GT-P5220|GT-I9200X|GT-N5110X|GT-N5120|SM-P905|SM-T111|SM-T2105|SM-T315|SM-T320|SM-T320X|SM-T321|SM-T520|SM-T525|SM-T530NU|SM-T230NU|SM-T330NU|SM-T900|XE500T1C|SM-P605V|SM-P905V|SM-T337V|SM-T537V|SM-T707V|SM-T807V|SM-P600X|SM-P900X|SM-T210X|SM-T230|SM-T230X|SM-T325|GT-P7503|SM-T531|SM-T330|SM-T530|SM-T705|SM-T705C|SM-T535|SM-T331|SM-T800|SM-T700|SM-T537|SM-T807|SM-P907A|SM-T337A|SM-T537A|SM-T707A|SM-T807A|SM-T237|SM-T807P|SM-P607T|SM-T217T|SM-T337T|SM-T807T|SM-T116NQ|SM-P550|SM-T350|SM-T550|SM-T9000|SM-P9000|SM-T705Y|SM-T805|GT-P3113|SM-T710|SM-T810|SM-T360', // SCH-P709|SCH-P729|SM-T2558|GT-I9205 - Samsung Mega - treat them like a regular phone.
|
226 |
+
// http://docs.aws.amazon.com/silk/latest/developerguide/user-agent.html
|
227 |
+
'Kindle' => 'Kindle|Silk.*Accelerated|Android.*\b(KFOT|KFTT|KFJWI|KFJWA|KFOTE|KFSOWI|KFTHWI|KFTHWA|KFAPWI|KFAPWA|WFJWAE|KFSAWA|KFSAWI|KFASWI)\b',
|
228 |
+
// Only the Surface tablets with Windows RT are considered mobile.
|
229 |
+
// http://msdn.microsoft.com/en-us/library/ie/hh920767(v=vs.85).aspx
|
230 |
+
'SurfaceTablet' => 'Windows NT [0-9.]+; ARM;.*(Tablet|ARMBJS)',
|
231 |
+
// http://shopping1.hp.com/is-bin/INTERSHOP.enfinity/WFS/WW-USSMBPublicStore-Site/en_US/-/USD/ViewStandardCatalog-Browse?CatalogCategoryID=JfIQ7EN5lqMAAAEyDcJUDwMT
|
232 |
+
'HPTablet' => 'HP Slate (7|8|10)|HP ElitePad 900|hp-tablet|EliteBook.*Touch|HP 8|Slate 21|HP SlateBook 10',
|
233 |
+
// Watch out for PadFone, see #132.
|
234 |
+
// http://www.asus.com/de/Tablets_Mobile/Memo_Pad_Products/
|
235 |
+
'AsusTablet' => '^.*PadFone((?!Mobile).)*$|Transformer|TF101|TF101G|TF300T|TF300TG|TF300TL|TF700T|TF700KL|TF701T|TF810C|ME171|ME301T|ME302C|ME371MG|ME370T|ME372MG|ME172V|ME173X|ME400C|Slider SL101|\bK00F\b|\bK00C\b|\bK00E\b|\bK00L\b|TX201LA|ME176C|ME102A|\bM80TA\b|ME372CL|ME560CG|ME372CG|ME302KL| K010 | K017 |ME572C|ME103K|ME170C|ME171C|\bME70C\b|ME581C|ME581CL|ME8510C|ME181C',
|
236 |
+
'BlackBerryTablet' => 'PlayBook|RIM Tablet',
|
237 |
+
'HTCtablet' => 'HTC_Flyer_P512|HTC Flyer|HTC Jetstream|HTC-P715a|HTC EVO View 4G|PG41200|PG09410',
|
238 |
+
'MotorolaTablet' => 'xoom|sholest|MZ615|MZ605|MZ505|MZ601|MZ602|MZ603|MZ604|MZ606|MZ607|MZ608|MZ609|MZ615|MZ616|MZ617',
|
239 |
+
'NookTablet' => 'Android.*Nook|NookColor|nook browser|BNRV200|BNRV200A|BNTV250|BNTV250A|BNTV400|BNTV600|LogicPD Zoom2',
|
240 |
+
// http://www.acer.ro/ac/ro/RO/content/drivers
|
241 |
+
// http://www.packardbell.co.uk/pb/en/GB/content/download (Packard Bell is part of Acer)
|
242 |
+
// http://us.acer.com/ac/en/US/content/group/tablets
|
243 |
+
// http://www.acer.de/ac/de/DE/content/models/tablets/
|
244 |
+
// Can conflict with Micromax and Motorola phones codes.
|
245 |
+
'AcerTablet' => 'Android.*; \b(A100|A101|A110|A200|A210|A211|A500|A501|A510|A511|A700|A701|W500|W500P|W501|W501P|W510|W511|W700|G100|G100W|B1-A71|B1-710|B1-711|A1-810|A1-811|A1-830)\b|W3-810|\bA3-A10\b|\bA3-A11\b',
|
246 |
+
// http://eu.computers.toshiba-europe.com/innovation/family/Tablets/1098744/banner_id/tablet_footerlink/
|
247 |
+
// http://us.toshiba.com/tablets/tablet-finder
|
248 |
+
// http://www.toshiba.co.jp/regza/tablet/
|
249 |
+
'ToshibaTablet' => 'Android.*(AT100|AT105|AT200|AT205|AT270|AT275|AT300|AT305|AT1S5|AT500|AT570|AT700|AT830)|TOSHIBA.*FOLIO',
|
250 |
+
// http://www.nttdocomo.co.jp/english/service/developer/smart_phone/technical_info/spec/index.html
|
251 |
+
// http://www.lg.com/us/tablets
|
252 |
+
'LGTablet' => '\bL-06C|LG-V909|LG-V900|LG-V700|LG-V510|LG-V500|LG-V410|LG-V400|LG-VK810\b',
|
253 |
+
'FujitsuTablet' => 'Android.*\b(F-01D|F-02F|F-05E|F-10D|M532|Q572)\b',
|
254 |
+
// Prestigio Tablets http://www.prestigio.com/support
|
255 |
+
'PrestigioTablet' => 'PMP3170B|PMP3270B|PMP3470B|PMP7170B|PMP3370B|PMP3570C|PMP5870C|PMP3670B|PMP5570C|PMP5770D|PMP3970B|PMP3870C|PMP5580C|PMP5880D|PMP5780D|PMP5588C|PMP7280C|PMP7280C3G|PMP7280|PMP7880D|PMP5597D|PMP5597|PMP7100D|PER3464|PER3274|PER3574|PER3884|PER5274|PER5474|PMP5097CPRO|PMP5097|PMP7380D|PMP5297C|PMP5297C_QUAD',
|
256 |
+
// http://support.lenovo.com/en_GB/downloads/default.page?#
|
257 |
+
'LenovoTablet' => 'Idea(Tab|Pad)( A1|A10| K1|)|ThinkPad([ ]+)?Tablet|Lenovo.*(S2109|S2110|S5000|S6000|K3011|A3000|A3500|A1000|A2107|A2109|A1107|A5500|A7600|B6000|B8000|B8080)(-|)(FL|F|HV|H|)',
|
258 |
+
// http://www.dell.com/support/home/us/en/04/Products/tab_mob/tablets
|
259 |
+
'DellTablet' => 'Venue 11|Venue 8|Venue 7|Dell Streak 10|Dell Streak 7',
|
260 |
+
// http://www.yarvik.com/en/matrix/tablets/
|
261 |
+
'YarvikTablet' => 'Android.*\b(TAB210|TAB211|TAB224|TAB250|TAB260|TAB264|TAB310|TAB360|TAB364|TAB410|TAB411|TAB420|TAB424|TAB450|TAB460|TAB461|TAB464|TAB465|TAB467|TAB468|TAB07-100|TAB07-101|TAB07-150|TAB07-151|TAB07-152|TAB07-200|TAB07-201-3G|TAB07-210|TAB07-211|TAB07-212|TAB07-214|TAB07-220|TAB07-400|TAB07-485|TAB08-150|TAB08-200|TAB08-201-3G|TAB08-201-30|TAB09-100|TAB09-211|TAB09-410|TAB10-150|TAB10-201|TAB10-211|TAB10-400|TAB10-410|TAB13-201|TAB274EUK|TAB275EUK|TAB374EUK|TAB462EUK|TAB474EUK|TAB9-200)\b',
|
262 |
+
'MedionTablet' => 'Android.*\bOYO\b|LIFE.*(P9212|P9514|P9516|S9512)|LIFETAB',
|
263 |
+
'ArnovaTablet' => 'AN10G2|AN7bG3|AN7fG3|AN8G3|AN8cG3|AN7G3|AN9G3|AN7dG3|AN7dG3ST|AN7dG3ChildPad|AN10bG3|AN10bG3DT|AN9G2',
|
264 |
+
// http://www.intenso.de/kategorie_en.php?kategorie=33
|
265 |
+
// @todo: http://www.nbhkdz.com/read/b8e64202f92a2df129126bff.html - investigate
|
266 |
+
'IntensoTablet' => 'INM8002KP|INM1010FP|INM805ND|Intenso Tab|TAB1004',
|
267 |
+
// IRU.ru Tablets http://www.iru.ru/catalog/soho/planetable/
|
268 |
+
'IRUTablet' => 'M702pro',
|
269 |
+
'MegafonTablet' => 'MegaFon V9|\bZTE V9\b|Android.*\bMT7A\b',
|
270 |
+
// http://www.e-boda.ro/tablete-pc.html
|
271 |
+
'EbodaTablet' => 'E-Boda (Supreme|Impresspeed|Izzycomm|Essential)',
|
272 |
+
// http://www.allview.ro/produse/droseries/lista-tablete-pc/
|
273 |
+
'AllViewTablet' => 'Allview.*(Viva|Alldro|City|Speed|All TV|Frenzy|Quasar|Shine|TX1|AX1|AX2)',
|
274 |
+
// http://wiki.archosfans.com/index.php?title=Main_Page
|
275 |
+
'ArchosTablet' => '\b(101G9|80G9|A101IT)\b|Qilive 97R|Archos5|\bARCHOS (70|79|80|90|97|101|FAMILYPAD|)(b|)(G10| Cobalt| TITANIUM(HD|)| Xenon| Neon|XSK| 2| XS 2| PLATINUM| CARBON|GAMEPAD)\b',
|
276 |
+
// http://www.ainol.com/plugin.php?identifier=ainol&module=product
|
277 |
+
'AinolTablet' => 'NOVO7|NOVO8|NOVO10|Novo7Aurora|Novo7Basic|NOVO7PALADIN|novo9-Spark',
|
278 |
+
// @todo: inspect http://esupport.sony.com/US/p/select-system.pl?DIRECTOR=DRIVER
|
279 |
+
// Readers http://www.atsuhiro-me.net/ebook/sony-reader/sony-reader-web-browser
|
280 |
+
// http://www.sony.jp/support/tablet/
|
281 |
+
'SonyTablet' => 'Sony.*Tablet|Xperia Tablet|Sony Tablet S|SO-03E|SGPT12|SGPT13|SGPT114|SGPT121|SGPT122|SGPT123|SGPT111|SGPT112|SGPT113|SGPT131|SGPT132|SGPT133|SGPT211|SGPT212|SGPT213|SGP311|SGP312|SGP321|EBRD1101|EBRD1102|EBRD1201|SGP351|SGP341|SGP511|SGP512|SGP521|SGP541|SGP551|SGP621|SGP612',
|
282 |
+
// http://www.support.philips.com/support/catalog/worldproducts.jsp?userLanguage=en&userCountry=cn&categoryid=3G_LTE_TABLET_SU_CN_CARE&title=3G%20tablets%20/%20LTE%20range&_dyncharset=UTF-8
|
283 |
+
'PhilipsTablet' => '\b(PI2010|PI3000|PI3100|PI3105|PI3110|PI3205|PI3210|PI3900|PI4010|PI7000|PI7100)\b',
|
284 |
+
// db + http://www.cube-tablet.com/buy-products.html
|
285 |
+
'CubeTablet' => 'Android.*(K8GT|U9GT|U10GT|U16GT|U17GT|U18GT|U19GT|U20GT|U23GT|U30GT)|CUBE U8GT',
|
286 |
+
// http://www.cobyusa.com/?p=pcat&pcat_id=3001
|
287 |
+
'CobyTablet' => 'MID1042|MID1045|MID1125|MID1126|MID7012|MID7014|MID7015|MID7034|MID7035|MID7036|MID7042|MID7048|MID7127|MID8042|MID8048|MID8127|MID9042|MID9740|MID9742|MID7022|MID7010',
|
288 |
+
// http://www.match.net.cn/products.asp
|
289 |
+
'MIDTablet' => 'M9701|M9000|M9100|M806|M1052|M806|T703|MID701|MID713|MID710|MID727|MID760|MID830|MID728|MID933|MID125|MID810|MID732|MID120|MID930|MID800|MID731|MID900|MID100|MID820|MID735|MID980|MID130|MID833|MID737|MID960|MID135|MID860|MID736|MID140|MID930|MID835|MID733',
|
290 |
+
// http://www.msi.com/support
|
291 |
+
// @todo Research the Windows Tablets.
|
292 |
+
'MSITablet' => 'MSI \b(Primo 73K|Primo 73L|Primo 81L|Primo 77|Primo 93|Primo 75|Primo 76|Primo 73|Primo 81|Primo 91|Primo 90|Enjoy 71|Enjoy 7|Enjoy 10)\b',
|
293 |
+
// @todo http://www.kyoceramobile.com/support/drivers/
|
294 |
+
// 'KyoceraTablet' => null,
|
295 |
+
// @todo http://intexuae.com/index.php/category/mobile-devices/tablets-products/
|
296 |
+
// 'IntextTablet' => null,
|
297 |
+
// http://pdadb.net/index.php?m=pdalist&list=SMiT (NoName Chinese Tablets)
|
298 |
+
// http://www.imp3.net/14/show.php?itemid=20454
|
299 |
+
'SMiTTablet' => 'Android.*(\bMID\b|MID-560|MTV-T1200|MTV-PND531|MTV-P1101|MTV-PND530)',
|
300 |
+
// http://www.rock-chips.com/index.php?do=prod&pid=2
|
301 |
+
'RockChipTablet' => 'Android.*(RK2818|RK2808A|RK2918|RK3066)|RK2738|RK2808A',
|
302 |
+
// http://www.fly-phone.com/devices/tablets/ ; http://www.fly-phone.com/service/
|
303 |
+
'FlyTablet' => 'IQ310|Fly Vision',
|
304 |
+
// http://www.bqreaders.com/gb/tablets-prices-sale.html
|
305 |
+
'bqTablet' => '(bq)?.*(Elcano|Curie|Edison|Maxwell|Kepler|Pascal|Tesla|Hypatia|Platon|Newton|Livingstone|Cervantes|Avant|Aquaris E10)|Maxwell.*Lite|Maxwell.*Plus',
|
306 |
+
// http://www.huaweidevice.com/worldwide/productFamily.do?method=index&directoryId=5011&treeId=3290
|
307 |
+
// http://www.huaweidevice.com/worldwide/downloadCenter.do?method=index&directoryId=3372&treeId=0&tb=1&type=software (including legacy tablets)
|
308 |
+
'HuaweiTablet' => 'MediaPad|MediaPad 7 Youth|IDEOS S7|S7-201c|S7-202u|S7-101|S7-103|S7-104|S7-105|S7-106|S7-201|S7-Slim',
|
309 |
+
// Nec or Medias Tab
|
310 |
+
'NecTablet' => '\bN-06D|\bN-08D',
|
311 |
+
// Pantech Tablets: http://www.pantechusa.com/phones/
|
312 |
+
'PantechTablet' => 'Pantech.*P4100',
|
313 |
+
// Broncho Tablets: http://www.broncho.cn/ (hard to find)
|
314 |
+
'BronchoTablet' => 'Broncho.*(N701|N708|N802|a710)',
|
315 |
+
// http://versusuk.com/support.html
|
316 |
+
'VersusTablet' => 'TOUCHPAD.*[78910]|\bTOUCHTAB\b',
|
317 |
+
// http://www.zync.in/index.php/our-products/tablet-phablets
|
318 |
+
'ZyncTablet' => 'z1000|Z99 2G|z99|z930|z999|z990|z909|Z919|z900',
|
319 |
+
// http://www.positivoinformatica.com.br/www/pessoal/tablet-ypy/
|
320 |
+
'PositivoTablet' => 'TB07STA|TB10STA|TB07FTA|TB10FTA',
|
321 |
+
// https://www.nabitablet.com/
|
322 |
+
'NabiTablet' => 'Android.*\bNabi',
|
323 |
+
'KoboTablet' => 'Kobo Touch|\bK080\b|\bVox\b Build|\bArc\b Build',
|
324 |
+
// French Danew Tablets http://www.danew.com/produits-tablette.php
|
325 |
+
'DanewTablet' => 'DSlide.*\b(700|701R|702|703R|704|802|970|971|972|973|974|1010|1012)\b',
|
326 |
+
// Texet Tablets and Readers http://www.texet.ru/tablet/
|
327 |
+
'TexetTablet' => 'NaviPad|TB-772A|TM-7045|TM-7055|TM-9750|TM-7016|TM-7024|TM-7026|TM-7041|TM-7043|TM-7047|TM-8041|TM-9741|TM-9747|TM-9748|TM-9751|TM-7022|TM-7021|TM-7020|TM-7011|TM-7010|TM-7023|TM-7025|TM-7037W|TM-7038W|TM-7027W|TM-9720|TM-9725|TM-9737W|TM-1020|TM-9738W|TM-9740|TM-9743W|TB-807A|TB-771A|TB-727A|TB-725A|TB-719A|TB-823A|TB-805A|TB-723A|TB-715A|TB-707A|TB-705A|TB-709A|TB-711A|TB-890HD|TB-880HD|TB-790HD|TB-780HD|TB-770HD|TB-721HD|TB-710HD|TB-434HD|TB-860HD|TB-840HD|TB-760HD|TB-750HD|TB-740HD|TB-730HD|TB-722HD|TB-720HD|TB-700HD|TB-500HD|TB-470HD|TB-431HD|TB-430HD|TB-506|TB-504|TB-446|TB-436|TB-416|TB-146SE|TB-126SE',
|
328 |
+
// Avoid detecting 'PLAYSTATION 3' as mobile.
|
329 |
+
'PlaystationTablet' => 'Playstation.*(Portable|Vita)',
|
330 |
+
// http://www.trekstor.de/surftabs.html
|
331 |
+
'TrekstorTablet' => 'ST10416-1|VT10416-1|ST70408-1|ST702xx-1|ST702xx-2|ST80208|ST97216|ST70104-2|VT10416-2|ST10216-2A|SurfTab',
|
332 |
+
// http://www.pyleaudio.com/Products.aspx?%2fproducts%2fPersonal-Electronics%2fTablets
|
333 |
+
'PyleAudioTablet' => '\b(PTBL10CEU|PTBL10C|PTBL72BC|PTBL72BCEU|PTBL7CEU|PTBL7C|PTBL92BC|PTBL92BCEU|PTBL9CEU|PTBL9CUK|PTBL9C)\b',
|
334 |
+
// http://www.advandigital.com/index.php?link=content-product&jns=JP001
|
335 |
+
// because of the short codenames we have to include whitespaces to reduce the possible conflicts.
|
336 |
+
'AdvanTablet' => 'Android.* \b(E3A|T3X|T5C|T5B|T3E|T3C|T3B|T1J|T1F|T2A|T1H|T1i|E1C|T1-E|T5-A|T4|E1-B|T2Ci|T1-B|T1-D|O1-A|E1-A|T1-A|T3A|T4i)\b ',
|
337 |
+
// http://www.danytech.com/category/tablet-pc
|
338 |
+
'DanyTechTablet' => 'Genius Tab G3|Genius Tab S2|Genius Tab Q3|Genius Tab G4|Genius Tab Q4|Genius Tab G-II|Genius TAB GII|Genius TAB GIII|Genius Tab S1',
|
339 |
+
// http://www.galapad.net/product.html
|
340 |
+
'GalapadTablet' => 'Android.*\bG1\b',
|
341 |
+
// http://www.micromaxinfo.com/tablet/funbook
|
342 |
+
'MicromaxTablet' => 'Funbook|Micromax.*\b(P250|P560|P360|P362|P600|P300|P350|P500|P275)\b',
|
343 |
+
// http://www.karbonnmobiles.com/products_tablet.php
|
344 |
+
'KarbonnTablet' => 'Android.*\b(A39|A37|A34|ST8|ST10|ST7|Smart Tab3|Smart Tab2)\b',
|
345 |
+
// http://www.myallfine.com/Products.asp
|
346 |
+
'AllFineTablet' => 'Fine7 Genius|Fine7 Shine|Fine7 Air|Fine8 Style|Fine9 More|Fine10 Joy|Fine11 Wide',
|
347 |
+
// http://www.proscanvideo.com/products-search.asp?itemClass=TABLET&itemnmbr=
|
348 |
+
'PROSCANTablet' => '\b(PEM63|PLT1023G|PLT1041|PLT1044|PLT1044G|PLT1091|PLT4311|PLT4311PL|PLT4315|PLT7030|PLT7033|PLT7033D|PLT7035|PLT7035D|PLT7044K|PLT7045K|PLT7045KB|PLT7071KG|PLT7072|PLT7223G|PLT7225G|PLT7777G|PLT7810K|PLT7849G|PLT7851G|PLT7852G|PLT8015|PLT8031|PLT8034|PLT8036|PLT8080K|PLT8082|PLT8088|PLT8223G|PLT8234G|PLT8235G|PLT8816K|PLT9011|PLT9045K|PLT9233G|PLT9735|PLT9760G|PLT9770G)\b',
|
349 |
+
// http://www.yonesnav.com/products/products.php
|
350 |
+
'YONESTablet' => 'BQ1078|BC1003|BC1077|RK9702|BC9730|BC9001|IT9001|BC7008|BC7010|BC708|BC728|BC7012|BC7030|BC7027|BC7026',
|
351 |
+
// http://www.cjshowroom.com/eproducts.aspx?classcode=004001001
|
352 |
+
// China manufacturer makes tablets for different small brands (eg. http://www.zeepad.net/index.html)
|
353 |
+
'ChangJiaTablet' => 'TPC7102|TPC7103|TPC7105|TPC7106|TPC7107|TPC7201|TPC7203|TPC7205|TPC7210|TPC7708|TPC7709|TPC7712|TPC7110|TPC8101|TPC8103|TPC8105|TPC8106|TPC8203|TPC8205|TPC8503|TPC9106|TPC9701|TPC97101|TPC97103|TPC97105|TPC97106|TPC97111|TPC97113|TPC97203|TPC97603|TPC97809|TPC97205|TPC10101|TPC10103|TPC10106|TPC10111|TPC10203|TPC10205|TPC10503',
|
354 |
+
// http://www.gloryunion.cn/products.asp
|
355 |
+
// http://www.allwinnertech.com/en/apply/mobile.html
|
356 |
+
// http://www.ptcl.com.pk/pd_content.php?pd_id=284 (EVOTAB)
|
357 |
+
// @todo: Softwiner tablets?
|
358 |
+
// aka. Cute or Cool tablets. Not sure yet, must research to avoid collisions.
|
359 |
+
'GUTablet' => 'TX-A1301|TX-M9002|Q702|kf026', // A12R|D75A|D77|D79|R83|A95|A106C|R15|A75|A76|D71|D72|R71|R73|R77|D82|R85|D92|A97|D92|R91|A10F|A77F|W71F|A78F|W78F|W81F|A97F|W91F|W97F|R16G|C72|C73E|K72|K73|R96G
|
360 |
+
// http://www.pointofview-online.com/showroom.php?shop_mode=product_listing&category_id=118
|
361 |
+
'PointOfViewTablet' => 'TAB-P506|TAB-navi-7-3G-M|TAB-P517|TAB-P-527|TAB-P701|TAB-P703|TAB-P721|TAB-P731N|TAB-P741|TAB-P825|TAB-P905|TAB-P925|TAB-PR945|TAB-PL1015|TAB-P1025|TAB-PI1045|TAB-P1325|TAB-PROTAB[0-9]+|TAB-PROTAB25|TAB-PROTAB26|TAB-PROTAB27|TAB-PROTAB26XL|TAB-PROTAB2-IPS9|TAB-PROTAB30-IPS9|TAB-PROTAB25XXL|TAB-PROTAB26-IPS10|TAB-PROTAB30-IPS10',
|
362 |
+
// http://www.overmax.pl/pl/katalog-produktow,p8/tablety,c14/
|
363 |
+
// @todo: add more tests.
|
364 |
+
'OvermaxTablet' => 'OV-(SteelCore|NewBase|Basecore|Baseone|Exellen|Quattor|EduTab|Solution|ACTION|BasicTab|TeddyTab|MagicTab|Stream|TB-08|TB-09)',
|
365 |
+
// http://hclmetablet.com/India/index.php
|
366 |
+
'HCLTablet' => 'HCL.*Tablet|Connect-3G-2.0|Connect-2G-2.0|ME Tablet U1|ME Tablet U2|ME Tablet G1|ME Tablet X1|ME Tablet Y2|ME Tablet Sync',
|
367 |
+
// http://www.edigital.hu/Tablet_es_e-book_olvaso/Tablet-c18385.html
|
368 |
+
'DPSTablet' => 'DPS Dream 9|DPS Dual 7',
|
369 |
+
// http://www.visture.com/index.asp
|
370 |
+
'VistureTablet' => 'V97 HD|i75 3G|Visture V4( HD)?|Visture V5( HD)?|Visture V10',
|
371 |
+
// http://www.mijncresta.nl/tablet
|
372 |
+
'CrestaTablet' => 'CTP(-)?810|CTP(-)?818|CTP(-)?828|CTP(-)?838|CTP(-)?888|CTP(-)?978|CTP(-)?980|CTP(-)?987|CTP(-)?988|CTP(-)?989',
|
373 |
+
// MediaTek - http://www.mediatek.com/_en/01_products/02_proSys.php?cata_sn=1&cata1_sn=1&cata2_sn=309
|
374 |
+
'MediatekTablet' => '\bMT8125|MT8389|MT8135|MT8377\b',
|
375 |
+
// Concorde tab
|
376 |
+
'ConcordeTablet' => 'Concorde([ ]+)?Tab|ConCorde ReadMan',
|
377 |
+
// GoClever Tablets - http://www.goclever.com/uk/products,c1/tablet,c5/
|
378 |
+
'GoCleverTablet' => 'GOCLEVER TAB|A7GOCLEVER|M1042|M7841|M742|R1042BK|R1041|TAB A975|TAB A7842|TAB A741|TAB A741L|TAB M723G|TAB M721|TAB A1021|TAB I921|TAB R721|TAB I720|TAB T76|TAB R70|TAB R76.2|TAB R106|TAB R83.2|TAB M813G|TAB I721|GCTA722|TAB I70|TAB I71|TAB S73|TAB R73|TAB R74|TAB R93|TAB R75|TAB R76.1|TAB A73|TAB A93|TAB A93.2|TAB T72|TAB R83|TAB R974|TAB R973|TAB A101|TAB A103|TAB A104|TAB A104.2|R105BK|M713G|A972BK|TAB A971|TAB R974.2|TAB R104|TAB R83.3|TAB A1042',
|
379 |
+
// Modecom Tablets - http://www.modecom.eu/tablets/portal/
|
380 |
+
'ModecomTablet' => 'FreeTAB 9000|FreeTAB 7.4|FreeTAB 7004|FreeTAB 7800|FreeTAB 2096|FreeTAB 7.5|FreeTAB 1014|FreeTAB 1001 |FreeTAB 8001|FreeTAB 9706|FreeTAB 9702|FreeTAB 7003|FreeTAB 7002|FreeTAB 1002|FreeTAB 7801|FreeTAB 1331|FreeTAB 1004|FreeTAB 8002|FreeTAB 8014|FreeTAB 9704|FreeTAB 1003',
|
381 |
+
// Vonino Tablets - http://www.vonino.eu/tablets
|
382 |
+
'VoninoTablet' => '\b(Argus[ _]?S|Diamond[ _]?79HD|Emerald[ _]?78E|Luna[ _]?70C|Onyx[ _]?S|Onyx[ _]?Z|Orin[ _]?HD|Orin[ _]?S|Otis[ _]?S|SpeedStar[ _]?S|Magnet[ _]?M9|Primus[ _]?94[ _]?3G|Primus[ _]?94HD|Primus[ _]?QS|Android.*\bQ8\b|Sirius[ _]?EVO[ _]?QS|Sirius[ _]?QS|Spirit[ _]?S)\b',
|
383 |
+
// ECS Tablets - http://www.ecs.com.tw/ECSWebSite/Product/Product_Tablet_List.aspx?CategoryID=14&MenuID=107&childid=M_107&LanID=0
|
384 |
+
'ECSTablet' => 'V07OT2|TM105A|S10OT1|TR10CS1',
|
385 |
+
// Storex Tablets - http://storex.fr/espace_client/support.html
|
386 |
+
// @note: no need to add all the tablet codes since they are guided by the first regex.
|
387 |
+
'StorexTablet' => 'eZee[_\']?(Tab|Go)[0-9]+|TabLC7|Looney Tunes Tab',
|
388 |
+
// Generic Vodafone tablets.
|
389 |
+
'VodafoneTablet' => 'SmartTab([ ]+)?[0-9]+|SmartTabII10|SmartTabII7',
|
390 |
+
// French tablets - Essentiel B http://www.boulanger.fr/tablette_tactile_e-book/tablette_tactile_essentiel_b/cl_68908.htm?multiChoiceToDelete=brand&mc_brand=essentielb
|
391 |
+
// Aka: http://www.essentielb.fr/
|
392 |
+
'EssentielBTablet' => 'Smart[ \']?TAB[ ]+?[0-9]+|Family[ \']?TAB2',
|
393 |
+
// Ross & Moor - http://ross-moor.ru/
|
394 |
+
'RossMoorTablet' => 'RM-790|RM-997|RMD-878G|RMD-974R|RMT-705A|RMT-701|RME-601|RMT-501|RMT-711',
|
395 |
+
// i-mobile http://product.i-mobilephone.com/Mobile_Device
|
396 |
+
'iMobileTablet' => 'i-mobile i-note',
|
397 |
+
// http://www.tolino.de/de/vergleichen/
|
398 |
+
'TolinoTablet' => 'tolino tab [0-9.]+|tolino shine',
|
399 |
+
// AudioSonic - a Kmart brand
|
400 |
+
// http://www.kmart.com.au/webapp/wcs/stores/servlet/Search?langId=-1&storeId=10701&catalogId=10001&categoryId=193001&pageSize=72¤tPage=1&searchCategory=193001%2b4294965664&sortBy=p_MaxPrice%7c1
|
401 |
+
'AudioSonicTablet' => '\bC-22Q|T7-QC|T-17B|T-17P\b',
|
402 |
+
// AMPE Tablets - http://www.ampe.com.my/product-category/tablets/
|
403 |
+
// @todo: add them gradually to avoid conflicts.
|
404 |
+
'AMPETablet' => 'Android.* A78 ',
|
405 |
+
// Skk Mobile - http://skkmobile.com.ph/product_tablets.php
|
406 |
+
'SkkTablet' => 'Android.* (SKYPAD|PHOENIX|CYCLOPS)',
|
407 |
+
// Tecno Mobile (only tablet) - http://www.tecno-mobile.com/index.php/product?filterby=smart&list_order=all&page=1
|
408 |
+
'TecnoTablet' => 'TECNO P9',
|
409 |
+
// JXD (consoles & tablets) - http://jxd.hk/products.asp?selectclassid=009008&clsid=3
|
410 |
+
'JXDTablet' => 'Android.*\b(F3000|A3300|JXD5000|JXD3000|JXD2000|JXD300B|JXD300|S5800|S7800|S602b|S5110b|S7300|S5300|S602|S603|S5100|S5110|S601|S7100a|P3000F|P3000s|P101|P200s|P1000m|P200m|P9100|P1000s|S6600b|S908|P1000|P300|S18|S6600|S9100)\b',
|
411 |
+
// i-Joy tablets - http://www.i-joy.es/en/cat/products/tablets/
|
412 |
+
'iJoyTablet' => 'Tablet (Spirit 7|Essentia|Galatea|Fusion|Onix 7|Landa|Titan|Scooby|Deox|Stella|Themis|Argon|Unique 7|Sygnus|Hexen|Finity 7|Cream|Cream X2|Jade|Neon 7|Neron 7|Kandy|Scape|Saphyr 7|Rebel|Biox|Rebel|Rebel 8GB|Myst|Draco 7|Myst|Tab7-004|Myst|Tadeo Jones|Tablet Boing|Arrow|Draco Dual Cam|Aurix|Mint|Amity|Revolution|Finity 9|Neon 9|T9w|Amity 4GB Dual Cam|Stone 4GB|Stone 8GB|Andromeda|Silken|X2|Andromeda II|Halley|Flame|Saphyr 9,7|Touch 8|Planet|Triton|Unique 10|Hexen 10|Memphis 4GB|Memphis 8GB|Onix 10)',
|
413 |
+
// http://www.intracon.eu/tablet
|
414 |
+
'FX2Tablet' => 'FX2 PAD7|FX2 PAD10',
|
415 |
+
// http://www.xoro.de/produkte/
|
416 |
+
// @note: Might be the same brand with 'Simply tablets'
|
417 |
+
'XoroTablet' => 'KidsPAD 701|PAD[ ]?712|PAD[ ]?714|PAD[ ]?716|PAD[ ]?717|PAD[ ]?718|PAD[ ]?720|PAD[ ]?721|PAD[ ]?722|PAD[ ]?790|PAD[ ]?792|PAD[ ]?900|PAD[ ]?9715D|PAD[ ]?9716DR|PAD[ ]?9718DR|PAD[ ]?9719QR|PAD[ ]?9720QR|TelePAD1030|Telepad1032|TelePAD730|TelePAD731|TelePAD732|TelePAD735Q|TelePAD830|TelePAD9730|TelePAD795|MegaPAD 1331|MegaPAD 1851|MegaPAD 2151',
|
418 |
+
// http://www1.viewsonic.com/products/computing/tablets/
|
419 |
+
'ViewsonicTablet' => 'ViewPad 10pi|ViewPad 10e|ViewPad 10s|ViewPad E72|ViewPad7|ViewPad E100|ViewPad 7e|ViewSonic VB733|VB100a',
|
420 |
+
// http://www.odys.de/web/internet-tablet_en.html
|
421 |
+
'OdysTablet' => 'LOOX|XENO10|ODYS[ -](Space|EVO|Xpress|NOON)|\bXELIO\b|Xelio10Pro|XELIO7PHONETAB|XELIO10EXTREME|XELIOPT2|NEO_QUAD10',
|
422 |
+
// http://www.captiva-power.de/products.html#tablets-en
|
423 |
+
'CaptivaTablet' => 'CAPTIVA PAD',
|
424 |
+
// IconBIT - http://www.iconbit.com/products/tablets/
|
425 |
+
'IconbitTablet' => 'NetTAB|NT-3702|NT-3702S|NT-3702S|NT-3603P|NT-3603P|NT-0704S|NT-0704S|NT-3805C|NT-3805C|NT-0806C|NT-0806C|NT-0909T|NT-0909T|NT-0907S|NT-0907S|NT-0902S|NT-0902S',
|
426 |
+
// http://www.teclast.com/topic.php?channelID=70&topicID=140&pid=63
|
427 |
+
'TeclastTablet' => 'T98 4G|\bP80\b|\bX90HD\b|X98 Air|X98 Air 3G|\bX89\b|P80 3G|\bX80h\b|P98 Air|\bX89HD\b|P98 3G|\bP90HD\b|P89 3G|X98 3G|\bP70h\b|P79HD 3G|G18d 3G|\bP79HD\b|\bP89s\b|\bA88\b|\bP10HD\b|\bP19HD\b|G18 3G|\bP78HD\b|\bA78\b|\bP75\b|G17s 3G|G17h 3G|\bP85t\b|\bP90\b|\bP11\b|\bP98t\b|\bP98HD\b|\bG18d\b|\bP85s\b|\bP11HD\b|\bP88s\b|\bA80HD\b|\bA80se\b|\bA10h\b|\bP89\b|\bP78s\b|\bG18\b|\bP85\b|\bA70h\b|\bA70\b|\bG17\b|\bP18\b|\bA80s\b|\bA11s\b|\bP88HD\b|\bA80h\b|\bP76s\b|\bP76h\b|\bP98\b|\bA10HD\b|\bP78\b|\bP88\b|\bA11\b|\bA10t\b|\bP76a\b|\bP76t\b|\bP76e\b|\bP85HD\b|\bP85a\b|\bP86\b|\bP75HD\b|\bP76v\b|\bA12\b|\bP75a\b|\bA15\b|\bP76Ti\b|\bP81HD\b|\bA10\b|\bT760VE\b|\bT720HD\b|\bP76\b|\bP73\b|\bP71\b|\bP72\b|\bT720SE\b|\bC520Ti\b|\bT760\b|\bT720VE\b|T720-3GE|T720-WiFi',
|
428 |
+
// Onda - http://www.onda-tablet.com/buy-android-onda.html?dir=desc&limit=all&order=price
|
429 |
+
'OndaTablet' => '\b(V975i|Vi30|VX530|V701|Vi60|V701s|Vi50|V801s|V719|Vx610w|VX610W|V819i|Vi10|VX580W|Vi10|V711s|V813|V811|V820w|V820|Vi20|V711|VI30W|V712|V891w|V972|V819w|V820w|Vi60|V820w|V711|V813s|V801|V819|V975s|V801|V819|V819|V818|V811|V712|V975m|V101w|V961w|V812|V818|V971|V971s|V919|V989|V116w|V102w|V973|Vi40)\b[\s]+',
|
430 |
+
'JaytechTablet' => 'TPC-PA762',
|
431 |
+
'BlaupunktTablet' => 'Endeavour 800NG|Endeavour 1010',
|
432 |
+
// http://www.digma.ru/support/download/
|
433 |
+
// @todo: Ebooks also (if requested)
|
434 |
+
'DigmaTablet' => '\b(iDx10|iDx9|iDx8|iDx7|iDxD7|iDxD8|iDsQ8|iDsQ7|iDsQ8|iDsD10|iDnD7|3TS804H|iDsQ11|iDj7|iDs10)\b',
|
435 |
+
// http://www.evolioshop.com/ro/tablete-pc.html
|
436 |
+
// http://www.evolio.ro/support/downloads_static.html?cat=2
|
437 |
+
// @todo: Research some more
|
438 |
+
'EvolioTablet' => 'ARIA_Mini_wifi|Aria[ _]Mini|Evolio X10|Evolio X7|Evolio X8|\bEvotab\b|\bNeura\b',
|
439 |
+
// @todo http://www.lavamobiles.com/tablets-data-cards
|
440 |
+
'LavaTablet' => 'QPAD E704|\bIvoryS\b|E-TAB IVORY|\bE-TAB\b',
|
441 |
+
// https://www.celkonmobiles.com/?_a=categoryphones&sid=2
|
442 |
+
'CelkonTablet' => 'CT695|CT888|CT[\s]?910|CT7 Tab|CT9 Tab|CT3 Tab|CT2 Tab|CT1 Tab|C820|C720|\bCT-1\b',
|
443 |
+
// http://www.wolderelectronics.com/productos/manuales-y-guias-rapidas/categoria-2-miTab
|
444 |
+
'WolderTablet' => 'miTab \b(DIAMOND|SPACE|BROOKLYN|NEO|FLY|MANHATTAN|FUNK|EVOLUTION|SKY|GOCAR|IRON|GENIUS|POP|MINT|EPSILON|BROADWAY|JUMP|HOP|LEGEND|NEW AGE|LINE|ADVANCE|FEEL|FOLLOW|LIKE|LINK|LIVE|THINK|FREEDOM|CHICAGO|CLEVELAND|BALTIMORE-GH|IOWA|BOSTON|SEATTLE|PHOENIX|DALLAS|IN 101|MasterChef)\b',
|
445 |
+
// http://www.mi.com/en
|
446 |
+
'MiTablet' => '\bMI PAD\b|\bHM NOTE 1W\b',
|
447 |
+
// http://www.nbru.cn/index.html
|
448 |
+
'NibiruTablet' => 'Nibiru M1|Nibiru Jupiter One',
|
449 |
+
// http://navroad.com/products/produkty/tablety/
|
450 |
+
'NexoTablet' => 'NEXO NOVA|NEXO 10|NEXO AVIO|NEXO FREE|NEXO GO|NEXO EVO|NEXO 3G|NEXO SMART|NEXO KIDDO|NEXO MOBI',
|
451 |
+
// http://leader-online.com/new_site/product-category/tablets/
|
452 |
+
// http://www.leader-online.net.au/List/Tablet
|
453 |
+
'LeaderTablet' => 'TBLT10Q|TBLT10I|TBL-10WDKB|TBL-10WDKBO2013|TBL-W230V2|TBL-W450|TBL-W500|SV572|TBLT7I|TBA-AC7-8G|TBLT79|TBL-8W16|TBL-10W32|TBL-10WKB|TBL-W100',
|
454 |
+
// http://www.datawind.com/ubislate/
|
455 |
+
'UbislateTablet' => 'UbiSlate[\s]?7C',
|
456 |
+
// http://www.pocketbook-int.com/ru/support
|
457 |
+
'PocketBookTablet' => 'Pocketbook',
|
458 |
+
// http://www.tesco.com/direct/hudl/
|
459 |
+
'Hudl' => 'Hudl HT7S3',
|
460 |
+
// http://www.telstra.com.au/home-phone/thub-2/
|
461 |
+
'TelstraTablet' => 'T-Hub2',
|
462 |
+
'GenericTablet' => 'Android.*\b97D\b|Tablet(?!.*PC)|BNTV250A|MID-WCDMA|LogicPD Zoom2|\bA7EB\b|CatNova8|A1_07|CT704|CT1002|\bM721\b|rk30sdk|\bEVOTAB\b|M758A|ET904|ALUMIUM10|Smartfren Tab|Endeavour 1010|Tablet-PC-4|Tagi Tab|\bM6pro\b|CT1020W|arc 10HD|\bJolla\b|\bTP750\b'
|
463 |
+
);
|
464 |
+
|
465 |
+
/**
|
466 |
+
* List of mobile Operating Systems.
|
467 |
+
*
|
468 |
+
* @var array
|
469 |
+
*/
|
470 |
+
protected static $operatingSystems = array(
|
471 |
+
'AndroidOS' => 'Android',
|
472 |
+
'BlackBerryOS' => 'blackberry|\bBB10\b|rim tablet os',
|
473 |
+
'PalmOS' => 'PalmOS|avantgo|blazer|elaine|hiptop|palm|plucker|xiino',
|
474 |
+
'SymbianOS' => 'Symbian|SymbOS|Series60|Series40|SYB-[0-9]+|\bS60\b',
|
475 |
+
// @reference: http://en.wikipedia.org/wiki/Windows_Mobile
|
476 |
+
'WindowsMobileOS' => 'Windows CE.*(PPC|Smartphone|Mobile|[0-9]{3}x[0-9]{3})|Window Mobile|Windows Phone [0-9.]+|WCE;',
|
477 |
+
// @reference: http://en.wikipedia.org/wiki/Windows_Phone
|
478 |
+
// http://wifeng.cn/?r=blog&a=view&id=106
|
479 |
+
// http://nicksnettravels.builttoroam.com/post/2011/01/10/Bogus-Windows-Phone-7-User-Agent-String.aspx
|
480 |
+
// http://msdn.microsoft.com/library/ms537503.aspx
|
481 |
+
'WindowsPhoneOS' => 'Windows Phone 8.1|Windows Phone 8.0|Windows Phone OS|XBLWP7|ZuneWP7|Windows NT 6.[23]; ARM;',
|
482 |
+
'iOS' => '\biPhone.*Mobile|\biPod|\biPad',
|
483 |
+
// http://en.wikipedia.org/wiki/MeeGo
|
484 |
+
// @todo: research MeeGo in UAs
|
485 |
+
'MeeGoOS' => 'MeeGo',
|
486 |
+
// http://en.wikipedia.org/wiki/Maemo
|
487 |
+
// @todo: research Maemo in UAs
|
488 |
+
'MaemoOS' => 'Maemo',
|
489 |
+
'JavaOS' => 'J2ME/|\bMIDP\b|\bCLDC\b', // '|Java/' produces bug #135
|
490 |
+
'webOS' => 'webOS|hpwOS',
|
491 |
+
'badaOS' => '\bBada\b',
|
492 |
+
'BREWOS' => 'BREW',
|
493 |
+
);
|
494 |
+
|
495 |
+
/**
|
496 |
+
* List of mobile User Agents.
|
497 |
+
*
|
498 |
+
* @var array
|
499 |
+
*/
|
500 |
+
protected static $browsers = array(
|
501 |
+
// @reference: https://developers.google.com/chrome/mobile/docs/user-agent
|
502 |
+
'Chrome' => '\bCrMo\b|CriOS|Android.*Chrome/[.0-9]* (Mobile)?',
|
503 |
+
'Dolfin' => '\bDolfin\b',
|
504 |
+
'Opera' => 'Opera.*Mini|Opera.*Mobi|Android.*Opera|Mobile.*OPR/[0-9.]+|Coast/[0-9.]+',
|
505 |
+
'Skyfire' => 'Skyfire',
|
506 |
+
'IE' => 'IEMobile|MSIEMobile', // |Trident/[.0-9]+
|
507 |
+
'Firefox' => 'fennec|firefox.*maemo|(Mobile|Tablet).*Firefox|Firefox.*Mobile',
|
508 |
+
'Bolt' => 'bolt',
|
509 |
+
'TeaShark' => 'teashark',
|
510 |
+
'Blazer' => 'Blazer',
|
511 |
+
// @reference: http://developer.apple.com/library/safari/#documentation/AppleApplications/Reference/SafariWebContent/OptimizingforSafarioniPhone/OptimizingforSafarioniPhone.html#//apple_ref/doc/uid/TP40006517-SW3
|
512 |
+
'Safari' => 'Version.*Mobile.*Safari|Safari.*Mobile|MobileSafari',
|
513 |
+
// http://en.wikipedia.org/wiki/Midori_(web_browser)
|
514 |
+
//'Midori' => 'midori',
|
515 |
+
'Tizen' => 'Tizen',
|
516 |
+
'UCBrowser' => 'UC.*Browser|UCWEB',
|
517 |
+
'baiduboxapp' => 'baiduboxapp',
|
518 |
+
'baidubrowser' => 'baidubrowser',
|
519 |
+
// https://github.com/serbanghita/Mobile-Detect/issues/7
|
520 |
+
'DiigoBrowser' => 'DiigoBrowser',
|
521 |
+
// http://www.puffinbrowser.com/index.php
|
522 |
+
'Puffin' => 'Puffin',
|
523 |
+
// http://mercury-browser.com/index.html
|
524 |
+
'Mercury' => '\bMercury\b',
|
525 |
+
// http://en.wikipedia.org/wiki/Obigo_Browser
|
526 |
+
'ObigoBrowser' => 'Obigo',
|
527 |
+
// http://en.wikipedia.org/wiki/NetFront
|
528 |
+
'NetFront' => 'NF-Browser',
|
529 |
+
// @reference: http://en.wikipedia.org/wiki/Minimo
|
530 |
+
// http://en.wikipedia.org/wiki/Vision_Mobile_Browser
|
531 |
+
'GenericBrowser' => 'NokiaBrowser|OviBrowser|OneBrowser|TwonkyBeamBrowser|SEMC.*Browser|FlyFlow|Minimo|NetFront|Novarra-Vision|MQQBrowser|MicroMessenger',
|
532 |
+
);
|
533 |
+
|
534 |
+
/**
|
535 |
+
* Utilities.
|
536 |
+
*
|
537 |
+
* @var array
|
538 |
+
*/
|
539 |
+
protected static $utilities = array(
|
540 |
+
// Experimental. When a mobile device wants to switch to 'Desktop Mode'.
|
541 |
+
// http://scottcate.com/technology/windows-phone-8-ie10-desktop-or-mobile/
|
542 |
+
// https://github.com/serbanghita/Mobile-Detect/issues/57#issuecomment-15024011
|
543 |
+
// https://developers.facebook.com/docs/sharing/best-practices
|
544 |
+
'Bot' => 'Googlebot|facebookexternalhit|AdsBot-Google|Google Keyword Suggestion|Facebot|YandexBot|bingbot|ia_archiver|AhrefsBot|Ezooms|GSLFbot|WBSearchBot|Twitterbot|TweetmemeBot|Twikle|PaperLiBot|Wotbox|UnwindFetchor|Exabot|MJ12bot|YandexImages|TurnitinBot|Pingdom',
|
545 |
+
'MobileBot' => 'Googlebot-Mobile|AdsBot-Google-Mobile|YahooSeeker/M1A1-R2D2',
|
546 |
+
'DesktopMode' => 'WPDesktop',
|
547 |
+
'TV' => 'SonyDTV|HbbTV', // experimental
|
548 |
+
'WebKit' => '(webkit)[ /]([\w.]+)',
|
549 |
+
// @todo: Include JXD consoles.
|
550 |
+
'Console' => '\b(Nintendo|Nintendo WiiU|Nintendo 3DS|PLAYSTATION|Xbox)\b',
|
551 |
+
'Watch' => 'SM-V700',
|
552 |
+
);
|
553 |
+
|
554 |
+
/**
|
555 |
+
* All possible HTTP headers that represent the
|
556 |
+
* User-Agent string.
|
557 |
+
*
|
558 |
+
* @var array
|
559 |
+
*/
|
560 |
+
protected static $uaHttpHeaders = array(
|
561 |
+
// The default User-Agent string.
|
562 |
+
'HTTP_USER_AGENT',
|
563 |
+
// Header can occur on devices using Opera Mini.
|
564 |
+
'HTTP_X_OPERAMINI_PHONE_UA',
|
565 |
+
// Vodafone specific header: http://www.seoprinciple.com/mobile-web-community-still-angry-at-vodafone/24/
|
566 |
+
'HTTP_X_DEVICE_USER_AGENT',
|
567 |
+
'HTTP_X_ORIGINAL_USER_AGENT',
|
568 |
+
'HTTP_X_SKYFIRE_PHONE',
|
569 |
+
'HTTP_X_BOLT_PHONE_UA',
|
570 |
+
'HTTP_DEVICE_STOCK_UA',
|
571 |
+
'HTTP_X_UCBROWSER_DEVICE_UA'
|
572 |
+
);
|
573 |
+
|
574 |
+
/**
|
575 |
+
* The individual segments that could exist in a User-Agent string. VER refers to the regular
|
576 |
+
* expression defined in the constant self::VER.
|
577 |
+
*
|
578 |
+
* @var array
|
579 |
+
*/
|
580 |
+
protected static $properties = array(
|
581 |
+
|
582 |
+
// Build
|
583 |
+
'Mobile' => 'Mobile/[VER]',
|
584 |
+
'Build' => 'Build/[VER]',
|
585 |
+
'Version' => 'Version/[VER]',
|
586 |
+
'VendorID' => 'VendorID/[VER]',
|
587 |
+
|
588 |
+
// Devices
|
589 |
+
'iPad' => 'iPad.*CPU[a-z ]+[VER]',
|
590 |
+
'iPhone' => 'iPhone.*CPU[a-z ]+[VER]',
|
591 |
+
'iPod' => 'iPod.*CPU[a-z ]+[VER]',
|
592 |
+
//'BlackBerry' => array('BlackBerry[VER]', 'BlackBerry [VER];'),
|
593 |
+
'Kindle' => 'Kindle/[VER]',
|
594 |
+
|
595 |
+
// Browser
|
596 |
+
'Chrome' => array('Chrome/[VER]', 'CriOS/[VER]', 'CrMo/[VER]'),
|
597 |
+
'Coast' => array('Coast/[VER]'),
|
598 |
+
'Dolfin' => 'Dolfin/[VER]',
|
599 |
+
// @reference: https://developer.mozilla.org/en-US/docs/User_Agent_Strings_Reference
|
600 |
+
'Firefox' => 'Firefox/[VER]',
|
601 |
+
'Fennec' => 'Fennec/[VER]',
|
602 |
+
// http://msdn.microsoft.com/en-us/library/ms537503(v=vs.85).aspx
|
603 |
+
// https://msdn.microsoft.com/en-us/library/ie/hh869301(v=vs.85).aspx
|
604 |
+
'IE' => array('IEMobile/[VER];', 'IEMobile [VER]', 'MSIE [VER];', 'Trident/[0-9.]+;.*rv:[VER]'),
|
605 |
+
// http://en.wikipedia.org/wiki/NetFront
|
606 |
+
'NetFront' => 'NetFront/[VER]',
|
607 |
+
'NokiaBrowser' => 'NokiaBrowser/[VER]',
|
608 |
+
'Opera' => array(' OPR/[VER]', 'Opera Mini/[VER]', 'Version/[VER]'),
|
609 |
+
'Opera Mini' => 'Opera Mini/[VER]',
|
610 |
+
'Opera Mobi' => 'Version/[VER]',
|
611 |
+
'UC Browser' => 'UC Browser[VER]',
|
612 |
+
'MQQBrowser' => 'MQQBrowser/[VER]',
|
613 |
+
'MicroMessenger' => 'MicroMessenger/[VER]',
|
614 |
+
'baiduboxapp' => 'baiduboxapp/[VER]',
|
615 |
+
'baidubrowser' => 'baidubrowser/[VER]',
|
616 |
+
'Iron' => 'Iron/[VER]',
|
617 |
+
// @note: Safari 7534.48.3 is actually Version 5.1.
|
618 |
+
// @note: On BlackBerry the Version is overwriten by the OS.
|
619 |
+
'Safari' => array('Version/[VER]', 'Safari/[VER]'),
|
620 |
+
'Skyfire' => 'Skyfire/[VER]',
|
621 |
+
'Tizen' => 'Tizen/[VER]',
|
622 |
+
'Webkit' => 'webkit[ /][VER]',
|
623 |
+
|
624 |
+
// Engine
|
625 |
+
'Gecko' => 'Gecko/[VER]',
|
626 |
+
'Trident' => 'Trident/[VER]',
|
627 |
+
'Presto' => 'Presto/[VER]',
|
628 |
+
|
629 |
+
// OS
|
630 |
+
'iOS' => ' \bi?OS\b [VER][ ;]{1}',
|
631 |
+
'Android' => 'Android [VER]',
|
632 |
+
'BlackBerry' => array('BlackBerry[\w]+/[VER]', 'BlackBerry.*Version/[VER]', 'Version/[VER]'),
|
633 |
+
'BREW' => 'BREW [VER]',
|
634 |
+
'Java' => 'Java/[VER]',
|
635 |
+
// @reference: http://windowsteamblog.com/windows_phone/b/wpdev/archive/2011/08/29/introducing-the-ie9-on-windows-phone-mango-user-agent-string.aspx
|
636 |
+
// @reference: http://en.wikipedia.org/wiki/Windows_NT#Releases
|
637 |
+
'Windows Phone OS' => array('Windows Phone OS [VER]', 'Windows Phone [VER]'),
|
638 |
+
'Windows Phone' => 'Windows Phone [VER]',
|
639 |
+
'Windows CE' => 'Windows CE/[VER]',
|
640 |
+
// http://social.msdn.microsoft.com/Forums/en-US/windowsdeveloperpreviewgeneral/thread/6be392da-4d2f-41b4-8354-8dcee20c85cd
|
641 |
+
'Windows NT' => 'Windows NT [VER]',
|
642 |
+
'Symbian' => array('SymbianOS/[VER]', 'Symbian/[VER]'),
|
643 |
+
'webOS' => array('webOS/[VER]', 'hpwOS/[VER];'),
|
644 |
+
);
|
645 |
+
|
646 |
+
/**
|
647 |
+
* Construct an instance of this class.
|
648 |
+
*
|
649 |
+
* @param array $headers Specify the headers as injection. Should be PHP _SERVER flavored.
|
650 |
+
* If left empty, will use the global _SERVER['HTTP_*'] vars instead.
|
651 |
+
* @param string $userAgent Inject the User-Agent header. If null, will use HTTP_USER_AGENT
|
652 |
+
* from the $headers array instead.
|
653 |
+
*/
|
654 |
+
public function __construct(
|
655 |
+
array $headers = null,
|
656 |
+
$userAgent = null
|
657 |
+
)
|
658 |
+
{
|
659 |
+
$this->setHttpHeaders($headers);
|
660 |
+
$this->setUserAgent($userAgent);
|
661 |
+
}
|
662 |
+
|
663 |
+
/**
|
664 |
+
* Get the current script version.
|
665 |
+
* This is useful for the demo.php file,
|
666 |
+
* so people can check on what version they are testing
|
667 |
+
* for mobile devices.
|
668 |
+
*
|
669 |
+
* @return string The version number in semantic version format.
|
670 |
+
*/
|
671 |
+
public static function getScriptVersion()
|
672 |
+
{
|
673 |
+
return self::VERSION;
|
674 |
+
}
|
675 |
+
|
676 |
+
/**
|
677 |
+
* Set the HTTP Headers. Must be PHP-flavored. This method will reset existing headers.
|
678 |
+
*
|
679 |
+
* @param array $httpHeaders The headers to set. If null, then using PHP's _SERVER to extract
|
680 |
+
* the headers. The default null is left for backwards compatibilty.
|
681 |
+
*/
|
682 |
+
public function setHttpHeaders($httpHeaders = null)
|
683 |
+
{
|
684 |
+
// use global _SERVER if $httpHeaders aren't defined
|
685 |
+
if (!is_array($httpHeaders) || !count($httpHeaders))
|
686 |
+
{
|
687 |
+
$httpHeaders = $_SERVER;
|
688 |
+
}
|
689 |
+
|
690 |
+
// clear existing headers
|
691 |
+
$this->httpHeaders = array();
|
692 |
+
|
693 |
+
// Only save HTTP headers. In PHP land, that means only _SERVER vars that
|
694 |
+
// start with HTTP_.
|
695 |
+
foreach ($httpHeaders as $key => $value)
|
696 |
+
{
|
697 |
+
if (substr($key, 0, 5) === 'HTTP_')
|
698 |
+
{
|
699 |
+
$this->httpHeaders[$key] = $value;
|
700 |
+
}
|
701 |
+
}
|
702 |
+
|
703 |
+
// In case we're dealing with CloudFront, we need to know.
|
704 |
+
$this->setCfHeaders($httpHeaders);
|
705 |
+
}
|
706 |
+
|
707 |
+
/**
|
708 |
+
* Retrieves the HTTP headers.
|
709 |
+
*
|
710 |
+
* @return array
|
711 |
+
*/
|
712 |
+
public function getHttpHeaders()
|
713 |
+
{
|
714 |
+
return $this->httpHeaders;
|
715 |
+
}
|
716 |
+
|
717 |
+
/**
|
718 |
+
* Retrieves a particular header. If it doesn't exist, no exception/error is caused.
|
719 |
+
* Simply null is returned.
|
720 |
+
*
|
721 |
+
* @param string $header The name of the header to retrieve. Can be HTTP compliant such as
|
722 |
+
* "User-Agent" or "X-Device-User-Agent" or can be php-esque with the
|
723 |
+
* all-caps, HTTP_ prefixed, underscore seperated awesomeness.
|
724 |
+
*
|
725 |
+
* @return string|null The value of the header.
|
726 |
+
*/
|
727 |
+
public function getHttpHeader($header)
|
728 |
+
{
|
729 |
+
// are we using PHP-flavored headers?
|
730 |
+
if (strpos($header, '_') === false)
|
731 |
+
{
|
732 |
+
$header = str_replace('-', '_', $header);
|
733 |
+
$header = strtoupper($header);
|
734 |
+
}
|
735 |
+
|
736 |
+
// test the alternate, too
|
737 |
+
$altHeader = 'HTTP_' . $header;
|
738 |
+
|
739 |
+
//Test both the regular and the HTTP_ prefix
|
740 |
+
if (isset($this->httpHeaders[$header]))
|
741 |
+
{
|
742 |
+
return $this->httpHeaders[$header];
|
743 |
+
}
|
744 |
+
elseif (isset($this->httpHeaders[$altHeader]))
|
745 |
+
{
|
746 |
+
return $this->httpHeaders[$altHeader];
|
747 |
+
}
|
748 |
+
|
749 |
+
return null;
|
750 |
+
}
|
751 |
+
|
752 |
+
public function getMobileHeaders()
|
753 |
+
{
|
754 |
+
return self::$mobileHeaders;
|
755 |
+
}
|
756 |
+
|
757 |
+
/**
|
758 |
+
* Get all possible HTTP headers that
|
759 |
+
* can contain the User-Agent string.
|
760 |
+
*
|
761 |
+
* @return array List of HTTP headers.
|
762 |
+
*/
|
763 |
+
public function getUaHttpHeaders()
|
764 |
+
{
|
765 |
+
return self::$uaHttpHeaders;
|
766 |
+
}
|
767 |
+
|
768 |
+
|
769 |
+
/**
|
770 |
+
* Set CloudFront headers
|
771 |
+
* http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/header-caching.html#header-caching-web-device
|
772 |
+
*
|
773 |
+
* @param array $cfHeaders List of HTTP headers
|
774 |
+
*
|
775 |
+
* @return boolean If there were CloudFront headers to be set
|
776 |
+
*/
|
777 |
+
public function setCfHeaders($cfHeaders = null)
|
778 |
+
{
|
779 |
+
// use global _SERVER if $cfHeaders aren't defined
|
780 |
+
if (!is_array($cfHeaders) || !count($cfHeaders))
|
781 |
+
{
|
782 |
+
$cfHeaders = $_SERVER;
|
783 |
+
}
|
784 |
+
|
785 |
+
// clear existing headers
|
786 |
+
$this->cloudfrontHeaders = array();
|
787 |
+
|
788 |
+
// Only save CLOUDFRONT headers. In PHP land, that means only _SERVER vars that
|
789 |
+
// start with cloudfront-.
|
790 |
+
$response = false;
|
791 |
+
foreach ($cfHeaders as $key => $value)
|
792 |
+
{
|
793 |
+
if (substr(strtolower($key), 0, 16) === 'http_cloudfront_')
|
794 |
+
{
|
795 |
+
$this->cloudfrontHeaders[strtoupper($key)] = $value;
|
796 |
+
$response = true;
|
797 |
+
}
|
798 |
+
}
|
799 |
+
|
800 |
+
return $response;
|
801 |
+
}
|
802 |
+
|
803 |
+
/**
|
804 |
+
* Retrieves the cloudfront headers.
|
805 |
+
*
|
806 |
+
* @return array
|
807 |
+
*/
|
808 |
+
public function getCfHeaders()
|
809 |
+
{
|
810 |
+
return $this->cloudfrontHeaders;
|
811 |
+
}
|
812 |
+
|
813 |
+
/**
|
814 |
+
* Set the User-Agent to be used.
|
815 |
+
*
|
816 |
+
* @param string $userAgent The user agent string to set.
|
817 |
+
*
|
818 |
+
* @return string|null
|
819 |
+
*/
|
820 |
+
public function setUserAgent($userAgent = null)
|
821 |
+
{
|
822 |
+
// Invalidate cache due to #375
|
823 |
+
$this->cache = array();
|
824 |
+
|
825 |
+
if (false === empty($userAgent))
|
826 |
+
{
|
827 |
+
return $this->userAgent = $userAgent;
|
828 |
+
}
|
829 |
+
else
|
830 |
+
{
|
831 |
+
$this->userAgent = null;
|
832 |
+
foreach ($this->getUaHttpHeaders() as $altHeader)
|
833 |
+
{
|
834 |
+
if (false === empty($this->httpHeaders[$altHeader]))
|
835 |
+
{ // @todo: should use getHttpHeader(), but it would be slow. (Serban)
|
836 |
+
$this->userAgent .= $this->httpHeaders[$altHeader] . " ";
|
837 |
+
}
|
838 |
+
}
|
839 |
+
|
840 |
+
if (!empty($this->userAgent))
|
841 |
+
{
|
842 |
+
return $this->userAgent = trim($this->userAgent);
|
843 |
+
}
|
844 |
+
}
|
845 |
+
|
846 |
+
if (count($this->getCfHeaders()) > 0)
|
847 |
+
{
|
848 |
+
return $this->userAgent = 'Amazon CloudFront';
|
849 |
+
}
|
850 |
+
return $this->userAgent = null;
|
851 |
+
}
|
852 |
+
|
853 |
+
/**
|
854 |
+
* Retrieve the User-Agent.
|
855 |
+
*
|
856 |
+
* @return string|null The user agent if it's set.
|
857 |
+
*/
|
858 |
+
public function getUserAgent()
|
859 |
+
{
|
860 |
+
return $this->userAgent;
|
861 |
+
}
|
862 |
+
|
863 |
+
/**
|
864 |
+
* Set the detection type. Must be one of self::DETECTION_TYPE_MOBILE or
|
865 |
+
* self::DETECTION_TYPE_EXTENDED. Otherwise, nothing is set.
|
866 |
+
*
|
867 |
+
* @deprecated since version 2.6.9
|
868 |
+
*
|
869 |
+
* @param string $type The type. Must be a self::DETECTION_TYPE_* constant. The default
|
870 |
+
* parameter is null which will default to self::DETECTION_TYPE_MOBILE.
|
871 |
+
*/
|
872 |
+
public function setDetectionType($type = null)
|
873 |
+
{
|
874 |
+
if ($type === null)
|
875 |
+
{
|
876 |
+
$type = self::DETECTION_TYPE_MOBILE;
|
877 |
+
}
|
878 |
+
|
879 |
+
if ($type !== self::DETECTION_TYPE_MOBILE && $type !== self::DETECTION_TYPE_EXTENDED)
|
880 |
+
{
|
881 |
+
return;
|
882 |
+
}
|
883 |
+
|
884 |
+
$this->detectionType = $type;
|
885 |
+
}
|
886 |
+
|
887 |
+
public function getMatchingRegex()
|
888 |
+
{
|
889 |
+
return $this->matchingRegex;
|
890 |
+
}
|
891 |
+
|
892 |
+
public function getMatchesArray()
|
893 |
+
{
|
894 |
+
return $this->matchesArray;
|
895 |
+
}
|
896 |
+
|
897 |
+
/**
|
898 |
+
* Retrieve the list of known phone devices.
|
899 |
+
*
|
900 |
+
* @return array List of phone devices.
|
901 |
+
*/
|
902 |
+
public static function getPhoneDevices()
|
903 |
+
{
|
904 |
+
return self::$phoneDevices;
|
905 |
+
}
|
906 |
+
|
907 |
+
/**
|
908 |
+
* Retrieve the list of known tablet devices.
|
909 |
+
*
|
910 |
+
* @return array List of tablet devices.
|
911 |
+
*/
|
912 |
+
public static function getTabletDevices()
|
913 |
+
{
|
914 |
+
return self::$tabletDevices;
|
915 |
+
}
|
916 |
+
|
917 |
+
/**
|
918 |
+
* Alias for getBrowsers() method.
|
919 |
+
*
|
920 |
+
* @return array List of user agents.
|
921 |
+
*/
|
922 |
+
public static function getUserAgents()
|
923 |
+
{
|
924 |
+
return self::getBrowsers();
|
925 |
+
}
|
926 |
+
|
927 |
+
/**
|
928 |
+
* Retrieve the list of known browsers. Specifically, the user agents.
|
929 |
+
*
|
930 |
+
* @return array List of browsers / user agents.
|
931 |
+
*/
|
932 |
+
public static function getBrowsers()
|
933 |
+
{
|
934 |
+
return self::$browsers;
|
935 |
+
}
|
936 |
+
|
937 |
+
/**
|
938 |
+
* Retrieve the list of known utilities.
|
939 |
+
*
|
940 |
+
* @return array List of utilities.
|
941 |
+
*/
|
942 |
+
public static function getUtilities()
|
943 |
+
{
|
944 |
+
return self::$utilities;
|
945 |
+
}
|
946 |
+
|
947 |
+
/**
|
948 |
+
* Method gets the mobile detection rules. This method is used for the magic methods $detect->is*().
|
949 |
+
*
|
950 |
+
* @deprecated since version 2.6.9
|
951 |
+
*
|
952 |
+
* @return array All the rules (but not extended).
|
953 |
+
*/
|
954 |
+
public static function getMobileDetectionRules()
|
955 |
+
{
|
956 |
+
static $rules;
|
957 |
+
|
958 |
+
if (!$rules)
|
959 |
+
{
|
960 |
+
$rules = array_merge(
|
961 |
+
self::$phoneDevices,
|
962 |
+
self::$tabletDevices,
|
963 |
+
self::$operatingSystems,
|
964 |
+
self::$browsers
|
965 |
+
);
|
966 |
+
}
|
967 |
+
|
968 |
+
return $rules;
|
969 |
+
|
970 |
+
}
|
971 |
+
|
972 |
+
/**
|
973 |
+
* Method gets the mobile detection rules + utilities.
|
974 |
+
* The reason this is separate is because utilities rules
|
975 |
+
* don't necessary imply mobile. This method is used inside
|
976 |
+
* the new $detect->is('stuff') method.
|
977 |
+
*
|
978 |
+
* @deprecated since version 2.6.9
|
979 |
+
*
|
980 |
+
* @return array All the rules + extended.
|
981 |
+
*/
|
982 |
+
public function getMobileDetectionRulesExtended()
|
983 |
+
{
|
984 |
+
static $rules;
|
985 |
+
|
986 |
+
if (!$rules)
|
987 |
+
{
|
988 |
+
// Merge all rules together.
|
989 |
+
$rules = array_merge(
|
990 |
+
self::$phoneDevices,
|
991 |
+
self::$tabletDevices,
|
992 |
+
self::$operatingSystems,
|
993 |
+
self::$browsers,
|
994 |
+
self::$utilities
|
995 |
+
);
|
996 |
+
}
|
997 |
+
|
998 |
+
return $rules;
|
999 |
+
}
|
1000 |
+
|
1001 |
+
/**
|
1002 |
+
* Retrieve the current set of rules.
|
1003 |
+
*
|
1004 |
+
* @deprecated since version 2.6.9
|
1005 |
+
*
|
1006 |
+
* @return array
|
1007 |
+
*/
|
1008 |
+
public function getRules()
|
1009 |
+
{
|
1010 |
+
if ($this->detectionType == self::DETECTION_TYPE_EXTENDED)
|
1011 |
+
{
|
1012 |
+
return self::getMobileDetectionRulesExtended();
|
1013 |
+
}
|
1014 |
+
else
|
1015 |
+
{
|
1016 |
+
return self::getMobileDetectionRules();
|
1017 |
+
}
|
1018 |
+
}
|
1019 |
+
|
1020 |
+
/**
|
1021 |
+
* Retrieve the list of mobile operating systems.
|
1022 |
+
*
|
1023 |
+
* @return array The list of mobile operating systems.
|
1024 |
+
*/
|
1025 |
+
public static function getOperatingSystems()
|
1026 |
+
{
|
1027 |
+
return self::$operatingSystems;
|
1028 |
+
}
|
1029 |
+
|
1030 |
+
/**
|
1031 |
+
* Check the HTTP headers for signs of mobile.
|
1032 |
+
* This is the fastest mobile check possible; it's used
|
1033 |
+
* inside isMobile() method.
|
1034 |
+
*
|
1035 |
+
* @return bool
|
1036 |
+
*/
|
1037 |
+
public function checkHttpHeadersForMobile()
|
1038 |
+
{
|
1039 |
+
|
1040 |
+
foreach ($this->getMobileHeaders() as $mobileHeader => $matchType)
|
1041 |
+
{
|
1042 |
+
if (isset($this->httpHeaders[$mobileHeader]))
|
1043 |
+
{
|
1044 |
+
if (is_array($matchType['matches']))
|
1045 |
+
{
|
1046 |
+
foreach ($matchType['matches'] as $_match)
|
1047 |
+
{
|
1048 |
+
if (strpos($this->httpHeaders[$mobileHeader], $_match) !== false)
|
1049 |
+
{
|
1050 |
+
return true;
|
1051 |
+
}
|
1052 |
+
}
|
1053 |
+
|
1054 |
+
return false;
|
1055 |
+
}
|
1056 |
+
else
|
1057 |
+
{
|
1058 |
+
return true;
|
1059 |
+
}
|
1060 |
+
}
|
1061 |
+
}
|
1062 |
+
|
1063 |
+
return false;
|
1064 |
+
|
1065 |
+
}
|
1066 |
+
|
1067 |
+
/**
|
1068 |
+
* Magic overloading method.
|
1069 |
+
*
|
1070 |
+
* @method boolean is[...]()
|
1071 |
+
* @param string $name
|
1072 |
+
* @param array $arguments
|
1073 |
+
*
|
1074 |
+
* @return mixed
|
1075 |
+
* @throws BadMethodCallException when the method doesn't exist and doesn't start with 'is'
|
1076 |
+
*/
|
1077 |
+
public function __call($name, $arguments)
|
1078 |
+
{
|
1079 |
+
// make sure the name starts with 'is', otherwise
|
1080 |
+
if (substr($name, 0, 2) !== 'is')
|
1081 |
+
{
|
1082 |
+
throw new BadMethodCallException("No such method exists: $name");
|
1083 |
+
}
|
1084 |
+
|
1085 |
+
$this->setDetectionType(self::DETECTION_TYPE_MOBILE);
|
1086 |
+
|
1087 |
+
$key = substr($name, 2);
|
1088 |
+
|
1089 |
+
return $this->matchUAAgainstKey($key);
|
1090 |
+
}
|
1091 |
+
|
1092 |
+
/**
|
1093 |
+
* Find a detection rule that matches the current User-agent.
|
1094 |
+
*
|
1095 |
+
* @param null $userAgent deprecated
|
1096 |
+
*
|
1097 |
+
* @return boolean
|
1098 |
+
*/
|
1099 |
+
protected function matchDetectionRulesAgainstUA($userAgent = null)
|
1100 |
+
{
|
1101 |
+
// Begin general search.
|
1102 |
+
foreach ($this->getRules() as $_regex)
|
1103 |
+
{
|
1104 |
+
if (empty($_regex))
|
1105 |
+
{
|
1106 |
+
continue;
|
1107 |
+
}
|
1108 |
+
|
1109 |
+
if ($this->match($_regex, $userAgent))
|
1110 |
+
{
|
1111 |
+
return true;
|
1112 |
+
}
|
1113 |
+
}
|
1114 |
+
|
1115 |
+
return false;
|
1116 |
+
}
|
1117 |
+
|
1118 |
+
/**
|
1119 |
+
* Search for a certain key in the rules array.
|
1120 |
+
* If the key is found the try to match the corresponding
|
1121 |
+
* regex against the User-Agent.
|
1122 |
+
*
|
1123 |
+
* @param string $key
|
1124 |
+
*
|
1125 |
+
* @return boolean
|
1126 |
+
*/
|
1127 |
+
protected function matchUAAgainstKey($key)
|
1128 |
+
{
|
1129 |
+
// Make the keys lowercase so we can match: isIphone(), isiPhone(), isiphone(), etc.
|
1130 |
+
$key = strtolower($key);
|
1131 |
+
if (false === isset($this->cache[$key]))
|
1132 |
+
{
|
1133 |
+
|
1134 |
+
// change the keys to lower case
|
1135 |
+
$_rules = array_change_key_case($this->getRules());
|
1136 |
+
|
1137 |
+
if (false === empty($_rules[$key]))
|
1138 |
+
{
|
1139 |
+
$this->cache[$key] = $this->match($_rules[$key]);
|
1140 |
+
}
|
1141 |
+
|
1142 |
+
if (false === isset($this->cache[$key]))
|
1143 |
+
{
|
1144 |
+
$this->cache[$key] = false;
|
1145 |
+
}
|
1146 |
+
}
|
1147 |
+
|
1148 |
+
return $this->cache[$key];
|
1149 |
+
}
|
1150 |
+
|
1151 |
+
/**
|
1152 |
+
* Check if the device is mobile.
|
1153 |
+
* Returns true if any type of mobile device detected, including special ones
|
1154 |
+
*
|
1155 |
+
* @param null $userAgent deprecated
|
1156 |
+
* @param null $httpHeaders deprecated
|
1157 |
+
*
|
1158 |
+
* @return bool
|
1159 |
+
*/
|
1160 |
+
public function isMobile($userAgent = null, $httpHeaders = null)
|
1161 |
+
{
|
1162 |
+
|
1163 |
+
if ($httpHeaders)
|
1164 |
+
{
|
1165 |
+
$this->setHttpHeaders($httpHeaders);
|
1166 |
+
}
|
1167 |
+
|
1168 |
+
if ($userAgent)
|
1169 |
+
{
|
1170 |
+
$this->setUserAgent($userAgent);
|
1171 |
+
}
|
1172 |
+
|
1173 |
+
// Check specifically for cloudfront headers if the useragent === 'Amazon CloudFront'
|
1174 |
+
if ($this->getUserAgent() === 'Amazon CloudFront')
|
1175 |
+
{
|
1176 |
+
$cfHeaders = $this->getCfHeaders();
|
1177 |
+
if (array_key_exists('HTTP_CLOUDFRONT_IS_MOBILE_VIEWER', $cfHeaders) && $cfHeaders['HTTP_CLOUDFRONT_IS_MOBILE_VIEWER'] === 'true')
|
1178 |
+
{
|
1179 |
+
return true;
|
1180 |
+
}
|
1181 |
+
}
|
1182 |
+
|
1183 |
+
$this->setDetectionType(self::DETECTION_TYPE_MOBILE);
|
1184 |
+
|
1185 |
+
if ($this->checkHttpHeadersForMobile())
|
1186 |
+
{
|
1187 |
+
return true;
|
1188 |
+
}
|
1189 |
+
else
|
1190 |
+
{
|
1191 |
+
return $this->matchDetectionRulesAgainstUA();
|
1192 |
+
}
|
1193 |
+
|
1194 |
+
}
|
1195 |
+
|
1196 |
+
/**
|
1197 |
+
* Check if the device is a tablet.
|
1198 |
+
* Return true if any type of tablet device is detected.
|
1199 |
+
*
|
1200 |
+
* @param string $userAgent deprecated
|
1201 |
+
* @param array $httpHeaders deprecated
|
1202 |
+
*
|
1203 |
+
* @return bool
|
1204 |
+
*/
|
1205 |
+
public function isTablet($userAgent = null, $httpHeaders = null)
|
1206 |
+
{
|
1207 |
+
// Check specifically for cloudfront headers if the useragent === 'Amazon CloudFront'
|
1208 |
+
if ($this->getUserAgent() === 'Amazon CloudFront')
|
1209 |
+
{
|
1210 |
+
$cfHeaders = $this->getCfHeaders();
|
1211 |
+
if (array_key_exists('HTTP_CLOUDFRONT_IS_TABLET_VIEWER', $cfHeaders) && $cfHeaders['HTTP_CLOUDFRONT_IS_TABLET_VIEWER'] === 'true')
|
1212 |
+
{
|
1213 |
+
return true;
|
1214 |
+
}
|
1215 |
+
}
|
1216 |
+
|
1217 |
+
$this->setDetectionType(self::DETECTION_TYPE_MOBILE);
|
1218 |
+
|
1219 |
+
foreach (self::$tabletDevices as $_regex)
|
1220 |
+
{
|
1221 |
+
if ($this->match($_regex, $userAgent))
|
1222 |
+
{
|
1223 |
+
return true;
|
1224 |
+
}
|
1225 |
+
}
|
1226 |
+
|
1227 |
+
return false;
|
1228 |
+
}
|
1229 |
+
|
1230 |
+
/**
|
1231 |
+
* This method checks for a certain property in the
|
1232 |
+
* userAgent.
|
1233 |
+
*
|
1234 |
+
* @todo: The httpHeaders part is not yet used.
|
1235 |
+
*
|
1236 |
+
* @param string $key
|
1237 |
+
* @param string $userAgent deprecated
|
1238 |
+
* @param string $httpHeaders deprecated
|
1239 |
+
*
|
1240 |
+
* @return bool|int|null
|
1241 |
+
*/
|
1242 |
+
public function is($key, $userAgent = null, $httpHeaders = null)
|
1243 |
+
{
|
1244 |
+
// Set the UA and HTTP headers only if needed (eg. batch mode).
|
1245 |
+
if ($httpHeaders)
|
1246 |
+
{
|
1247 |
+
$this->setHttpHeaders($httpHeaders);
|
1248 |
+
}
|
1249 |
+
|
1250 |
+
if ($userAgent)
|
1251 |
+
{
|
1252 |
+
$this->setUserAgent($userAgent);
|
1253 |
+
}
|
1254 |
+
|
1255 |
+
$this->setDetectionType(self::DETECTION_TYPE_EXTENDED);
|
1256 |
+
|
1257 |
+
return $this->matchUAAgainstKey($key);
|
1258 |
+
}
|
1259 |
+
|
1260 |
+
/**
|
1261 |
+
* Some detection rules are relative (not standard),
|
1262 |
+
* because of the diversity of devices, vendors and
|
1263 |
+
* their conventions in representing the User-Agent or
|
1264 |
+
* the HTTP headers.
|
1265 |
+
*
|
1266 |
+
* This method will be used to check custom regexes against
|
1267 |
+
* the User-Agent string.
|
1268 |
+
*
|
1269 |
+
* @param $regex
|
1270 |
+
* @param string $userAgent
|
1271 |
+
*
|
1272 |
+
* @return bool
|
1273 |
+
*
|
1274 |
+
* @todo: search in the HTTP headers too.
|
1275 |
+
*/
|
1276 |
+
public function match($regex, $userAgent = null)
|
1277 |
+
{
|
1278 |
+
$match = (bool)preg_match(sprintf('#%s#is', $regex), (false === empty($userAgent) ? $userAgent : $this->userAgent), $matches);
|
1279 |
+
// If positive match is found, store the results for debug.
|
1280 |
+
if ($match)
|
1281 |
+
{
|
1282 |
+
$this->matchingRegex = $regex;
|
1283 |
+
$this->matchesArray = $matches;
|
1284 |
+
}
|
1285 |
+
|
1286 |
+
return $match;
|
1287 |
+
}
|
1288 |
+
|
1289 |
+
/**
|
1290 |
+
* Get the properties array.
|
1291 |
+
*
|
1292 |
+
* @return array
|
1293 |
+
*/
|
1294 |
+
public static function getProperties()
|
1295 |
+
{
|
1296 |
+
return self::$properties;
|
1297 |
+
}
|
1298 |
+
|
1299 |
+
/**
|
1300 |
+
* Prepare the version number.
|
1301 |
+
*
|
1302 |
+
* @todo Remove the error supression from str_replace() call.
|
1303 |
+
*
|
1304 |
+
* @param string $ver The string version, like "2.6.21.2152";
|
1305 |
+
*
|
1306 |
+
* @return float
|
1307 |
+
*/
|
1308 |
+
public function prepareVersionNo($ver)
|
1309 |
+
{
|
1310 |
+
$ver = str_replace(array('_', ' ', '/'), '.', $ver);
|
1311 |
+
$arrVer = explode('.', $ver, 2);
|
1312 |
+
|
1313 |
+
if (isset($arrVer[1]))
|
1314 |
+
{
|
1315 |
+
$arrVer[1] = @str_replace('.', '', $arrVer[1]); // @todo: treat strings versions.
|
1316 |
+
}
|
1317 |
+
|
1318 |
+
return (float)implode('.', $arrVer);
|
1319 |
+
}
|
1320 |
+
|
1321 |
+
/**
|
1322 |
+
* Check the version of the given property in the User-Agent.
|
1323 |
+
* Will return a float number. (eg. 2_0 will return 2.0, 4.3.1 will return 4.31)
|
1324 |
+
*
|
1325 |
+
* @param string $propertyName The name of the property. See self::getProperties() array
|
1326 |
+
* keys for all possible properties.
|
1327 |
+
* @param string $type Either self::VERSION_TYPE_STRING to get a string value or
|
1328 |
+
* self::VERSION_TYPE_FLOAT indicating a float value. This parameter
|
1329 |
+
* is optional and defaults to self::VERSION_TYPE_STRING. Passing an
|
1330 |
+
* invalid parameter will default to the this type as well.
|
1331 |
+
*
|
1332 |
+
* @return string|float The version of the property we are trying to extract.
|
1333 |
+
*/
|
1334 |
+
public function version($propertyName, $type = self::VERSION_TYPE_STRING)
|
1335 |
+
{
|
1336 |
+
if (empty($propertyName))
|
1337 |
+
{
|
1338 |
+
return false;
|
1339 |
+
}
|
1340 |
+
|
1341 |
+
// set the $type to the default if we don't recognize the type
|
1342 |
+
if ($type !== self::VERSION_TYPE_STRING && $type !== self::VERSION_TYPE_FLOAT)
|
1343 |
+
{
|
1344 |
+
$type = self::VERSION_TYPE_STRING;
|
1345 |
+
}
|
1346 |
+
|
1347 |
+
$properties = self::getProperties();
|
1348 |
+
|
1349 |
+
// Check if the property exists in the properties array.
|
1350 |
+
if (true === isset($properties[$propertyName]))
|
1351 |
+
{
|
1352 |
+
|
1353 |
+
// Prepare the pattern to be matched.
|
1354 |
+
// Make sure we always deal with an array (string is converted).
|
1355 |
+
$properties[$propertyName] = (array)$properties[$propertyName];
|
1356 |
+
|
1357 |
+
foreach ($properties[$propertyName] as $propertyMatchString)
|
1358 |
+
{
|
1359 |
+
|
1360 |
+
$propertyPattern = str_replace('[VER]', self::VER, $propertyMatchString);
|
1361 |
+
|
1362 |
+
// Identify and extract the version.
|
1363 |
+
preg_match(sprintf('#%s#is', $propertyPattern), $this->userAgent, $match);
|
1364 |
+
|
1365 |
+
if (false === empty($match[1]))
|
1366 |
+
{
|
1367 |
+
$version = ($type == self::VERSION_TYPE_FLOAT ? $this->prepareVersionNo($match[1]) : $match[1]);
|
1368 |
+
|
1369 |
+
return $version;
|
1370 |
+
}
|
1371 |
+
|
1372 |
+
}
|
1373 |
+
|
1374 |
+
}
|
1375 |
+
|
1376 |
+
return false;
|
1377 |
+
}
|
1378 |
+
|
1379 |
+
/**
|
1380 |
+
* Retrieve the mobile grading, using self::MOBILE_GRADE_* constants.
|
1381 |
+
*
|
1382 |
+
* @return string One of the self::MOBILE_GRADE_* constants.
|
1383 |
+
*/
|
1384 |
+
public function mobileGrade()
|
1385 |
+
{
|
1386 |
+
$isMobile = $this->isMobile();
|
1387 |
+
|
1388 |
+
if (
|
1389 |
+
// Apple iOS 4-7.0 – Tested on the original iPad (4.3 / 5.0), iPad 2 (4.3 / 5.1 / 6.1), iPad 3 (5.1 / 6.0), iPad Mini (6.1), iPad Retina (7.0), iPhone 3GS (4.3), iPhone 4 (4.3 / 5.1), iPhone 4S (5.1 / 6.0), iPhone 5 (6.0), and iPhone 5S (7.0)
|
1390 |
+
$this->is('iOS') && $this->version('iPad', self::VERSION_TYPE_FLOAT) >= 4.3 ||
|
1391 |
+
$this->is('iOS') && $this->version('iPhone', self::VERSION_TYPE_FLOAT) >= 4.3 ||
|
1392 |
+
$this->is('iOS') && $this->version('iPod', self::VERSION_TYPE_FLOAT) >= 4.3 ||
|
1393 |
+
|
1394 |
+
// Android 2.1-2.3 - Tested on the HTC Incredible (2.2), original Droid (2.2), HTC Aria (2.1), Google Nexus S (2.3). Functional on 1.5 & 1.6 but performance may be sluggish, tested on Google G1 (1.5)
|
1395 |
+
// Android 3.1 (Honeycomb) - Tested on the Samsung Galaxy Tab 10.1 and Motorola XOOM
|
1396 |
+
// Android 4.0 (ICS) - Tested on a Galaxy Nexus. Note: transition performance can be poor on upgraded devices
|
1397 |
+
// Android 4.1 (Jelly Bean) - Tested on a Galaxy Nexus and Galaxy 7
|
1398 |
+
($this->version('Android', self::VERSION_TYPE_FLOAT) > 2.1 && $this->is('Webkit')) ||
|
1399 |
+
|
1400 |
+
// Windows Phone 7.5-8 - Tested on the HTC Surround (7.5), HTC Trophy (7.5), LG-E900 (7.5), Nokia 800 (7.8), HTC Mazaa (7.8), Nokia Lumia 520 (8), Nokia Lumia 920 (8), HTC 8x (8)
|
1401 |
+
$this->version('Windows Phone OS', self::VERSION_TYPE_FLOAT) >= 7.5 ||
|
1402 |
+
|
1403 |
+
// Tested on the Torch 9800 (6) and Style 9670 (6), BlackBerry® Torch 9810 (7), BlackBerry Z10 (10)
|
1404 |
+
$this->is('BlackBerry') && $this->version('BlackBerry', self::VERSION_TYPE_FLOAT) >= 6.0 ||
|
1405 |
+
// Blackberry Playbook (1.0-2.0) - Tested on PlayBook
|
1406 |
+
$this->match('Playbook.*Tablet') ||
|
1407 |
+
|
1408 |
+
// Palm WebOS (1.4-3.0) - Tested on the Palm Pixi (1.4), Pre (1.4), Pre 2 (2.0), HP TouchPad (3.0)
|
1409 |
+
($this->version('webOS', self::VERSION_TYPE_FLOAT) >= 1.4 && $this->match('Palm|Pre|Pixi')) ||
|
1410 |
+
// Palm WebOS 3.0 - Tested on HP TouchPad
|
1411 |
+
$this->match('hp.*TouchPad') ||
|
1412 |
+
|
1413 |
+
// Firefox Mobile 18 - Tested on Android 2.3 and 4.1 devices
|
1414 |
+
($this->is('Firefox') && $this->version('Firefox', self::VERSION_TYPE_FLOAT) >= 18) ||
|
1415 |
+
|
1416 |
+
// Chrome for Android - Tested on Android 4.0, 4.1 device
|
1417 |
+
($this->is('Chrome') && $this->is('AndroidOS') && $this->version('Android', self::VERSION_TYPE_FLOAT) >= 4.0) ||
|
1418 |
+
|
1419 |
+
// Skyfire 4.1 - Tested on Android 2.3 device
|
1420 |
+
($this->is('Skyfire') && $this->version('Skyfire', self::VERSION_TYPE_FLOAT) >= 4.1 && $this->is('AndroidOS') && $this->version('Android', self::VERSION_TYPE_FLOAT) >= 2.3) ||
|
1421 |
+
|
1422 |
+
// Opera Mobile 11.5-12: Tested on Android 2.3
|
1423 |
+
($this->is('Opera') && $this->version('Opera Mobi', self::VERSION_TYPE_FLOAT) >= 11.5 && $this->is('AndroidOS')) ||
|
1424 |
+
|
1425 |
+
// Meego 1.2 - Tested on Nokia 950 and N9
|
1426 |
+
$this->is('MeeGoOS') ||
|
1427 |
+
|
1428 |
+
// Tizen (pre-release) - Tested on early hardware
|
1429 |
+
$this->is('Tizen') ||
|
1430 |
+
|
1431 |
+
// Samsung Bada 2.0 - Tested on a Samsung Wave 3, Dolphin browser
|
1432 |
+
// @todo: more tests here!
|
1433 |
+
$this->is('Dolfin') && $this->version('Bada', self::VERSION_TYPE_FLOAT) >= 2.0 ||
|
1434 |
+
|
1435 |
+
// UC Browser - Tested on Android 2.3 device
|
1436 |
+
(($this->is('UC Browser') || $this->is('Dolfin')) && $this->version('Android', self::VERSION_TYPE_FLOAT) >= 2.3) ||
|
1437 |
+
|
1438 |
+
// Kindle 3 and Fire - Tested on the built-in WebKit browser for each
|
1439 |
+
($this->match('Kindle Fire') ||
|
1440 |
+
$this->is('Kindle') && $this->version('Kindle', self::VERSION_TYPE_FLOAT) >= 3.0) ||
|
1441 |
+
|
1442 |
+
// Nook Color 1.4.1 - Tested on original Nook Color, not Nook Tablet
|
1443 |
+
$this->is('AndroidOS') && $this->is('NookTablet') ||
|
1444 |
+
|
1445 |
+
// Chrome Desktop 16-24 - Tested on OS X 10.7 and Windows 7
|
1446 |
+
$this->version('Chrome', self::VERSION_TYPE_FLOAT) >= 16 && !$isMobile ||
|
1447 |
+
|
1448 |
+
// Safari Desktop 5-6 - Tested on OS X 10.7 and Windows 7
|
1449 |
+
$this->version('Safari', self::VERSION_TYPE_FLOAT) >= 5.0 && !$isMobile ||
|
1450 |
+
|
1451 |
+
// Firefox Desktop 10-18 - Tested on OS X 10.7 and Windows 7
|
1452 |
+
$this->version('Firefox', self::VERSION_TYPE_FLOAT) >= 10.0 && !$isMobile ||
|
1453 |
+
|
1454 |
+
// Internet Explorer 7-9 - Tested on Windows XP, Vista and 7
|
1455 |
+
$this->version('IE', self::VERSION_TYPE_FLOAT) >= 7.0 && !$isMobile ||
|
1456 |
+
|
1457 |
+
// Opera Desktop 10-12 - Tested on OS X 10.7 and Windows 7
|
1458 |
+
$this->version('Opera', self::VERSION_TYPE_FLOAT) >= 10 && !$isMobile
|
1459 |
+
)
|
1460 |
+
{
|
1461 |
+
return self::MOBILE_GRADE_A;
|
1462 |
+
}
|
1463 |
+
|
1464 |
+
if (
|
1465 |
+
$this->is('iOS') && $this->version('iPad', self::VERSION_TYPE_FLOAT) < 4.3 ||
|
1466 |
+
$this->is('iOS') && $this->version('iPhone', self::VERSION_TYPE_FLOAT) < 4.3 ||
|
1467 |
+
$this->is('iOS') && $this->version('iPod', self::VERSION_TYPE_FLOAT) < 4.3 ||
|
1468 |
+
|
1469 |
+
// Blackberry 5.0: Tested on the Storm 2 9550, Bold 9770
|
1470 |
+
$this->is('Blackberry') && $this->version('BlackBerry', self::VERSION_TYPE_FLOAT) >= 5 && $this->version('BlackBerry', self::VERSION_TYPE_FLOAT) < 6 ||
|
1471 |
+
|
1472 |
+
//Opera Mini (5.0-6.5) - Tested on iOS 3.2/4.3 and Android 2.3
|
1473 |
+
($this->version('Opera Mini', self::VERSION_TYPE_FLOAT) >= 5.0 && $this->version('Opera Mini', self::VERSION_TYPE_FLOAT) <= 7.0 &&
|
1474 |
+
($this->version('Android', self::VERSION_TYPE_FLOAT) >= 2.3 || $this->is('iOS'))) ||
|
1475 |
+
|
1476 |
+
// Nokia Symbian^3 - Tested on Nokia N8 (Symbian^3), C7 (Symbian^3), also works on N97 (Symbian^1)
|
1477 |
+
$this->match('NokiaN8|NokiaC7|N97.*Series60|Symbian/3') ||
|
1478 |
+
|
1479 |
+
// @todo: report this (tested on Nokia N71)
|
1480 |
+
$this->version('Opera Mobi', self::VERSION_TYPE_FLOAT) >= 11 && $this->is('SymbianOS')
|
1481 |
+
)
|
1482 |
+
{
|
1483 |
+
return self::MOBILE_GRADE_B;
|
1484 |
+
}
|
1485 |
+
|
1486 |
+
if (
|
1487 |
+
// Blackberry 4.x - Tested on the Curve 8330
|
1488 |
+
$this->version('BlackBerry', self::VERSION_TYPE_FLOAT) <= 5.0 ||
|
1489 |
+
// Windows Mobile - Tested on the HTC Leo (WinMo 5.2)
|
1490 |
+
$this->match('MSIEMobile|Windows CE.*Mobile') || $this->version('Windows Mobile', self::VERSION_TYPE_FLOAT) <= 5.2 ||
|
1491 |
+
|
1492 |
+
// Tested on original iPhone (3.1), iPhone 3 (3.2)
|
1493 |
+
$this->is('iOS') && $this->version('iPad', self::VERSION_TYPE_FLOAT) <= 3.2 ||
|
1494 |
+
$this->is('iOS') && $this->version('iPhone', self::VERSION_TYPE_FLOAT) <= 3.2 ||
|
1495 |
+
$this->is('iOS') && $this->version('iPod', self::VERSION_TYPE_FLOAT) <= 3.2 ||
|
1496 |
+
|
1497 |
+
// Internet Explorer 7 and older - Tested on Windows XP
|
1498 |
+
$this->version('IE', self::VERSION_TYPE_FLOAT) <= 7.0 && !$isMobile
|
1499 |
+
)
|
1500 |
+
{
|
1501 |
+
return self::MOBILE_GRADE_C;
|
1502 |
+
}
|
1503 |
+
|
1504 |
+
// All older smartphone platforms and featurephones - Any device that doesn't support media queries
|
1505 |
+
// will receive the basic, C grade experience.
|
1506 |
+
return self::MOBILE_GRADE_C;
|
1507 |
+
}
|
1508 |
+
|
1509 |
+
}
|
app/code/local/Wirecard/QPay/Module.php
ADDED
@@ -0,0 +1,39 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Module
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_QPay_Module extends WirecardCEE_Stdlib_Module_ModuleAbstract implements WirecardCEE_Stdlib_Module_ModuleInterface {
|
19 |
+
|
20 |
+
/**
|
21 |
+
* Returns the user configuration details found in 'Config' directory
|
22 |
+
* (user.config.php)
|
23 |
+
*
|
24 |
+
* @return Array
|
25 |
+
*/
|
26 |
+
public static final function getConfig() {
|
27 |
+
return include dirname(__FILE__) . '/Config/user.config.php';
|
28 |
+
}
|
29 |
+
|
30 |
+
/**
|
31 |
+
* Returns the client configuration details found in 'Config' directory
|
32 |
+
* (client.config.php)
|
33 |
+
*
|
34 |
+
* @return Array
|
35 |
+
*/
|
36 |
+
public static final function getClientConfig() {
|
37 |
+
return include dirname(__FILE__) . '/Config/client.config.php';
|
38 |
+
}
|
39 |
+
}
|
app/code/local/Wirecard/QPay/PaymentType.php
ADDED
@@ -0,0 +1,24 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_PaymentType
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_QPay_PaymentType extends WirecardCEE_Stdlib_PaymentTypeAbstract {
|
19 |
+
/**
|
20 |
+
*
|
21 |
+
* @var string
|
22 |
+
*/
|
23 |
+
const SELECT = 'SELECT';
|
24 |
+
}
|
app/code/local/Wirecard/QPay/Response/Initiation.php
ADDED
@@ -0,0 +1,27 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_QPay_Response_Initiation
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QPay
|
15 |
+
* @subpackage Response
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_QPay_Response_Initiation extends WirecardCEE_QPay_Response_ResponseAbstract {
|
19 |
+
/**
|
20 |
+
* @see WirecardCEE_QPay_Response_ResponseAbstract::getStatus()
|
21 |
+
* if we have got a redirectUrl the initiation has been successful
|
22 |
+
* @return int
|
23 |
+
*/
|
24 |
+
public function getStatus() {
|
25 |
+
return ($this->_getField(self::REDIRECT_URL)) ? self::STATE_SUCCESS : self::STATE_FAILURE;
|
26 |
+
}
|
27 |
+
}
|
app/code/local/Wirecard/QPay/Response/ResponseAbstract.php
ADDED
@@ -0,0 +1,47 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_QPay_Response_ResponseAbstract
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QPay
|
15 |
+
* @subpackage Response
|
16 |
+
* @version 3.2.0
|
17 |
+
* @abstract
|
18 |
+
*/
|
19 |
+
abstract class WirecardCEE_QPay_Response_ResponseAbstract extends WirecardCEE_Stdlib_Response_ResponseAbstract {
|
20 |
+
/**
|
21 |
+
* getter for the Response status
|
22 |
+
* values:
|
23 |
+
* 0 ... success
|
24 |
+
* 1 ... failure
|
25 |
+
*
|
26 |
+
* @return int
|
27 |
+
*/
|
28 |
+
abstract public function getStatus();
|
29 |
+
|
30 |
+
/**
|
31 |
+
* getter for list of errors that occured
|
32 |
+
*
|
33 |
+
* @return WirecardCEE_QPay_Error
|
34 |
+
*/
|
35 |
+
public function getError() {
|
36 |
+
$oError = false;
|
37 |
+
|
38 |
+
if(isset($this->_response[self::$ERROR_MESSAGE])) {
|
39 |
+
$oError = new WirecardCEE_QPay_Error($this->_response[self::$ERROR_MESSAGE]);
|
40 |
+
|
41 |
+
if(isset($this->_response[self::$ERROR_CONSUMER_MESSAGE]))
|
42 |
+
$oError->setConsumerMessage($this->_response[self::$ERROR_CONSUMER_MESSAGE]);
|
43 |
+
}
|
44 |
+
|
45 |
+
return $oError;
|
46 |
+
}
|
47 |
+
}
|
app/code/local/Wirecard/QPay/Response/Toolkit/ApproveReversal.php
ADDED
@@ -0,0 +1,19 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_ApproveReversal
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_QPay_Response_Toolkit_ApproveReversal extends WirecardCEE_QPay_Response_Toolkit_ResponseAbstract {}
|
app/code/local/Wirecard/QPay/Response/Toolkit/Deposit.php
ADDED
@@ -0,0 +1,34 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_Deposit
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_QPay_Response_Toolkit_Deposit extends WirecardCEE_QPay_Response_Toolkit_ResponseAbstract {
|
20 |
+
/**
|
21 |
+
* Payment number
|
22 |
+
* @staticvar string
|
23 |
+
*/
|
24 |
+
private static $PAYMENT_NUMBER = 'paymentNumber';
|
25 |
+
|
26 |
+
/**
|
27 |
+
* getter for the returned paymentNumber
|
28 |
+
*
|
29 |
+
* @return string
|
30 |
+
*/
|
31 |
+
public function getPaymentNumber() {
|
32 |
+
return $this->_getField(self::$PAYMENT_NUMBER);
|
33 |
+
}
|
34 |
+
}
|
app/code/local/Wirecard/QPay/Response/Toolkit/DepositReversal.php
ADDED
@@ -0,0 +1,19 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_DepositReversal
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_QPay_Response_Toolkit_DepositReversal extends WirecardCEE_QPay_Response_Toolkit_ResponseAbstract {}
|
app/code/local/Wirecard/QPay/Response/Toolkit/FinancialObject.php
ADDED
@@ -0,0 +1,42 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_FinancialObject
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit
|
17 |
+
* @version 3.2.0
|
18 |
+
* @abstract
|
19 |
+
*/
|
20 |
+
abstract class WirecardCEE_QPay_Response_Toolkit_FinancialObject {
|
21 |
+
/**
|
22 |
+
* Internal data holder
|
23 |
+
* @var Array
|
24 |
+
*/
|
25 |
+
protected $_data = Array();
|
26 |
+
|
27 |
+
/**
|
28 |
+
* Date time format
|
29 |
+
* @staticvar string
|
30 |
+
*/
|
31 |
+
protected static $DATETIME_FORMAT = 'm.d.Y H:i:s';
|
32 |
+
|
33 |
+
/**
|
34 |
+
* getter for given field
|
35 |
+
*
|
36 |
+
* @param string $name
|
37 |
+
* @return mixed <false, string>
|
38 |
+
*/
|
39 |
+
protected function _getField($name) {
|
40 |
+
return (array_key_exists($name, $this->_data)) ? $this->_data[$name] : false;
|
41 |
+
}
|
42 |
+
}
|
app/code/local/Wirecard/QPay/Response/Toolkit/GetOrderDetails.php
ADDED
@@ -0,0 +1,72 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_GetOrderDetails
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_QPay_Response_Toolkit_GetOrderDetails extends WirecardCEE_QPay_Response_Toolkit_ResponseAbstract {
|
20 |
+
/**
|
21 |
+
* Internal order holder
|
22 |
+
* @var WirecardCEE_QPay_Response_Toolkit_Order
|
23 |
+
*/
|
24 |
+
private $_order;
|
25 |
+
|
26 |
+
/**
|
27 |
+
* Order
|
28 |
+
* @staticvar string
|
29 |
+
*/
|
30 |
+
private static $ORDER = 'order';
|
31 |
+
|
32 |
+
/**
|
33 |
+
* Payment
|
34 |
+
* @staticvar string
|
35 |
+
*/
|
36 |
+
private static $PAYMENT = 'payment';
|
37 |
+
|
38 |
+
/**
|
39 |
+
* Credit
|
40 |
+
* @staticvar string
|
41 |
+
*/
|
42 |
+
private static $CREDIT = 'credit';
|
43 |
+
|
44 |
+
/**
|
45 |
+
*
|
46 |
+
* @see WirecardCEE_QPay_Response_Toolkit_Abstract
|
47 |
+
* @param array $result
|
48 |
+
*/
|
49 |
+
public function __construct($result) {
|
50 |
+
parent::__construct($result);
|
51 |
+
|
52 |
+
$orders = $this->_getField(self::$ORDER);
|
53 |
+
$payments = $this->_getField(self::$PAYMENT);
|
54 |
+
$credits = $this->_getField(self::$CREDIT);
|
55 |
+
|
56 |
+
$order = $orders[0];
|
57 |
+
$order['paymentData'] = is_array($payments[0]) ? $payments[0] : Array();
|
58 |
+
$order['creditData'] = is_array($credits[0]) ? $credits[0] : Array();
|
59 |
+
|
60 |
+
$this->_order = new WirecardCEE_QPay_Response_Toolkit_Order($order);
|
61 |
+
|
62 |
+
}
|
63 |
+
|
64 |
+
/**
|
65 |
+
* getter for the returned order object
|
66 |
+
*
|
67 |
+
* @return WirecardCEE_QPay_Response_Toolkit_Order
|
68 |
+
*/
|
69 |
+
public function getOrder() {
|
70 |
+
return $this->_order;
|
71 |
+
}
|
72 |
+
}
|
app/code/local/Wirecard/QPay/Response/Toolkit/Order.php
ADDED
@@ -0,0 +1,406 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_Order
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_QPay_Response_Toolkit_Order extends WirecardCEE_QPay_Response_Toolkit_FinancialObject {
|
20 |
+
/**
|
21 |
+
* CreditIterator object holder
|
22 |
+
* @var WirecardCEE_QPay_Response_Toolkit_Order_CreditIterator
|
23 |
+
* @internal
|
24 |
+
*/
|
25 |
+
private $_credits;
|
26 |
+
|
27 |
+
/**
|
28 |
+
* PaymentIterator object holder
|
29 |
+
* @var WirecardCEE_QPay_Response_Toolkit_Order_PaymentIterator
|
30 |
+
* @internal
|
31 |
+
*/
|
32 |
+
private $_payments;
|
33 |
+
|
34 |
+
/**
|
35 |
+
* Merchant number
|
36 |
+
* @staticvar string
|
37 |
+
* @internal
|
38 |
+
*/
|
39 |
+
private static $MERCHANT_NUMBER = 'merchantNumber';
|
40 |
+
|
41 |
+
/**
|
42 |
+
* Order number
|
43 |
+
* @staticvar string
|
44 |
+
* @internal
|
45 |
+
*/
|
46 |
+
private static $ORDER_NUMBER = 'orderNumber';
|
47 |
+
|
48 |
+
/**
|
49 |
+
* Payment type
|
50 |
+
* @staticvar string
|
51 |
+
* @internal
|
52 |
+
*/
|
53 |
+
private static $PAYMENT_TYPE = 'paymentType';
|
54 |
+
|
55 |
+
/**
|
56 |
+
* Amount
|
57 |
+
* @staticvar string
|
58 |
+
* @internal
|
59 |
+
*/
|
60 |
+
private static $AMOUNT = 'amount';
|
61 |
+
|
62 |
+
/**
|
63 |
+
* Brand
|
64 |
+
* @staticvar string
|
65 |
+
* @internal
|
66 |
+
*/
|
67 |
+
private static $BRAND = 'brand';
|
68 |
+
|
69 |
+
/**
|
70 |
+
* Currency
|
71 |
+
* @staticvar string
|
72 |
+
* @internal
|
73 |
+
*/
|
74 |
+
private static $CURRENCY = 'currency';
|
75 |
+
|
76 |
+
/**
|
77 |
+
* Order description
|
78 |
+
* @staticvar string
|
79 |
+
* @internal
|
80 |
+
*/
|
81 |
+
private static $ORDER_DESCRIPTION = 'orderDescription';
|
82 |
+
|
83 |
+
/**
|
84 |
+
* Acquirer
|
85 |
+
* @staticvar string
|
86 |
+
* @internal
|
87 |
+
*/
|
88 |
+
private static $ACQUIRER = 'acquirer';
|
89 |
+
|
90 |
+
/**
|
91 |
+
* Contract number
|
92 |
+
* @staticvar string
|
93 |
+
* @internal
|
94 |
+
*/
|
95 |
+
private static $CONTRACT_NUMBER = 'contractNumber';
|
96 |
+
|
97 |
+
/**
|
98 |
+
* Operations allowes
|
99 |
+
* @staticvar string
|
100 |
+
* @internal
|
101 |
+
*/
|
102 |
+
private static $OPERATIONS_ALLOWED = 'operationsAllowed';
|
103 |
+
|
104 |
+
/**
|
105 |
+
* Order reference
|
106 |
+
* @staticvar string
|
107 |
+
* @internal
|
108 |
+
*/
|
109 |
+
private static $ORDER_REFERENCE = 'orderReference';
|
110 |
+
|
111 |
+
/**
|
112 |
+
* Customer statement
|
113 |
+
* @staticvar string
|
114 |
+
* @internal
|
115 |
+
*/
|
116 |
+
private static $CUSTOMER_STATEMENT = 'customerStatement';
|
117 |
+
|
118 |
+
/**
|
119 |
+
* Order text
|
120 |
+
* @staticvar string
|
121 |
+
* @internal
|
122 |
+
*/
|
123 |
+
private static $ORDER_TEXT = 'orderText';
|
124 |
+
|
125 |
+
/**
|
126 |
+
* Time created
|
127 |
+
* @staticvar string
|
128 |
+
* @internal
|
129 |
+
*/
|
130 |
+
private static $TIME_CREATED = 'timeCreated';
|
131 |
+
|
132 |
+
/**
|
133 |
+
* Time modified
|
134 |
+
* @staticvar string
|
135 |
+
* @internal
|
136 |
+
*/
|
137 |
+
private static $TIME_MODIFIED = 'timeModified';
|
138 |
+
|
139 |
+
/**
|
140 |
+
* State
|
141 |
+
* @staticvar string
|
142 |
+
* @internal
|
143 |
+
*/
|
144 |
+
private static $STATE = 'state';
|
145 |
+
|
146 |
+
/**
|
147 |
+
* Source number
|
148 |
+
* @staticvar string
|
149 |
+
* @internal
|
150 |
+
*/
|
151 |
+
private static $SOURCE_ORDER_NUMBER = 'sourceOrderNumber';
|
152 |
+
|
153 |
+
/**
|
154 |
+
* Merchant number
|
155 |
+
* @staticvar string
|
156 |
+
* @internal
|
157 |
+
*/
|
158 |
+
private static $PAYMENTTYPE_PAYPAL = 'PPL';
|
159 |
+
|
160 |
+
/**
|
161 |
+
* Merchant number
|
162 |
+
* @staticvar string
|
163 |
+
* @internal
|
164 |
+
*/
|
165 |
+
private static $PAYMENTTYPE_SOFORTUEBERWEISUNG = 'SUE';
|
166 |
+
|
167 |
+
/**
|
168 |
+
* Merchant number
|
169 |
+
* @staticvar string
|
170 |
+
* @internal
|
171 |
+
*/
|
172 |
+
private static $PAYMENTTYPE_IDEAL = 'IDL';
|
173 |
+
|
174 |
+
/**
|
175 |
+
* creates an instance of the {@link
|
176 |
+
* WirecardCEE_QPay_Response_Toolkit_Order} object
|
177 |
+
*
|
178 |
+
* @param string[] $orderData
|
179 |
+
*/
|
180 |
+
public function __construct($orderData) {
|
181 |
+
$this->_setPayments($orderData['paymentData']);
|
182 |
+
$this->_setCredits($orderData['creditData']);
|
183 |
+
|
184 |
+
unset($orderData['paymentData']);
|
185 |
+
unset($orderData['creditData']);
|
186 |
+
|
187 |
+
$this->_data = $orderData;
|
188 |
+
}
|
189 |
+
|
190 |
+
/**
|
191 |
+
* setter for payment object iterator
|
192 |
+
*
|
193 |
+
* @access private
|
194 |
+
* @param string[] $payments
|
195 |
+
*/
|
196 |
+
private function _setPayments($paymentEntries) {
|
197 |
+
$payments = Array();
|
198 |
+
foreach($paymentEntries as $paymentEntry) {
|
199 |
+
switch($paymentEntry['paymentType']) {
|
200 |
+
case self::$PAYMENTTYPE_PAYPAL:
|
201 |
+
$payments[] = new WirecardCEE_QPay_Response_Toolkit_Order_Payment_Paypal($paymentEntry);
|
202 |
+
break;
|
203 |
+
case self::$PAYMENTTYPE_SOFORTUEBERWEISUNG:
|
204 |
+
$payments[] = new WirecardCEE_QPay_Response_Toolkit_Order_Payment_Sofortueberweisung($paymentEntry);
|
205 |
+
break;
|
206 |
+
case self::$PAYMENTTYPE_IDEAL:
|
207 |
+
$payments[] = new WirecardCEE_QPay_Response_Toolkit_Order_Payment_Ideal($paymentEntry);
|
208 |
+
break;
|
209 |
+
default:
|
210 |
+
$payments[] = new WirecardCEE_QPay_Response_Toolkit_Order_Payment($paymentEntry);
|
211 |
+
break;
|
212 |
+
}
|
213 |
+
}
|
214 |
+
$this->_payments = new WirecardCEE_QPay_Response_Toolkit_Order_PaymentIterator($payments);
|
215 |
+
}
|
216 |
+
|
217 |
+
/**
|
218 |
+
* setter for credit object iterator
|
219 |
+
*
|
220 |
+
* @access private
|
221 |
+
* @param string[] $credits
|
222 |
+
*/
|
223 |
+
private function _setCredits($creditEntries) {
|
224 |
+
$credits = Array();
|
225 |
+
foreach($creditEntries as $creditEntry) {
|
226 |
+
$credits[] = new WirecardCEE_QPay_Response_Toolkit_Order_Credit($creditEntry);
|
227 |
+
}
|
228 |
+
$this->_credits = new WirecardCEE_QPay_Response_Toolkit_Order_CreditIterator($credits);
|
229 |
+
}
|
230 |
+
|
231 |
+
/**
|
232 |
+
* getter for order merchant number
|
233 |
+
*
|
234 |
+
* @return string
|
235 |
+
*/
|
236 |
+
public function getMerchantNumber() {
|
237 |
+
return $this->_getField(self::$MERCHANT_NUMBER);
|
238 |
+
}
|
239 |
+
|
240 |
+
/**
|
241 |
+
* getter for order number
|
242 |
+
*
|
243 |
+
* @return string
|
244 |
+
*/
|
245 |
+
public function getOrderNumber() {
|
246 |
+
return $this->_getField(self::$ORDER_NUMBER);
|
247 |
+
}
|
248 |
+
|
249 |
+
/**
|
250 |
+
* getter for used payment type
|
251 |
+
*
|
252 |
+
* @return string
|
253 |
+
*/
|
254 |
+
public function getPaymentType() {
|
255 |
+
return $this->_getField(self::$PAYMENT_TYPE);
|
256 |
+
}
|
257 |
+
|
258 |
+
/**
|
259 |
+
* getter for orders amount
|
260 |
+
*
|
261 |
+
* @return string
|
262 |
+
*/
|
263 |
+
public function getAmount() {
|
264 |
+
return $this->_getField(self::$AMOUNT);
|
265 |
+
}
|
266 |
+
|
267 |
+
/**
|
268 |
+
* getter for orders brand
|
269 |
+
*
|
270 |
+
* @return string
|
271 |
+
*/
|
272 |
+
public function getBrand() {
|
273 |
+
return $this->_getField(self::$BRAND);
|
274 |
+
}
|
275 |
+
|
276 |
+
/**
|
277 |
+
* getter for orders currency
|
278 |
+
*
|
279 |
+
* @return type
|
280 |
+
*/
|
281 |
+
public function getCurrency() {
|
282 |
+
return $this->_getField(self::$CURRENCY);
|
283 |
+
}
|
284 |
+
|
285 |
+
/**
|
286 |
+
* getter for the order description
|
287 |
+
*
|
288 |
+
* @return string
|
289 |
+
*/
|
290 |
+
public function getOrderDescription() {
|
291 |
+
return $this->_getField(self::$ORDER_DESCRIPTION);
|
292 |
+
}
|
293 |
+
|
294 |
+
/**
|
295 |
+
* getter for the acquirer name
|
296 |
+
*
|
297 |
+
* @return string
|
298 |
+
*/
|
299 |
+
public function getAcquirer() {
|
300 |
+
return $this->_getField(self::$ACQUIRER);
|
301 |
+
}
|
302 |
+
|
303 |
+
/**
|
304 |
+
* getter for the contract number
|
305 |
+
*
|
306 |
+
* @return string
|
307 |
+
*/
|
308 |
+
public function getContractNumber() {
|
309 |
+
return $this->_getField(self::$CONTRACT_NUMBER);
|
310 |
+
}
|
311 |
+
|
312 |
+
/**
|
313 |
+
* getter for allowed follow-up operations
|
314 |
+
*
|
315 |
+
* @return string[]
|
316 |
+
*/
|
317 |
+
public function getOperationsAllowed() {
|
318 |
+
if ($this->_getField(self::$OPERATIONS_ALLOWED) == '') {
|
319 |
+
return Array();
|
320 |
+
}
|
321 |
+
else {
|
322 |
+
return explode(',', $this->_getField(self::$OPERATIONS_ALLOWED));
|
323 |
+
}
|
324 |
+
}
|
325 |
+
|
326 |
+
/**
|
327 |
+
* getter for order reference
|
328 |
+
*
|
329 |
+
* @return string
|
330 |
+
*/
|
331 |
+
public function getOrderReference() {
|
332 |
+
return $this->_getField(self::$ORDER_REFERENCE);
|
333 |
+
}
|
334 |
+
|
335 |
+
/**
|
336 |
+
* getter for customer statement text
|
337 |
+
*
|
338 |
+
* @return string
|
339 |
+
*/
|
340 |
+
public function getCustomerStatement() {
|
341 |
+
return $this->_getField(self::$CUSTOMER_STATEMENT);
|
342 |
+
}
|
343 |
+
|
344 |
+
/**
|
345 |
+
* getter for the order text
|
346 |
+
*
|
347 |
+
* @return string
|
348 |
+
*/
|
349 |
+
public function getOrderText() {
|
350 |
+
return $this->_getField(self::$ORDER_TEXT);
|
351 |
+
}
|
352 |
+
|
353 |
+
/**
|
354 |
+
* getter for the time this order has been created
|
355 |
+
*
|
356 |
+
* @return DateTime
|
357 |
+
*/
|
358 |
+
public function getTimeCreated() {
|
359 |
+
return DateTime::createFromFormat(self::$DATETIME_FORMAT, $this->_getField(self::$TIME_CREATED));
|
360 |
+
}
|
361 |
+
|
362 |
+
/**
|
363 |
+
* getter for the last time this order has been modified
|
364 |
+
*
|
365 |
+
* @return DateTime
|
366 |
+
*/
|
367 |
+
public function getTimeModified() {
|
368 |
+
return DateTime::createFromFormat(self::$DATETIME_FORMAT, $this->_getField(self::$TIME_MODIFIED));
|
369 |
+
}
|
370 |
+
|
371 |
+
/**
|
372 |
+
* getter for the current order state
|
373 |
+
*
|
374 |
+
* @return string
|
375 |
+
*/
|
376 |
+
public function getState() {
|
377 |
+
return $this->_getField(self::$STATE);
|
378 |
+
}
|
379 |
+
|
380 |
+
/**
|
381 |
+
* getter for the source order number
|
382 |
+
*
|
383 |
+
* @return string
|
384 |
+
*/
|
385 |
+
public function getSourceOrderNumber() {
|
386 |
+
return $this->_getField(self::$SOURCE_ORDER_NUMBER);
|
387 |
+
}
|
388 |
+
|
389 |
+
/**
|
390 |
+
* getter for corresponding payment objects
|
391 |
+
*
|
392 |
+
* @return WirecardCEE_QPay_Response_Toolkit_Order_PaymentIterator
|
393 |
+
*/
|
394 |
+
public function getPayments() {
|
395 |
+
return $this->_payments;
|
396 |
+
}
|
397 |
+
|
398 |
+
/**
|
399 |
+
* getter for corresponding credit objects
|
400 |
+
*
|
401 |
+
* @return WirecardCEE_QPay_Response_Toolkit_Order_CreditIterator
|
402 |
+
*/
|
403 |
+
public function getCredits() {
|
404 |
+
return $this->_credits;
|
405 |
+
}
|
406 |
+
}
|
app/code/local/Wirecard/QPay/Response/Toolkit/Order/Credit.php
ADDED
@@ -0,0 +1,206 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_Order_Credit
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit_Order
|
17 |
+
* @version 3.2.0
|
18 |
+
* @abstract
|
19 |
+
*/
|
20 |
+
class WirecardCEE_QPay_Response_Toolkit_Order_Credit extends WirecardCEE_QPay_Response_Toolkit_FinancialObject {
|
21 |
+
/**
|
22 |
+
* Merchant number
|
23 |
+
* @staticvar string
|
24 |
+
* @internal
|
25 |
+
*/
|
26 |
+
private static $MERCHANT_NUMBER = 'merchantNumber';
|
27 |
+
|
28 |
+
/**
|
29 |
+
* Credit number
|
30 |
+
* @staticvar string
|
31 |
+
* @internal
|
32 |
+
*/
|
33 |
+
private static $CREDIT_NUMBER = 'creditNumber';
|
34 |
+
|
35 |
+
/**
|
36 |
+
* Order number
|
37 |
+
* @staticvar string
|
38 |
+
* @internal
|
39 |
+
*/
|
40 |
+
private static $ORDER_NUMBER = 'orderNumber';
|
41 |
+
|
42 |
+
/**
|
43 |
+
* Batch number
|
44 |
+
* @staticvar string
|
45 |
+
* @internal
|
46 |
+
*/
|
47 |
+
private static $BATCH_NUMBER = 'batchNumber';
|
48 |
+
|
49 |
+
/**
|
50 |
+
* Amount
|
51 |
+
* @staticvar string
|
52 |
+
* @internal
|
53 |
+
*/
|
54 |
+
private static $AMOUNT = 'amount';
|
55 |
+
|
56 |
+
/**
|
57 |
+
* Currency
|
58 |
+
* @staticvar string
|
59 |
+
* @internal
|
60 |
+
*/
|
61 |
+
private static $CURRENCY = 'currency';
|
62 |
+
|
63 |
+
/**
|
64 |
+
* Time created
|
65 |
+
* @staticvar string
|
66 |
+
* @internal
|
67 |
+
*/
|
68 |
+
private static $TIME_CREATED = 'timeCreated';
|
69 |
+
|
70 |
+
/**
|
71 |
+
* Time modified
|
72 |
+
* @staticvar string
|
73 |
+
* @internal
|
74 |
+
*/
|
75 |
+
private static $TIME_MODIFIED = 'timeModified';
|
76 |
+
|
77 |
+
/**
|
78 |
+
* State
|
79 |
+
* @staticvar string
|
80 |
+
* @internal
|
81 |
+
*/
|
82 |
+
private static $STATE = 'state';
|
83 |
+
|
84 |
+
/**
|
85 |
+
* Operations allowed
|
86 |
+
* @staticvar string
|
87 |
+
* @internal
|
88 |
+
*/
|
89 |
+
private static $OPERATIONS_ALLOWED = 'operationsAllowed';
|
90 |
+
|
91 |
+
/**
|
92 |
+
* Gateway reference number
|
93 |
+
* @staticvar string
|
94 |
+
* @internal
|
95 |
+
*/
|
96 |
+
private static $GATEWAY_REFERENCE_NUMBER = 'gatewayReferenceNumber';
|
97 |
+
|
98 |
+
/**
|
99 |
+
* creates an instance of an {@link
|
100 |
+
* WirecardCEE_QPay_Response_Toolkit_Order_Credit} object
|
101 |
+
*
|
102 |
+
* @param string[] $creditData
|
103 |
+
*/
|
104 |
+
public function __construct($creditData) {
|
105 |
+
$this->_data = $creditData;
|
106 |
+
}
|
107 |
+
|
108 |
+
/**
|
109 |
+
* getter for credits merchant number
|
110 |
+
*
|
111 |
+
* @return string
|
112 |
+
*/
|
113 |
+
public function getMerchantNumber() {
|
114 |
+
return (string) $this->_getField(self::$MERCHANT_NUMBER);
|
115 |
+
}
|
116 |
+
|
117 |
+
/**
|
118 |
+
* getter for credit number
|
119 |
+
*
|
120 |
+
* @return string
|
121 |
+
*/
|
122 |
+
public function getCreditNumber() {
|
123 |
+
return (string) $this->_getField(self::$CREDIT_NUMBER);
|
124 |
+
}
|
125 |
+
|
126 |
+
/**
|
127 |
+
* getter for the corresponding order number
|
128 |
+
*
|
129 |
+
* @return string
|
130 |
+
*/
|
131 |
+
public function getOrderNumber() {
|
132 |
+
return $this->_getField(self::$ORDER_NUMBER);
|
133 |
+
}
|
134 |
+
|
135 |
+
/**
|
136 |
+
* getter for the corresponding batch number
|
137 |
+
*
|
138 |
+
* @return string
|
139 |
+
*/
|
140 |
+
public function getBatchNumber() {
|
141 |
+
return $this->_getField(self::$BATCH_NUMBER);
|
142 |
+
}
|
143 |
+
|
144 |
+
/**
|
145 |
+
* getter for the credit amount
|
146 |
+
*
|
147 |
+
* @return string
|
148 |
+
*/
|
149 |
+
public function getAmount() {
|
150 |
+
return $this->_getField(self::$AMOUNT);
|
151 |
+
}
|
152 |
+
|
153 |
+
/**
|
154 |
+
* getter for the credit currency
|
155 |
+
*
|
156 |
+
* @return string
|
157 |
+
*/
|
158 |
+
public function getCurrency() {
|
159 |
+
return (string) $this->_getField(self::$CURRENCY);
|
160 |
+
}
|
161 |
+
|
162 |
+
/**
|
163 |
+
* getter for the creation time
|
164 |
+
*
|
165 |
+
* @return DateTime
|
166 |
+
*/
|
167 |
+
public function getTimeCreated() {
|
168 |
+
return DateTime::createFromFormat(self::$DATETIME_FORMAT, $this->_getField(self::$TIME_CREATED));
|
169 |
+
}
|
170 |
+
|
171 |
+
/**
|
172 |
+
* getter for the last time this credit has been updated
|
173 |
+
*
|
174 |
+
* @return DateTime
|
175 |
+
*/
|
176 |
+
public function getTimeModified() {
|
177 |
+
return DateTime::createFromFormat(self::$DATETIME_FORMAT, $this->_getField(self::$TIME_MODIFIED));
|
178 |
+
}
|
179 |
+
|
180 |
+
/**
|
181 |
+
* getter for the currenc credit state
|
182 |
+
*
|
183 |
+
* @return string
|
184 |
+
*/
|
185 |
+
public function getState() {
|
186 |
+
return $this->_getField(self::$STATE);
|
187 |
+
}
|
188 |
+
|
189 |
+
/**
|
190 |
+
* getter for the allowed follow-up operations
|
191 |
+
*
|
192 |
+
* @return array
|
193 |
+
*/
|
194 |
+
public function getOperationsAllowed() {
|
195 |
+
return explode(',', $this->_getField(self::$OPERATIONS_ALLOWED));
|
196 |
+
}
|
197 |
+
|
198 |
+
/**
|
199 |
+
* getter for the gateway reference number
|
200 |
+
*
|
201 |
+
* @return string
|
202 |
+
*/
|
203 |
+
public function getGatewayReferenceNumber() {
|
204 |
+
return $this->_getField(self::$GATEWAY_REFERENCE_NUMBER);
|
205 |
+
}
|
206 |
+
}
|
app/code/local/Wirecard/QPay/Response/Toolkit/Order/CreditIterator.php
ADDED
@@ -0,0 +1,20 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_Order_CreditIterator
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit_Order
|
17 |
+
* @version 3.2.0
|
18 |
+
* @abstract
|
19 |
+
*/
|
20 |
+
class WirecardCEE_QPay_Response_Toolkit_Order_CreditIterator extends WirecardCEE_QPay_Response_Toolkit_Order_OrderIterator {}
|
app/code/local/Wirecard/QPay/Response/Toolkit/Order/OrderIterator.php
ADDED
@@ -0,0 +1,81 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_Order_OrderIterator
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit_Order
|
17 |
+
* @version 3.2.0
|
18 |
+
* @abstract
|
19 |
+
* @see Iterator
|
20 |
+
*/
|
21 |
+
abstract class WirecardCEE_QPay_Response_Toolkit_Order_OrderIterator implements Iterator {
|
22 |
+
|
23 |
+
/**
|
24 |
+
* Current position
|
25 |
+
* @var int
|
26 |
+
*/
|
27 |
+
protected $_position;
|
28 |
+
|
29 |
+
/**
|
30 |
+
* Objects to iterate through
|
31 |
+
* @var Array
|
32 |
+
*/
|
33 |
+
protected $_objectArray;
|
34 |
+
|
35 |
+
/**
|
36 |
+
*
|
37 |
+
* @param array $objectArray objects to iterate through
|
38 |
+
*/
|
39 |
+
public function __construct(array $objectArray) {
|
40 |
+
$this->_position = 0;
|
41 |
+
$this->_objectArray = $objectArray;
|
42 |
+
}
|
43 |
+
|
44 |
+
/**
|
45 |
+
* resets the current position to 0(first entry)
|
46 |
+
*/
|
47 |
+
public function rewind() {
|
48 |
+
$this->_position = 0;
|
49 |
+
}
|
50 |
+
|
51 |
+
/**
|
52 |
+
* the current Object
|
53 |
+
* @return Object
|
54 |
+
*/
|
55 |
+
public function current() {
|
56 |
+
return $this->_objectArray[$this->_position];
|
57 |
+
}
|
58 |
+
|
59 |
+
/**
|
60 |
+
* the current position
|
61 |
+
* @return int
|
62 |
+
*/
|
63 |
+
public function key() {
|
64 |
+
return $this->_position;
|
65 |
+
}
|
66 |
+
|
67 |
+
/**
|
68 |
+
* go to the next position
|
69 |
+
*/
|
70 |
+
public function next() {
|
71 |
+
++$this->_position;
|
72 |
+
}
|
73 |
+
|
74 |
+
/**
|
75 |
+
* checks if position is valid
|
76 |
+
* @see Iterator::valid()
|
77 |
+
*/
|
78 |
+
public function valid() {
|
79 |
+
return (bool) isset($this->_objectArray[$this->_position]);
|
80 |
+
}
|
81 |
+
}
|
app/code/local/Wirecard/QPay/Response/Toolkit/Order/Payment.php
ADDED
@@ -0,0 +1,253 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_Order_Payment
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit_Order
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_QPay_Response_Toolkit_Order_Payment extends WirecardCEE_QPay_Response_Toolkit_FinancialObject {
|
20 |
+
/**
|
21 |
+
* Merchant number
|
22 |
+
* @staticvar string
|
23 |
+
* @internal
|
24 |
+
*/
|
25 |
+
private static $MERCHANT_NUMBER = 'merchantNumber';
|
26 |
+
|
27 |
+
/**
|
28 |
+
* Payment number
|
29 |
+
* @staticvar string
|
30 |
+
* @internal
|
31 |
+
*/
|
32 |
+
private static $PAYMENT_NUMBER = 'paymentNumber';
|
33 |
+
|
34 |
+
/**
|
35 |
+
* Order number
|
36 |
+
* @staticvar string
|
37 |
+
* @internal
|
38 |
+
*/
|
39 |
+
private static $ORDER_NUMBER = 'orderNumber';
|
40 |
+
|
41 |
+
/**
|
42 |
+
* Approve amount
|
43 |
+
* @staticvar string
|
44 |
+
* @internal
|
45 |
+
*/
|
46 |
+
private static $APPROVE_AMOUNT = 'approveAmount';
|
47 |
+
|
48 |
+
/**
|
49 |
+
* Deposit amount
|
50 |
+
* @staticvar string
|
51 |
+
* @internal
|
52 |
+
*/
|
53 |
+
private static $DEPOSIT_AMOUNT = 'depositAmount';
|
54 |
+
|
55 |
+
/**
|
56 |
+
* Currency
|
57 |
+
* @staticvar string
|
58 |
+
* @internal
|
59 |
+
*/
|
60 |
+
private static $CURRENCY = 'currency';
|
61 |
+
|
62 |
+
/**
|
63 |
+
* Time created
|
64 |
+
* @staticvar string
|
65 |
+
* @internal
|
66 |
+
*/
|
67 |
+
private static $TIME_CREATED = 'timeCreated';
|
68 |
+
|
69 |
+
/**
|
70 |
+
* Time modified
|
71 |
+
* @staticvar string
|
72 |
+
* @internal
|
73 |
+
*/
|
74 |
+
private static $TIME_MODIFIED = 'timeModified';
|
75 |
+
|
76 |
+
/**
|
77 |
+
* State
|
78 |
+
* @staticvar string
|
79 |
+
* @internal
|
80 |
+
*/
|
81 |
+
private static $STATE = 'state';
|
82 |
+
|
83 |
+
/**
|
84 |
+
* Payment type
|
85 |
+
* @staticvar string
|
86 |
+
* @internal
|
87 |
+
*/
|
88 |
+
private static $PAYMENT_TYPE = 'paymentType';
|
89 |
+
|
90 |
+
/**
|
91 |
+
* Operations allowed
|
92 |
+
* @staticvar string
|
93 |
+
* @internal
|
94 |
+
*/
|
95 |
+
private static $OPERATIONS_ALLOWED = 'operationsAllowed';
|
96 |
+
|
97 |
+
/**
|
98 |
+
* Gateway reference number
|
99 |
+
* @staticvar string
|
100 |
+
* @internal
|
101 |
+
*/
|
102 |
+
private static $GATEWAY_REFERENCE_NUMBER = 'gatewayReferenceNumber';
|
103 |
+
|
104 |
+
/**
|
105 |
+
* AVS result code
|
106 |
+
* @staticvar string
|
107 |
+
* @internal
|
108 |
+
*/
|
109 |
+
private static $AVS_RESULT_CODE = 'avsResultCode';
|
110 |
+
|
111 |
+
/**
|
112 |
+
* AVS result message
|
113 |
+
* @staticvar string
|
114 |
+
* @internal
|
115 |
+
*/
|
116 |
+
private static $AVS_RESULT_MESSAGE = 'avsResultMessage';
|
117 |
+
|
118 |
+
/**
|
119 |
+
* creates an instance of an {@link
|
120 |
+
* WirecardCEE_QPay_Response_Toolkit_Order_Payment} object
|
121 |
+
*
|
122 |
+
* @param string[] $paymentData
|
123 |
+
*/
|
124 |
+
public function __construct($paymentData) {
|
125 |
+
$this->_data = $paymentData;
|
126 |
+
}
|
127 |
+
|
128 |
+
/**
|
129 |
+
* getter for payments merchant number
|
130 |
+
*
|
131 |
+
* @return string
|
132 |
+
*/
|
133 |
+
public function getMerchantNumber() {
|
134 |
+
return $this->_getField(self::$MERCHANT_NUMBER);
|
135 |
+
}
|
136 |
+
|
137 |
+
/**
|
138 |
+
* getter for the payment number
|
139 |
+
*
|
140 |
+
* @return string
|
141 |
+
*/
|
142 |
+
public function getPaymentNumber() {
|
143 |
+
return $this->_getField(self::$PAYMENT_NUMBER);
|
144 |
+
}
|
145 |
+
|
146 |
+
/**
|
147 |
+
* getter for the corrensponding order number
|
148 |
+
*
|
149 |
+
* @return string
|
150 |
+
*/
|
151 |
+
public function getOrderNumber() {
|
152 |
+
return $this->_getField(self::$ORDER_NUMBER);
|
153 |
+
}
|
154 |
+
|
155 |
+
/**
|
156 |
+
* getter for the approved amount
|
157 |
+
*
|
158 |
+
* @return string
|
159 |
+
*/
|
160 |
+
public function getApproveAmount() {
|
161 |
+
return $this->_getField(self::$APPROVE_AMOUNT);
|
162 |
+
}
|
163 |
+
|
164 |
+
/**
|
165 |
+
* getter for the deposited amount
|
166 |
+
*
|
167 |
+
* @return string
|
168 |
+
*/
|
169 |
+
public function getDepositAmount() {
|
170 |
+
return $this->_getField(self::$DEPOSIT_AMOUNT);
|
171 |
+
}
|
172 |
+
|
173 |
+
/**
|
174 |
+
* getter for the payment currency
|
175 |
+
*
|
176 |
+
* @return string
|
177 |
+
*/
|
178 |
+
public function getCurrency() {
|
179 |
+
return $this->_getField(self::$CURRENCY);
|
180 |
+
}
|
181 |
+
|
182 |
+
/**
|
183 |
+
* getter for the creation time of this payment
|
184 |
+
*
|
185 |
+
* @return DateTime
|
186 |
+
*/
|
187 |
+
public function getTimeCreated() {
|
188 |
+
return DateTime::createFromFormat(self::$DATETIME_FORMAT, $this->_getField(self::$TIME_CREATED));
|
189 |
+
}
|
190 |
+
|
191 |
+
/**
|
192 |
+
* getter for the last time this payment has been updated
|
193 |
+
*
|
194 |
+
* @return DateTime
|
195 |
+
*/
|
196 |
+
public function getTimeModified() {
|
197 |
+
return DateTime::createFromFormat(self::$DATETIME_FORMAT, $this->_getField(self::$TIME_MODIFIED));
|
198 |
+
}
|
199 |
+
|
200 |
+
/**
|
201 |
+
* getter for the current payment state
|
202 |
+
*
|
203 |
+
* @return string
|
204 |
+
*/
|
205 |
+
public function getState() {
|
206 |
+
return $this->_getField(self::$STATE);
|
207 |
+
}
|
208 |
+
|
209 |
+
/**
|
210 |
+
* getter for the paymenttype
|
211 |
+
*
|
212 |
+
* @return string
|
213 |
+
*/
|
214 |
+
public function getPaymentType() {
|
215 |
+
return $this->_getField(self::$PAYMENT_TYPE);
|
216 |
+
}
|
217 |
+
|
218 |
+
/**
|
219 |
+
* getter for the allowed follow-up operations
|
220 |
+
*
|
221 |
+
* @return string[]
|
222 |
+
*/
|
223 |
+
public function getOperationsAllowed() {
|
224 |
+
return explode(',', $this->_getField(self::$OPERATIONS_ALLOWED));
|
225 |
+
}
|
226 |
+
|
227 |
+
/**
|
228 |
+
* getter for the gateway reference number
|
229 |
+
*
|
230 |
+
* @return string
|
231 |
+
*/
|
232 |
+
public function getGatewayReferencenumber() {
|
233 |
+
return $this->_getField(self::$GATEWAY_REFERENCE_NUMBER);
|
234 |
+
}
|
235 |
+
|
236 |
+
/**
|
237 |
+
* getter for the AVS result-code
|
238 |
+
*
|
239 |
+
* @return string
|
240 |
+
*/
|
241 |
+
public function getAvsResultCode() {
|
242 |
+
return $this->_getField(self::$AVS_RESULT_CODE);
|
243 |
+
}
|
244 |
+
|
245 |
+
/**
|
246 |
+
* getter for the AVS result-message
|
247 |
+
*
|
248 |
+
* @return string
|
249 |
+
*/
|
250 |
+
public function getAvsResultMessage() {
|
251 |
+
return $this->_getField(self::$AVS_RESULT_MESSAGE);
|
252 |
+
}
|
253 |
+
}
|
app/code/local/Wirecard/QPay/Response/Toolkit/Order/Payment/Ideal.php
ADDED
@@ -0,0 +1,67 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_Order_Payment_Ideal
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit_Order_Payment
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_QPay_Response_Toolkit_Order_Payment_Ideal extends WirecardCEE_QPay_Response_Toolkit_Order_Payment {
|
20 |
+
/**
|
21 |
+
* iDEAL consumer name
|
22 |
+
* @staticvar string
|
23 |
+
* @internal
|
24 |
+
*/
|
25 |
+
private static $CONSUMER_NAME = 'idealConsumerName';
|
26 |
+
|
27 |
+
/**
|
28 |
+
* iDEAL consumer city
|
29 |
+
* @staticvar string
|
30 |
+
* @internal
|
31 |
+
*/
|
32 |
+
private static $CONSUMER_CITY = 'idealConsumerCity';
|
33 |
+
|
34 |
+
/**
|
35 |
+
* iDEAL consumer city
|
36 |
+
* @staticvar string
|
37 |
+
* @internal
|
38 |
+
*/
|
39 |
+
private static $CONSUMER_ACCOUNT_NUMBER = 'idealConsumerAccountNumber';
|
40 |
+
|
41 |
+
/**
|
42 |
+
* getter for iDEAL consumer Name
|
43 |
+
*
|
44 |
+
* @return string
|
45 |
+
*/
|
46 |
+
public function getConsumerName() {
|
47 |
+
return $this->_getField(self::$CONSUMER_NAME);
|
48 |
+
}
|
49 |
+
|
50 |
+
/**
|
51 |
+
* getter for iDEAL consumer City
|
52 |
+
*
|
53 |
+
* @return string
|
54 |
+
*/
|
55 |
+
public function getConsumerCity() {
|
56 |
+
return $this->_getField(self::$CONSUMER_CITY);
|
57 |
+
}
|
58 |
+
|
59 |
+
/**
|
60 |
+
* getter for iDEAL consumer account-number
|
61 |
+
*
|
62 |
+
* @return string
|
63 |
+
*/
|
64 |
+
public function getConsumerAccountNumber() {
|
65 |
+
return $this->_getField(self::$CONSUMER_ACCOUNT_NUMBER);
|
66 |
+
}
|
67 |
+
}
|
app/code/local/Wirecard/QPay/Response/Toolkit/Order/Payment/Paypal.php
ADDED
@@ -0,0 +1,227 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_Order_Payment_Paypal
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit_Order_Payment
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_QPay_Response_Toolkit_Order_Payment_Paypal extends WirecardCEE_QPay_Response_Toolkit_Order_Payment {
|
20 |
+
/**
|
21 |
+
* PayPal - payer ID
|
22 |
+
* @staticvar string
|
23 |
+
* @internal
|
24 |
+
*/
|
25 |
+
private static $PAYER_ID = 'paypalPayerID';
|
26 |
+
|
27 |
+
/**
|
28 |
+
* PayPal - payer email
|
29 |
+
* @staticvar string
|
30 |
+
* @internal
|
31 |
+
*/
|
32 |
+
private static $PAYER_EMAIL = 'paypalPayerEmail';
|
33 |
+
|
34 |
+
/**
|
35 |
+
* PayPal - payer first name
|
36 |
+
* @staticvar string
|
37 |
+
* @internal
|
38 |
+
*/
|
39 |
+
private static $PAYER_FIRST_NAME = 'paypalPayerFirstName';
|
40 |
+
|
41 |
+
/**
|
42 |
+
* PayPal - payer last name
|
43 |
+
* @staticvar string
|
44 |
+
* @internal
|
45 |
+
*/
|
46 |
+
private static $PAYER_LAST_NAME = 'paypalPayerLastName';
|
47 |
+
|
48 |
+
/**
|
49 |
+
* PayPal - payer address - coountry
|
50 |
+
* @staticvar string
|
51 |
+
* @internal
|
52 |
+
*/
|
53 |
+
private static $PAYER_ADDRESS_COUNTRY = 'paypalPayerAddressCountry';
|
54 |
+
|
55 |
+
/**
|
56 |
+
* PayPal - payer address - city
|
57 |
+
* @staticvar string
|
58 |
+
* @internal
|
59 |
+
*/
|
60 |
+
private static $PAYER_ADDRESS_CITY = 'paypalPayerAddressCity';
|
61 |
+
|
62 |
+
/**
|
63 |
+
* PayPal - payer address - state
|
64 |
+
* @staticvar string
|
65 |
+
* @internal
|
66 |
+
*/
|
67 |
+
private static $PAYER_ADDRESS_STATE = 'paypalPayerAddressState';
|
68 |
+
|
69 |
+
/**
|
70 |
+
* PayPal - payer address - name
|
71 |
+
* @staticvar string
|
72 |
+
* @internal
|
73 |
+
*/
|
74 |
+
private static $PAYER_ADDRESS_NAME = 'paypalPayerAddressName';
|
75 |
+
|
76 |
+
/**
|
77 |
+
* PayPal - payer address - street 1
|
78 |
+
* @staticvar string
|
79 |
+
* @internal
|
80 |
+
*/
|
81 |
+
private static $PAYER_ADDRESS_STREET_1 = 'paypalPayerAddressStreet1';
|
82 |
+
|
83 |
+
/**
|
84 |
+
*PayPal - payer address - street 2
|
85 |
+
* @staticvar string
|
86 |
+
* @internal
|
87 |
+
*/
|
88 |
+
private static $PAYER_ADDRESS_STREET_2 = 'paypalPayerAddressStreet2';
|
89 |
+
|
90 |
+
/**
|
91 |
+
* PayPal - payer address - zip
|
92 |
+
* @staticvar string
|
93 |
+
* @internal
|
94 |
+
*/
|
95 |
+
private static $PAYER_ADDRESS_ZIP = 'paypalPayerAddressZIP';
|
96 |
+
|
97 |
+
/**
|
98 |
+
* PayPal - payer address - status
|
99 |
+
* @staticvar string
|
100 |
+
* @internal
|
101 |
+
*/
|
102 |
+
private static $PAYER_ADDRESS_STATUS = 'paypalPayerAddressStatus';
|
103 |
+
|
104 |
+
/**
|
105 |
+
* PayPal - payer eligibility
|
106 |
+
* @staticvar string
|
107 |
+
* @internal
|
108 |
+
*/
|
109 |
+
private static $PROTECTION_ELIGIBILITY = 'paypalProtectionEligibility';
|
110 |
+
|
111 |
+
/**
|
112 |
+
* getter for PayPal payerID
|
113 |
+
*
|
114 |
+
* @return string
|
115 |
+
*/
|
116 |
+
public function getPayerId() {
|
117 |
+
return $this->_getField(self::$PAYER_ID);
|
118 |
+
}
|
119 |
+
|
120 |
+
/**
|
121 |
+
* getter for PayPal payer email
|
122 |
+
*
|
123 |
+
* @return string
|
124 |
+
*/
|
125 |
+
public function getPayerEmail() {
|
126 |
+
return $this->_getField(self::$PAYER_EMAIL);
|
127 |
+
}
|
128 |
+
|
129 |
+
/**
|
130 |
+
* getter for PayPal payer firstname
|
131 |
+
*
|
132 |
+
* @return string
|
133 |
+
*/
|
134 |
+
public function getPayerFirstName() {
|
135 |
+
return $this->_getField(self::$PAYER_FIRST_NAME);
|
136 |
+
}
|
137 |
+
|
138 |
+
/**
|
139 |
+
* getter for PayPal payer lastname
|
140 |
+
*
|
141 |
+
* @return string
|
142 |
+
*/
|
143 |
+
public function getPayerLastName() {
|
144 |
+
return $this->_getField(self::$PAYER_LAST_NAME);
|
145 |
+
}
|
146 |
+
|
147 |
+
/**
|
148 |
+
* getter for PayPal payer country address field
|
149 |
+
*
|
150 |
+
* @return string
|
151 |
+
*/
|
152 |
+
public function getPayerAddressCountry() {
|
153 |
+
return $this->_getField(self::$PAYER_ADDRESS_COUNTRY);
|
154 |
+
}
|
155 |
+
|
156 |
+
/**
|
157 |
+
* getter for PayPal payer city address field
|
158 |
+
*
|
159 |
+
* @return string
|
160 |
+
*/
|
161 |
+
public function getPayerAddressCity() {
|
162 |
+
return $this->_getField(self::$PAYER_ADDRESS_CITY);
|
163 |
+
}
|
164 |
+
|
165 |
+
/**
|
166 |
+
* getter for PayPal payer state address field
|
167 |
+
*
|
168 |
+
* @return string
|
169 |
+
*/
|
170 |
+
public function getPayerAddressState() {
|
171 |
+
return $this->_getField(self::$PAYER_ADDRESS_STATE);
|
172 |
+
}
|
173 |
+
|
174 |
+
/**
|
175 |
+
* getter for PayPal payer name address field
|
176 |
+
*
|
177 |
+
* @return string
|
178 |
+
*/
|
179 |
+
public function getPayerAddressName() {
|
180 |
+
return $this->_getField(self::$PAYER_ADDRESS_NAME);
|
181 |
+
}
|
182 |
+
|
183 |
+
/**
|
184 |
+
* getter for PayPal payer street 1 address field
|
185 |
+
*
|
186 |
+
* @return string
|
187 |
+
*/
|
188 |
+
public function getPayerAddressStreet1() {
|
189 |
+
return $this->_getField(self::$PAYER_ADDRESS_STREET_1);
|
190 |
+
}
|
191 |
+
|
192 |
+
/**
|
193 |
+
* getter for PayPal payer street 2 address field
|
194 |
+
*
|
195 |
+
* @return string
|
196 |
+
*/
|
197 |
+
public function getPayerAddressStreet2() {
|
198 |
+
return $this->_getField(self::$PAYER_ADDRESS_STREET_2);
|
199 |
+
}
|
200 |
+
|
201 |
+
/**
|
202 |
+
* getter for PayPal payer zipcode address field
|
203 |
+
*
|
204 |
+
* @return string
|
205 |
+
*/
|
206 |
+
public function getPayerAddressZip() {
|
207 |
+
return $this->_getField(self::$PAYER_ADDRESS_ZIP);
|
208 |
+
}
|
209 |
+
|
210 |
+
/**
|
211 |
+
* getter for PayPal payer address status
|
212 |
+
*
|
213 |
+
* @return string
|
214 |
+
*/
|
215 |
+
public function getPayerAddressStatus() {
|
216 |
+
return $this->_getField(self::$PAYER_ADDRESS_STATUS);
|
217 |
+
}
|
218 |
+
|
219 |
+
/**
|
220 |
+
* getter for PayPal protection eligibility
|
221 |
+
*
|
222 |
+
* @return string
|
223 |
+
*/
|
224 |
+
public function getProtectionEligibility() {
|
225 |
+
return $this->_getField(self::$PROTECTION_ELIGIBILITY);
|
226 |
+
}
|
227 |
+
}
|
app/code/local/Wirecard/QPay/Response/Toolkit/Order/Payment/Sofortueberweisung.php
ADDED
@@ -0,0 +1,147 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_Order_Payment_Sofortueberweisung
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit_Order_Payment
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_QPay_Response_Toolkit_Order_Payment_Sofortueberweisung extends WirecardCEE_QPay_Response_Toolkit_Order_Payment {
|
20 |
+
/**
|
21 |
+
* Sender - account owner
|
22 |
+
* @staticvar string
|
23 |
+
* @internal
|
24 |
+
*/
|
25 |
+
private static $SENDER_ACCOUNT_OWNER = 'senderAccountOwner';
|
26 |
+
|
27 |
+
/**
|
28 |
+
* Sender - account number
|
29 |
+
* @staticvar string
|
30 |
+
* @internal
|
31 |
+
*/
|
32 |
+
private static $SENDER_ACCOUNT_NUMBER = 'senderAccountNumber';
|
33 |
+
|
34 |
+
/**
|
35 |
+
* Sender - bank number
|
36 |
+
* @staticvar string
|
37 |
+
* @internal
|
38 |
+
*/
|
39 |
+
private static $SENDER_BANK_NUMBER = 'senderBankNumber';
|
40 |
+
|
41 |
+
/**
|
42 |
+
* Sender - bank name
|
43 |
+
* @staticvar string
|
44 |
+
* @internal
|
45 |
+
*/
|
46 |
+
private static $SENDER_BANK_NAME = 'senderBankName';
|
47 |
+
|
48 |
+
/**
|
49 |
+
* Sender - BIC
|
50 |
+
* @staticvar string
|
51 |
+
* @internal
|
52 |
+
*/
|
53 |
+
private static $SENDER_BIC = 'senderBIC';
|
54 |
+
|
55 |
+
/**
|
56 |
+
* Sender - IBAN
|
57 |
+
* @staticvar string
|
58 |
+
* @internal
|
59 |
+
*/
|
60 |
+
private static $SENDER_IBAN = 'senderIBAN';
|
61 |
+
|
62 |
+
/**
|
63 |
+
* Sender - Country
|
64 |
+
* @staticvar string
|
65 |
+
* @internal
|
66 |
+
*/
|
67 |
+
private static $SENDER_COUNTRY = 'senderCountry';
|
68 |
+
|
69 |
+
/**
|
70 |
+
* Security criteria
|
71 |
+
* @staticvar string
|
72 |
+
* @internal
|
73 |
+
*/
|
74 |
+
private static $SECURITY_CRITERIA = 'securityCriteria';
|
75 |
+
|
76 |
+
/**
|
77 |
+
* getter for sofortueberweisung.de sender account owner
|
78 |
+
*
|
79 |
+
* @return string
|
80 |
+
*/
|
81 |
+
public function getSenderAccountOwner() {
|
82 |
+
return $this->_getField(self::$SENDER_ACCOUNT_OWNER);
|
83 |
+
}
|
84 |
+
|
85 |
+
/**
|
86 |
+
* getter for sofortueberweisung.de sender account number
|
87 |
+
*
|
88 |
+
* @return string
|
89 |
+
*/
|
90 |
+
public function getSenderAccountNumber() {
|
91 |
+
return $this->_getField(self::$SENDER_ACCOUNT_NUMBER);
|
92 |
+
}
|
93 |
+
|
94 |
+
/**
|
95 |
+
* getter for sofortueberweisung.de sender bank number
|
96 |
+
*
|
97 |
+
* @return string
|
98 |
+
*/
|
99 |
+
public function getSenderBankNumber() {
|
100 |
+
return $this->_getField(self::$SENDER_BANK_NUMBER);
|
101 |
+
}
|
102 |
+
|
103 |
+
/**
|
104 |
+
* getter for sofortueberweisung.de sender bank name
|
105 |
+
*
|
106 |
+
* @return string
|
107 |
+
*/
|
108 |
+
public function getSenderBankName() {
|
109 |
+
return $this->_getField(self::$SENDER_BANK_NAME);
|
110 |
+
}
|
111 |
+
|
112 |
+
/**
|
113 |
+
* getter for sofortueberweisung.de sender BIC
|
114 |
+
*
|
115 |
+
* @return string
|
116 |
+
*/
|
117 |
+
public function getSenderBic() {
|
118 |
+
return $this->_getField(self::$SENDER_BIC);
|
119 |
+
}
|
120 |
+
|
121 |
+
/**
|
122 |
+
* getter for sofortueberweisung.de sender IBAN
|
123 |
+
*
|
124 |
+
* @return string
|
125 |
+
*/
|
126 |
+
public function getSenderIban() {
|
127 |
+
return $this->_getField(self::$SENDER_IBAN);
|
128 |
+
}
|
129 |
+
|
130 |
+
/**
|
131 |
+
* getter for sofortueberweisung.de sender country
|
132 |
+
*
|
133 |
+
* @return string
|
134 |
+
*/
|
135 |
+
public function getSenderCountry() {
|
136 |
+
return $this->_getField(self::$SENDER_COUNTRY);
|
137 |
+
}
|
138 |
+
|
139 |
+
/**
|
140 |
+
* getter for sofortueberweisung.de Security criteria
|
141 |
+
*
|
142 |
+
* @return string
|
143 |
+
*/
|
144 |
+
public function getSecurityCriteria() {
|
145 |
+
return $this->_getField(self::$SECURITY_CRITERIA);
|
146 |
+
}
|
147 |
+
}
|
app/code/local/Wirecard/QPay/Response/Toolkit/Order/PaymentIterator.php
ADDED
@@ -0,0 +1,19 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_Order_PaymentIterator
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit_Order
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_QPay_Response_Toolkit_Order_PaymentIterator extends WirecardCEE_QPay_Response_Toolkit_Order_OrderIterator {}
|
app/code/local/Wirecard/QPay/Response/Toolkit/RecurPayment.php
ADDED
@@ -0,0 +1,35 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_RecurPayment
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_QPay_Response_Toolkit_RecurPayment extends WirecardCEE_QPay_Response_Toolkit_ResponseAbstract {
|
20 |
+
/**
|
21 |
+
* Order number
|
22 |
+
* @staticvar string
|
23 |
+
* @internal
|
24 |
+
*/
|
25 |
+
private static $ORDER_NUMBER = 'orderNumber';
|
26 |
+
|
27 |
+
/**
|
28 |
+
* getter for the returned order number
|
29 |
+
*
|
30 |
+
* @return string
|
31 |
+
*/
|
32 |
+
public function getOrderNumber() {
|
33 |
+
return $this->_getField(self::$ORDER_NUMBER);
|
34 |
+
}
|
35 |
+
}
|
app/code/local/Wirecard/QPay/Response/Toolkit/Refund.php
ADDED
@@ -0,0 +1,35 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_Refund
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_QPay_Response_Toolkit_Refund extends WirecardCEE_QPay_Response_Toolkit_ResponseAbstract {
|
20 |
+
/**
|
21 |
+
* Credit number
|
22 |
+
* @staticvar string
|
23 |
+
* @internal
|
24 |
+
*/
|
25 |
+
private static $CREDIT_NUMBER = 'creditNumber';
|
26 |
+
|
27 |
+
/**
|
28 |
+
* getter for the returned credit number
|
29 |
+
*
|
30 |
+
* @return string
|
31 |
+
*/
|
32 |
+
public function getCreditNumber() {
|
33 |
+
return $this->_getField(self::$CREDIT_NUMBER);
|
34 |
+
}
|
35 |
+
}
|
app/code/local/Wirecard/QPay/Response/Toolkit/RefundReversal.php
ADDED
@@ -0,0 +1,19 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_RefundReversal
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_QPay_Response_Toolkit_RefundReversal extends WirecardCEE_QPay_Response_Toolkit_ResponseAbstract {}
|
app/code/local/Wirecard/QPay/Response/Toolkit/ResponseAbstract.php
ADDED
@@ -0,0 +1,50 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_Response_Toolkit_ResponseAbstract
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @subpackage Response_Toolkit
|
17 |
+
* @version 3.2.0
|
18 |
+
* @abstract
|
19 |
+
*/
|
20 |
+
abstract class WirecardCEE_QPay_Response_Toolkit_ResponseAbstract extends WirecardCEE_QPay_Response_ResponseAbstract {
|
21 |
+
/**
|
22 |
+
* Status
|
23 |
+
* @staticvar string
|
24 |
+
* @internal
|
25 |
+
*/
|
26 |
+
private static $STATUS = 'status';
|
27 |
+
|
28 |
+
/**
|
29 |
+
* Payment system message
|
30 |
+
* @staticvar string
|
31 |
+
* @internal
|
32 |
+
*/
|
33 |
+
private static $PAY_SYS_MESSAGE = 'paySysMessage';
|
34 |
+
|
35 |
+
/**
|
36 |
+
* Error code
|
37 |
+
* @staticvar string
|
38 |
+
* @internal
|
39 |
+
*/
|
40 |
+
private static $ERROR_CODE = 'errorCode';
|
41 |
+
|
42 |
+
/**
|
43 |
+
* getter for the toolkit operation status
|
44 |
+
*
|
45 |
+
* @return string
|
46 |
+
*/
|
47 |
+
public function getStatus() {
|
48 |
+
return $this->_getField(self::$STATUS);
|
49 |
+
}
|
50 |
+
}
|
app/code/local/Wirecard/QPay/Return/Cancel.php
ADDED
@@ -0,0 +1,18 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_QPay_Return_Cancel
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QPay
|
15 |
+
* @subpackage Return
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_QPay_Return_Cancel extends WirecardCEE_Stdlib_Return_Cancel {}
|
app/code/local/Wirecard/QPay/Return/Failure.php
ADDED
@@ -0,0 +1,32 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_QPay_Return_Failure
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QPay
|
15 |
+
* @subpackage Return
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_QPay_Return_Failure extends WirecardCEE_Stdlib_Return_Failure {
|
19 |
+
/**
|
20 |
+
* getter for list of errors that occured
|
21 |
+
*
|
22 |
+
* @return WirecardCEE_QPay_Error
|
23 |
+
*/
|
24 |
+
public function getErrors() {
|
25 |
+
$oError = new WirecardCEE_QPay_Error($this->_returnData[self::$ERROR_MESSAGE]);
|
26 |
+
|
27 |
+
if(isset($this->_returnData[self::$ERROR_CONSUMER_MESSAGE]))
|
28 |
+
$oError->setConsumerMessage($this->_returnData[self::$ERROR_CONSUMER_MESSAGE]);
|
29 |
+
|
30 |
+
return $oError;
|
31 |
+
}
|
32 |
+
}
|
app/code/local/Wirecard/QPay/Return/Pending.php
ADDED
@@ -0,0 +1,18 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_QPay_Return_Pending
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QPay
|
15 |
+
* @subpackage Return
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_QPay_Return_Pending extends WirecardCEE_Stdlib_Return_Pending {}
|
app/code/local/Wirecard/QPay/Return/Success.php
ADDED
@@ -0,0 +1,18 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_QPay_Return_Success
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QPay
|
15 |
+
* @subpackage Return
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_QPay_Return_Success extends WirecardCEE_Stdlib_Return_Success {}
|
app/code/local/Wirecard/QPay/Return/Success/CreditCard.php
ADDED
@@ -0,0 +1,18 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_QPay_Return_Success_CreditCard
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QPay
|
15 |
+
* @subpackage Return_Success
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_QPay_Return_Success_CreditCard extends WirecardCEE_Stdlib_Return_Success_CreditCard {}
|
app/code/local/Wirecard/QPay/Return/Success/Ideal.php
ADDED
@@ -0,0 +1,18 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_QPay_Return_Success_Ideal
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QPay
|
15 |
+
* @subpackage Return_Success
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_QPay_Return_Success_Ideal extends WirecardCEE_Stdlib_Return_Success_Ideal {}
|
app/code/local/Wirecard/QPay/Return/Success/PayPal.php
ADDED
@@ -0,0 +1,18 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_QPay_Return_Success_PayPal
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QPay
|
15 |
+
* @subpackage Return_Success
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_QPay_Return_Success_PayPal extends WirecardCEE_Stdlib_Return_Success_PayPal {}
|
app/code/local/Wirecard/QPay/Return/Success/Sofortueberweisung.php
ADDED
@@ -0,0 +1,18 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_QPay_Return_Success_Sofortueberweisung
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QPay
|
15 |
+
* @subpackage Return_Success
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_QPay_Return_Success_Sofortueberweisung extends WirecardCEE_Stdlib_Return_Success_Sofortueberweisung {}
|
app/code/local/Wirecard/QPay/ReturnFactory.php
ADDED
@@ -0,0 +1,108 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig. Software & Service Copyright (C) by Wirecard Central Eastern
|
6 |
+
* Europe GmbH, FB-Nr: FN 195599 x, http://www.wirecard.at
|
7 |
+
*/
|
8 |
+
/**
|
9 |
+
* Factory method for returned params validators
|
10 |
+
*
|
11 |
+
* @name WirecardCEE_QPay_ReturnFactory
|
12 |
+
* @category WirecardCEE
|
13 |
+
* @package WirecardCEE_QPay
|
14 |
+
* @version 3.2.0
|
15 |
+
*/
|
16 |
+
class WirecardCEE_QPay_ReturnFactory extends WirecardCEE_Stdlib_ReturnFactoryAbstract {
|
17 |
+
/**
|
18 |
+
* no initiation allowed.
|
19 |
+
*/
|
20 |
+
private function __construct() {}
|
21 |
+
|
22 |
+
/**
|
23 |
+
* creates an Return instance (Cancel, Failure, Success...)
|
24 |
+
*
|
25 |
+
* @param $return
|
26 |
+
* @param $secret
|
27 |
+
*
|
28 |
+
* @return WirecardCEE_Stdlib_Return_ReturnAbstract
|
29 |
+
* @throws WirecardCEE_QPay_Exception_InvalidResponseException
|
30 |
+
*/
|
31 |
+
public static function getInstance($return, $secret) {
|
32 |
+
if (!is_array($return)) {
|
33 |
+
$return = WirecardCEE_Stdlib_SerialApi::decode($return);
|
34 |
+
}
|
35 |
+
|
36 |
+
if (array_key_exists('paymentState', $return)) {
|
37 |
+
return self::_getInstance($return, $secret);
|
38 |
+
}
|
39 |
+
else {
|
40 |
+
throw new WirecardCEE_QPay_Exception_InvalidResponseException('Invalid response from QPAY. Paymentstate is missing.');
|
41 |
+
}
|
42 |
+
}
|
43 |
+
|
44 |
+
/***************************
|
45 |
+
* PROTECTED METHODS *
|
46 |
+
***************************/
|
47 |
+
|
48 |
+
/**
|
49 |
+
*
|
50 |
+
* @param array $return
|
51 |
+
* @param string $secret
|
52 |
+
* @throws WirecardCEE_QPay_Exception_InvalidResponseException
|
53 |
+
* @return Mixed <WirecardCEE_QPay_Return_Success, WirecardCEE_QPay_Return_Success_CreditCard, WirecardCEE_QPay_Return_Success_PayPal, WirecardCEE_QPay_Return_Success_Sofortueberweisung, WirecardCEE_QPay_Return_Success_Ideal>|WirecardCEE_QPay_Return_Cancel|WirecardCEE_QPay_Return_Failure
|
54 |
+
*/
|
55 |
+
protected static function _getInstance($return, $secret) {
|
56 |
+
switch(strtoupper($return['paymentState'])) {
|
57 |
+
case self::STATE_SUCCESS:
|
58 |
+
return self::_getSuccessInstance($return, $secret);
|
59 |
+
break;
|
60 |
+
case self::STATE_CANCEL:
|
61 |
+
return new WirecardCEE_QPay_Return_Cancel($return);
|
62 |
+
break;
|
63 |
+
case self::STATE_FAILURE:
|
64 |
+
return new WirecardCEE_QPay_Return_Failure($return);
|
65 |
+
break;
|
66 |
+
case parent::STATE_PENDING:
|
67 |
+
return new WirecardCEE_QPay_Return_Pending($return, $secret);
|
68 |
+
break;
|
69 |
+
default:
|
70 |
+
throw new WirecardCEE_QPay_Exception_InvalidResponseException('Invalid response from QPAY. Unexpected paymentState: ' . $return['paymentState']);
|
71 |
+
break;
|
72 |
+
}
|
73 |
+
}
|
74 |
+
|
75 |
+
/**
|
76 |
+
* getter for the correct qpay success return instance
|
77 |
+
* @param string[] $return
|
78 |
+
* @param string $secret
|
79 |
+
*
|
80 |
+
* @return WirecardCEE_QPay_Return_Success|WirecardCEE_QPay_Return_Success_CreditCard|WirecardCEE_QPay_Return_Success_Ideal|WirecardCEE_QPay_Return_Success_PayPal|WirecardCEE_QPay_Return_Success_Sofortueberweisung
|
81 |
+
* @throws WirecardCEE_QPay_Exception_InvalidResponseException
|
82 |
+
*/
|
83 |
+
protected static function _getSuccessInstance($return, $secret) {
|
84 |
+
if (!array_key_exists('paymentType', $return)) {
|
85 |
+
throw new WirecardCEE_QPay_Exception_InvalidResponseException('Invalid response from QPAY. Paymenttype is missing.');
|
86 |
+
}
|
87 |
+
|
88 |
+
switch(strtoupper($return['paymentType'])) {
|
89 |
+
case WirecardCEE_Stdlib_PaymentTypeAbstract::CCARD:
|
90 |
+
case WirecardCEE_Stdlib_PaymentTypeAbstract::CCARD_MOTO:
|
91 |
+
case WirecardCEE_Stdlib_PaymentTypeAbstract::MAESTRO:
|
92 |
+
return new WirecardCEE_QPay_Return_Success_CreditCard($return, $secret);
|
93 |
+
break;
|
94 |
+
case WirecardCEE_Stdlib_PaymentTypeAbstract::PAYPAL:
|
95 |
+
return new WirecardCEE_QPay_Return_Success_PayPal($return, $secret);
|
96 |
+
break;
|
97 |
+
case WirecardCEE_Stdlib_PaymentTypeAbstract::SOFORTUEBERWEISUNG:
|
98 |
+
return new WirecardCEE_QPay_Return_Success_Sofortueberweisung($return, $secret);
|
99 |
+
break;
|
100 |
+
case WirecardCEE_Stdlib_PaymentTypeAbstract::IDL:
|
101 |
+
return new WirecardCEE_QPay_Return_Success_Ideal($return, $secret);
|
102 |
+
break;
|
103 |
+
default:
|
104 |
+
return new WirecardCEE_QPay_Return_Success($return, $secret);
|
105 |
+
break;
|
106 |
+
}
|
107 |
+
}
|
108 |
+
}
|
app/code/local/Wirecard/QPay/ToolkitClient.php
ADDED
@@ -0,0 +1,379 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_QPay_ToolkitClient
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_QPay
|
16 |
+
* @version 3.2.0
|
17 |
+
*
|
18 |
+
* @important All the toolkit functions have to call _setField before setting _fingerprintOrder
|
19 |
+
*/
|
20 |
+
class WirecardCEE_QPay_ToolkitClient extends WirecardCEE_Stdlib_Client_ClientAbstract {
|
21 |
+
|
22 |
+
/**
|
23 |
+
* Toolkit password
|
24 |
+
* @var string
|
25 |
+
*/
|
26 |
+
const TOOLKIT_PASSWORD = 'toolkitPassword';
|
27 |
+
|
28 |
+
/**
|
29 |
+
* Payment number
|
30 |
+
* @var string
|
31 |
+
*/
|
32 |
+
const PAYMENT_NUMBER = 'paymentNumber';
|
33 |
+
|
34 |
+
/**
|
35 |
+
* Credit number
|
36 |
+
* @var string
|
37 |
+
*/
|
38 |
+
const CREDIT_NUMBER = 'creditNumber';
|
39 |
+
|
40 |
+
/**
|
41 |
+
* Source order number
|
42 |
+
* @var string
|
43 |
+
*/
|
44 |
+
const SOURCE_ORDER_NUMBER = 'sourceOrderNumber';
|
45 |
+
|
46 |
+
/**
|
47 |
+
* Command
|
48 |
+
* @var string
|
49 |
+
*/
|
50 |
+
const COMMAND = 'command';
|
51 |
+
|
52 |
+
/**
|
53 |
+
* Approve reversal command
|
54 |
+
* @staticvar string
|
55 |
+
* @internal
|
56 |
+
*/
|
57 |
+
protected static $COMMAND_APPROVE_REVERSAL = 'approveReversal';
|
58 |
+
|
59 |
+
/**
|
60 |
+
* Deposit command
|
61 |
+
* @staticvar string
|
62 |
+
* @internal
|
63 |
+
*/
|
64 |
+
protected static $COMMAND_DEPOSIT = 'deposit';
|
65 |
+
|
66 |
+
/**
|
67 |
+
* Deposit reversal command
|
68 |
+
* @staticvar string
|
69 |
+
* @internal
|
70 |
+
*/
|
71 |
+
protected static $COMMAND_DEPOSIT_REVERSAL = 'depositReversal';
|
72 |
+
|
73 |
+
/**
|
74 |
+
* Get order details command
|
75 |
+
* @staticvar string
|
76 |
+
* @internal
|
77 |
+
*/
|
78 |
+
protected static $COMMAND_GET_ORDER_DETAILS = 'getOrderDetails';
|
79 |
+
|
80 |
+
/**
|
81 |
+
* Recur payment command
|
82 |
+
* @staticvar string
|
83 |
+
* @internal
|
84 |
+
*/
|
85 |
+
protected static $COMMAND_RECUR_PAYMENT = 'recurPayment';
|
86 |
+
|
87 |
+
/**
|
88 |
+
* Refund command
|
89 |
+
* @staticvar string
|
90 |
+
* @internal
|
91 |
+
*/
|
92 |
+
protected static $COMMAND_REFUND = 'refund';
|
93 |
+
|
94 |
+
/**
|
95 |
+
* Refund reversal command
|
96 |
+
* @staticvar string
|
97 |
+
* @internal
|
98 |
+
*/
|
99 |
+
protected static $COMMAND_REFUND_REVERSAL = 'refundReversal';
|
100 |
+
|
101 |
+
/**
|
102 |
+
* using FIXED fingerprint order (0 = dynamic, 1 = fixed)
|
103 |
+
* @var int
|
104 |
+
*/
|
105 |
+
protected $_fingerprintOrderType = 1;
|
106 |
+
|
107 |
+
/**
|
108 |
+
* Creates an instance of WirecardCEE_QPay_ToolkitClient object.
|
109 |
+
* used for toolkit operations.
|
110 |
+
*
|
111 |
+
* @param array $aConfig
|
112 |
+
*/
|
113 |
+
public function __construct(array $aConfig = null) {
|
114 |
+
$this->_fingerprintOrder = new WirecardCEE_Stdlib_FingerprintOrder();
|
115 |
+
|
116 |
+
if(is_null($aConfig)) {
|
117 |
+
$aConfig = WirecardCEE_QPay_Module::getConfig();
|
118 |
+
}
|
119 |
+
|
120 |
+
if (isset($aConfig['WirecardCEEQPayConfig'])) {
|
121 |
+
// we only need the WirecardCEEQPayConfig here
|
122 |
+
$aConfig = $aConfig['WirecardCEEQPayConfig'];
|
123 |
+
}
|
124 |
+
|
125 |
+
// let's store configuration details in internal objects
|
126 |
+
$this->oUserConfig = new WirecardCEE_Stdlib_Config($aConfig);
|
127 |
+
$this->oClientConfig = new WirecardCEE_Stdlib_Config(WirecardCEE_QPay_Module::getClientConfig());
|
128 |
+
|
129 |
+
// now let's check if the CUSTOMER_ID, SHOP_ID, LANGUAGE and SECRET
|
130 |
+
// exist in $this->oUserConfig object that we created from config array
|
131 |
+
$sCustomerId = isset($this->oUserConfig->CUSTOMER_ID) ? trim($this->oUserConfig->CUSTOMER_ID) : null;
|
132 |
+
$sShopId = isset($this->oUserConfig->SHOP_ID) ? trim($this->oUserConfig->SHOP_ID) : null;
|
133 |
+
$sLanguage = isset($this->oUserConfig->LANGUAGE) ? trim($this->oUserConfig->LANGUAGE) : null;
|
134 |
+
$sSecret = isset($this->oUserConfig->SECRET) ? trim($this->oUserConfig->SECRET) : null;
|
135 |
+
$sToolkitPassword = isset($this->oUserConfig->TOOLKIT_PASSWORD) ? trim($this->oUserConfig->TOOLKIT_PASSWORD): null;
|
136 |
+
|
137 |
+
// If not throw the InvalidArgumentException exception!
|
138 |
+
if (empty($sCustomerId) || is_null($sCustomerId)) {
|
139 |
+
throw new WirecardCEE_QPay_Exception_InvalidArgumentException(sprintf('CUSTOMER_ID passed to %s is invalid.', __METHOD__));
|
140 |
+
}
|
141 |
+
|
142 |
+
if (empty($sLanguage) || is_null($sLanguage)) {
|
143 |
+
throw new WirecardCEE_QPay_Exception_InvalidArgumentException(sprintf('LANGUAGE passed to %s is invalid.', __METHOD__));
|
144 |
+
}
|
145 |
+
|
146 |
+
if (empty($sSecret) || is_null($sSecret)) {
|
147 |
+
throw new WirecardCEE_QPay_Exception_InvalidArgumentException(sprintf('SECRET passed to %s is invalid.', __METHOD__));
|
148 |
+
}
|
149 |
+
|
150 |
+
if (empty($sToolkitPassword) || is_null($sToolkitPassword)) {
|
151 |
+
throw new WirecardCEE_QPay_Exception_InvalidArgumentException(sprintf('TOOLKIT PASSWORD passed to %s is invalid.', __METHOD__));
|
152 |
+
}
|
153 |
+
|
154 |
+
// we're using hmac sha512 for hash-ing
|
155 |
+
WirecardCEE_Stdlib_Fingerprint::setHashAlgorithm(WirecardCEE_Stdlib_Fingerprint::HASH_ALGORITHM_HMAC_SHA512);
|
156 |
+
|
157 |
+
// everything ok! let's set the fields
|
158 |
+
$this->_setField(self::CUSTOMER_ID, $sCustomerId);
|
159 |
+
$this->_setField(self::SHOP_ID, $sShopId);
|
160 |
+
$this->_setField(self::LANGUAGE, $sLanguage);
|
161 |
+
$this->_setField(self::TOOLKIT_PASSWORD, $sToolkitPassword);
|
162 |
+
$this->_setSecret($sSecret);
|
163 |
+
}
|
164 |
+
|
165 |
+
/**
|
166 |
+
* Refund
|
167 |
+
*
|
168 |
+
* @throws WirecardCEE_Stdlib_Client_Exception_InvalidResponseException
|
169 |
+
* @return WirecardCEE_QPay_Response_Toolkit_Refund
|
170 |
+
*/
|
171 |
+
public function refund($iOrderNumber, $iAmount, $sCurrency) {
|
172 |
+
$this->_requestData[self::COMMAND] = self::$COMMAND_REFUND;
|
173 |
+
|
174 |
+
$this->_setField(self::ORDER_NUMBER, $iOrderNumber);
|
175 |
+
$this->_setField(self::AMOUNT, $iAmount);
|
176 |
+
$this->_setField(self::CURRENCY, strtoupper($sCurrency));
|
177 |
+
|
178 |
+
$this->_fingerprintOrder->setOrder(Array(
|
179 |
+
self::CUSTOMER_ID,
|
180 |
+
self::SHOP_ID,
|
181 |
+
self::TOOLKIT_PASSWORD,
|
182 |
+
self::SECRET,
|
183 |
+
self::COMMAND,
|
184 |
+
self::LANGUAGE,
|
185 |
+
self::ORDER_NUMBER,
|
186 |
+
self::AMOUNT,
|
187 |
+
self::CURRENCY
|
188 |
+
));
|
189 |
+
|
190 |
+
return new WirecardCEE_QPay_Response_Toolkit_Refund($this->_send());
|
191 |
+
}
|
192 |
+
|
193 |
+
/**
|
194 |
+
* Refund reversal
|
195 |
+
*
|
196 |
+
* @throws WirecardCEE_Stdlib_Client_Exception_InvalidResponseException
|
197 |
+
* @return WirecardCEE_QPay_Response_Toolkit_RefundReversal
|
198 |
+
*/
|
199 |
+
public function refundReversal($iOrderNumber, $iCreditNumber) {
|
200 |
+
$this->_requestData[self::COMMAND] = self::$COMMAND_REFUND_REVERSAL;
|
201 |
+
|
202 |
+
$this->_setField(self::ORDER_NUMBER, $iOrderNumber);
|
203 |
+
$this->_setField(self::CREDIT_NUMBER, $iCreditNumber);
|
204 |
+
|
205 |
+
$this->_fingerprintOrder->setOrder(Array(
|
206 |
+
self::CUSTOMER_ID,
|
207 |
+
self::SHOP_ID,
|
208 |
+
self::TOOLKIT_PASSWORD,
|
209 |
+
self::SECRET,
|
210 |
+
self::COMMAND,
|
211 |
+
self::LANGUAGE,
|
212 |
+
self::ORDER_NUMBER,
|
213 |
+
self::CREDIT_NUMBER
|
214 |
+
));
|
215 |
+
return new WirecardCEE_QPay_Response_Toolkit_RefundReversal($this->_send());
|
216 |
+
}
|
217 |
+
|
218 |
+
/**
|
219 |
+
* Recur payment
|
220 |
+
*
|
221 |
+
* @throws WirecardCEE_Stdlib_Client_Exception_InvalidResponseException
|
222 |
+
* @return WirecardCEE_QPay_Response_Toolkit_RecurPayment
|
223 |
+
*/
|
224 |
+
public function recurPayment($iSourceOrderNumber, $iAmount, $sCurrency, $sOrderDescription, $iOrderNumber = null, $bDepositFlag = null) {
|
225 |
+
$this->_requestData[self::COMMAND] = self::$COMMAND_RECUR_PAYMENT;
|
226 |
+
|
227 |
+
$this->_setField(self::SOURCE_ORDER_NUMBER, $iSourceOrderNumber);
|
228 |
+
$this->_setField(self::AMOUNT, $iAmount);
|
229 |
+
$this->_setField(self::CURRENCY, strtoupper($sCurrency));
|
230 |
+
|
231 |
+
$this->_setField(self::ORDER_DESCRIPTION, $sOrderDescription);
|
232 |
+
|
233 |
+
if(!is_null($iOrderNumber)) {
|
234 |
+
$this->_setField(self::ORDER_NUMBER, $iOrderNumber);
|
235 |
+
}
|
236 |
+
|
237 |
+
if(!is_null($bDepositFlag)) {
|
238 |
+
$this->_setField(self::AUTO_DEPOSIT, $bDepositFlag ? self::$BOOL_TRUE : self::$BOOL_FALSE);
|
239 |
+
}
|
240 |
+
|
241 |
+
|
242 |
+
$this->_fingerprintOrder->setOrder(Array(
|
243 |
+
self::CUSTOMER_ID,
|
244 |
+
self::SHOP_ID,
|
245 |
+
self::TOOLKIT_PASSWORD,
|
246 |
+
self::SECRET,
|
247 |
+
self::COMMAND,
|
248 |
+
self::LANGUAGE,
|
249 |
+
self::ORDER_NUMBER,
|
250 |
+
self::SOURCE_ORDER_NUMBER,
|
251 |
+
self::AUTO_DEPOSIT,
|
252 |
+
self::ORDER_DESCRIPTION,
|
253 |
+
self::AMOUNT,
|
254 |
+
self::CURRENCY
|
255 |
+
));
|
256 |
+
return new WirecardCEE_QPay_Response_Toolkit_RecurPayment($this->_send());
|
257 |
+
}
|
258 |
+
|
259 |
+
/**
|
260 |
+
* Returns order details
|
261 |
+
*
|
262 |
+
* @param int|string $iOrderNumber
|
263 |
+
* @throws WirecardCEE_Stdlib_Client_Exception_InvalidResponseException
|
264 |
+
* @return WirecardCEE_QPay_Response_Toolkit_GetOrderDetails
|
265 |
+
*/
|
266 |
+
public function getOrderDetails($iOrderNumber) {
|
267 |
+
$this->_requestData[self::COMMAND] = self::$COMMAND_GET_ORDER_DETAILS;
|
268 |
+
$this->_setField(self::ORDER_NUMBER, $iOrderNumber);
|
269 |
+
|
270 |
+
$this->_fingerprintOrder->setOrder(Array(
|
271 |
+
self::CUSTOMER_ID,
|
272 |
+
self::SHOP_ID,
|
273 |
+
self::TOOLKIT_PASSWORD,
|
274 |
+
self::SECRET,
|
275 |
+
self::COMMAND,
|
276 |
+
self::LANGUAGE,
|
277 |
+
self::ORDER_NUMBER
|
278 |
+
));
|
279 |
+
|
280 |
+
return new WirecardCEE_QPay_Response_Toolkit_GetOrderDetails($this->_send());
|
281 |
+
}
|
282 |
+
|
283 |
+
/**
|
284 |
+
* Approve reversal
|
285 |
+
*
|
286 |
+
* @throws WirecardCEE_Stdlib_Client_Exception_InvalidResponseException
|
287 |
+
* @return WirecardCEE_QPay_Response_Toolkit_ApproveReversal
|
288 |
+
*/
|
289 |
+
public function approveReversal($iOrderNumber) {
|
290 |
+
$this->_requestData[self::COMMAND] = self::$COMMAND_APPROVE_REVERSAL;
|
291 |
+
$this->_setField(self::ORDER_NUMBER, $iOrderNumber);
|
292 |
+
|
293 |
+
$this->_fingerprintOrder->setOrder(Array(
|
294 |
+
self::CUSTOMER_ID,
|
295 |
+
self::SHOP_ID,
|
296 |
+
self::TOOLKIT_PASSWORD,
|
297 |
+
self::SECRET,
|
298 |
+
self::COMMAND,
|
299 |
+
self::LANGUAGE,
|
300 |
+
self::ORDER_NUMBER
|
301 |
+
));
|
302 |
+
return new WirecardCEE_QPay_Response_Toolkit_ApproveReversal($this->_send());
|
303 |
+
}
|
304 |
+
|
305 |
+
/**
|
306 |
+
* Deposit
|
307 |
+
*
|
308 |
+
* @throws WirecardCEE_Stdlib_Client_Exception_InvalidResponseException
|
309 |
+
* @return WirecardCEE_QPay_Response_Toolkit_Deposit
|
310 |
+
*/
|
311 |
+
public function deposit($iOrderNumber, $iAmount, $sCurrency) {
|
312 |
+
$this->_requestData[self::COMMAND] = self::$COMMAND_DEPOSIT;
|
313 |
+
|
314 |
+
$this->_setField(self::ORDER_NUMBER, $iOrderNumber);
|
315 |
+
$this->_setField(self::AMOUNT, $iAmount);
|
316 |
+
$this->_setField(self::CURRENCY, strtoupper($sCurrency));
|
317 |
+
|
318 |
+
$this->_fingerprintOrder->setOrder(Array(
|
319 |
+
self::CUSTOMER_ID,
|
320 |
+
self::SHOP_ID,
|
321 |
+
self::TOOLKIT_PASSWORD,
|
322 |
+
self::SECRET,
|
323 |
+
self::COMMAND,
|
324 |
+
self::LANGUAGE,
|
325 |
+
self::ORDER_NUMBER,
|
326 |
+
self::AMOUNT,
|
327 |
+
self::CURRENCY
|
328 |
+
));
|
329 |
+
return new WirecardCEE_QPay_Response_Toolkit_Deposit($this->_send());
|
330 |
+
}
|
331 |
+
|
332 |
+
/**
|
333 |
+
* Deposit reversal
|
334 |
+
*
|
335 |
+
* @throws WirecardCEE_Stdlib_Client_Exception_InvalidResponseException
|
336 |
+
* @return WirecardCEE_QPay_Response_Toolkit_DepositReversal
|
337 |
+
*/
|
338 |
+
public function depositReversal($iOrderNumber, $iPaymentNumber) {
|
339 |
+
$this->_requestData[self::COMMAND] = self::$COMMAND_DEPOSIT_REVERSAL;
|
340 |
+
|
341 |
+
$this->_setField(self::ORDER_NUMBER, $iOrderNumber);
|
342 |
+
$this->_setField(self::PAYMENT_NUMBER, $iPaymentNumber);
|
343 |
+
|
344 |
+
$this->_fingerprintOrder->setOrder(Array(
|
345 |
+
self::CUSTOMER_ID,
|
346 |
+
self::SHOP_ID,
|
347 |
+
self::TOOLKIT_PASSWORD,
|
348 |
+
self::SECRET,
|
349 |
+
self::COMMAND,
|
350 |
+
self::LANGUAGE,
|
351 |
+
self::ORDER_NUMBER,
|
352 |
+
self::PAYMENT_NUMBER
|
353 |
+
));
|
354 |
+
return new WirecardCEE_QPay_Response_Toolkit_DepositReversal($this->_send());
|
355 |
+
}
|
356 |
+
|
357 |
+
/**
|
358 |
+
* *******************
|
359 |
+
* PROTECTED METHODS *
|
360 |
+
* *******************
|
361 |
+
*/
|
362 |
+
|
363 |
+
/**
|
364 |
+
*
|
365 |
+
* @see WirecardCEE_Stdlib_Client_ClientAbstract::_getRequestUrl()
|
366 |
+
* @return string
|
367 |
+
*/
|
368 |
+
protected function _getRequestUrl() {
|
369 |
+
return (string) $this->oClientConfig->TOOLKIT_URL;
|
370 |
+
}
|
371 |
+
|
372 |
+
/**
|
373 |
+
* Returns the user agent string
|
374 |
+
* @return string
|
375 |
+
*/
|
376 |
+
protected function _getUserAgent() {
|
377 |
+
return "{$this->oClientConfig->MODULE_NAME};{$this->oClientConfig->MODULE_VERSION}";
|
378 |
+
}
|
379 |
+
}
|
app/code/local/Wirecard/Stdlib/Basket.php
ADDED
@@ -0,0 +1,181 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Basket
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Basket
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_Stdlib_Basket {
|
20 |
+
|
21 |
+
/**
|
22 |
+
* Constants - text holders
|
23 |
+
*
|
24 |
+
* @var string
|
25 |
+
*/
|
26 |
+
const BASKET_AMOUNT = 'basketAmount';
|
27 |
+
const BASKET_CURRENCY = 'basketCurrency';
|
28 |
+
const BASKET_ITEMS = 'basketItems';
|
29 |
+
const BASKET_ITEM_PREFIX = 'basketItem';
|
30 |
+
const QUANTITY = 'quantity';
|
31 |
+
|
32 |
+
/**
|
33 |
+
* Amount
|
34 |
+
*
|
35 |
+
* @var float
|
36 |
+
*/
|
37 |
+
protected $_amount = 0.0;
|
38 |
+
|
39 |
+
/**
|
40 |
+
* Currency (default = EUR)
|
41 |
+
*
|
42 |
+
* @var string
|
43 |
+
*/
|
44 |
+
protected $_currency;
|
45 |
+
|
46 |
+
/**
|
47 |
+
* Items holder
|
48 |
+
*
|
49 |
+
* @var array
|
50 |
+
*/
|
51 |
+
protected $_items = Array();
|
52 |
+
|
53 |
+
/**
|
54 |
+
* Basket data
|
55 |
+
*
|
56 |
+
* @var array
|
57 |
+
*/
|
58 |
+
protected $_basket = Array();
|
59 |
+
|
60 |
+
/**
|
61 |
+
* Constructor
|
62 |
+
*/
|
63 |
+
public function __construct() {
|
64 |
+
// constructor body
|
65 |
+
}
|
66 |
+
|
67 |
+
/**
|
68 |
+
* Adds item to the basket
|
69 |
+
*
|
70 |
+
* @param WirecardCEE_Stdlib_Basket_Item $oItem
|
71 |
+
* @param int $iQuantity
|
72 |
+
* @return WirecardCEE_Stdlib_Basket
|
73 |
+
*/
|
74 |
+
public function addItem(WirecardCEE_Stdlib_Basket_Item $oItem, $iQuantity = 1) {
|
75 |
+
$_mArticleNumber = $oItem->getArticleNumber();
|
76 |
+
$_quantity = $this->_getItemQuantity($_mArticleNumber);
|
77 |
+
|
78 |
+
if (!$_quantity) {
|
79 |
+
$this->_items[md5($_mArticleNumber)] = Array(
|
80 |
+
'instance' => $oItem,
|
81 |
+
self::QUANTITY => $iQuantity
|
82 |
+
);
|
83 |
+
}
|
84 |
+
else {
|
85 |
+
$this->_increaseQuantity($_mArticleNumber, $iQuantity);
|
86 |
+
}
|
87 |
+
|
88 |
+
return $this;
|
89 |
+
}
|
90 |
+
|
91 |
+
/**
|
92 |
+
* Returns the basket total amount
|
93 |
+
*
|
94 |
+
* @return float
|
95 |
+
*/
|
96 |
+
public function getAmount() {
|
97 |
+
$total = 0.0;
|
98 |
+
|
99 |
+
foreach($this->_items as $oItem) {
|
100 |
+
$total += ($oItem['instance']->getUnitPrice() * $this->_getItemQuantity($oItem['instance']->getArticleNumber())) + $oItem['instance']->getTax();
|
101 |
+
}
|
102 |
+
|
103 |
+
return $total;
|
104 |
+
}
|
105 |
+
|
106 |
+
/**
|
107 |
+
* Returns the basket as pre-defined array (defined by WirecardCEE)
|
108 |
+
*
|
109 |
+
* @return Array
|
110 |
+
*/
|
111 |
+
public function __toArray() {
|
112 |
+
$_basketItems = $this->_items;
|
113 |
+
$_counter = 1;
|
114 |
+
|
115 |
+
$this->_basket[self::BASKET_AMOUNT] = $this->getAmount();
|
116 |
+
$this->_basket[self::BASKET_CURRENCY] = $this->_currency;
|
117 |
+
$this->_basket[self::BASKET_ITEMS] = count($_basketItems);
|
118 |
+
|
119 |
+
foreach($_basketItems as $oItem) {
|
120 |
+
$mArticleNumber = $oItem['instance']->getArticleNumber();
|
121 |
+
$oItem = $oItem['instance'];
|
122 |
+
|
123 |
+
$this->_basket[self::BASKET_ITEM_PREFIX . $_counter . WirecardCEE_Stdlib_Basket_Item::ITEM_ARTICLE_NUMBER] = $mArticleNumber;
|
124 |
+
$this->_basket[self::BASKET_ITEM_PREFIX . $_counter . self::QUANTITY] = $this->_getItemQuantity($mArticleNumber);
|
125 |
+
$this->_basket[self::BASKET_ITEM_PREFIX . $_counter . WirecardCEE_Stdlib_Basket_Item::ITEM_UNIT_PRICE] = $oItem->getUnitPrice();
|
126 |
+
$this->_basket[self::BASKET_ITEM_PREFIX . $_counter . WirecardCEE_Stdlib_Basket_Item::ITEM_TAX] = $oItem->getTax();
|
127 |
+
$this->_basket[self::BASKET_ITEM_PREFIX . $_counter . WirecardCEE_Stdlib_Basket_Item::ITEM_DESCRIPTION] = $oItem->getDescription();
|
128 |
+
|
129 |
+
$_counter++;
|
130 |
+
}
|
131 |
+
|
132 |
+
return $this->_basket;
|
133 |
+
}
|
134 |
+
|
135 |
+
/**
|
136 |
+
* Sets the basket currency
|
137 |
+
*
|
138 |
+
* @param string $sCurrency
|
139 |
+
* @return WirecardCEE_Stdlib_Basket
|
140 |
+
*/
|
141 |
+
public function setCurrency($sCurrency) {
|
142 |
+
$this->_currency = $sCurrency;
|
143 |
+
return $this;
|
144 |
+
}
|
145 |
+
|
146 |
+
/**
|
147 |
+
* Destructor
|
148 |
+
*/
|
149 |
+
public function __destruct() {
|
150 |
+
unset($this);
|
151 |
+
}
|
152 |
+
|
153 |
+
/***************************************
|
154 |
+
* PROTECTED METHODS *
|
155 |
+
***************************************/
|
156 |
+
|
157 |
+
/**
|
158 |
+
* Updates the quantity for an item already in basket
|
159 |
+
*
|
160 |
+
* @param mixed(integer|string) $mArticleNumber
|
161 |
+
* @param int $iQuantity
|
162 |
+
*/
|
163 |
+
protected function _increaseQuantity($mArticleNumber, $iQuantity) {
|
164 |
+
if(!isset($this->_items[md5($mArticleNumber)])) {
|
165 |
+
throw new Exception(sprintf("There is no item in the basket with article number '%s'. Thrown in %s.", $mArticleNumber, __METHOD__));
|
166 |
+
}
|
167 |
+
|
168 |
+
$this->_items[md5($mArticleNumber)][self::QUANTITY] += $iQuantity;
|
169 |
+
return true;
|
170 |
+
}
|
171 |
+
|
172 |
+
/**
|
173 |
+
* Returns the quantity of item in basket
|
174 |
+
*
|
175 |
+
* @param mixed(integer|string) $mArticleNumber
|
176 |
+
* @return integer
|
177 |
+
*/
|
178 |
+
protected function _getItemQuantity($mArticleNumber) {
|
179 |
+
return (int) isset($this->_items[md5($mArticleNumber)]) ? $this->_items[md5($mArticleNumber)][self::QUANTITY] : 0;
|
180 |
+
}
|
181 |
+
}
|
app/code/local/Wirecard/Stdlib/Basket/Item.php
ADDED
@@ -0,0 +1,146 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Basket_Item
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Basket
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_Stdlib_Basket_Item {
|
20 |
+
|
21 |
+
/**
|
22 |
+
* Constants - text holders
|
23 |
+
* @var string
|
24 |
+
*/
|
25 |
+
const ITEM_ARTICLE_NUMBER = 'articleNumber';
|
26 |
+
const ITEM_UNIT_PRICE = 'unitPrice';
|
27 |
+
const ITEM_DESCRIPTION = 'description';
|
28 |
+
const ITEM_TAX = 'tax';
|
29 |
+
|
30 |
+
/**
|
31 |
+
* Data holder
|
32 |
+
*
|
33 |
+
* @var Array
|
34 |
+
*/
|
35 |
+
protected $_itemData;
|
36 |
+
|
37 |
+
/**
|
38 |
+
* Constructor
|
39 |
+
* @param mixed(string|integer) optional $mArticleNumber
|
40 |
+
*/
|
41 |
+
public function __construct($mArticleNumber = null) {
|
42 |
+
if(!is_null($mArticleNumber)) {
|
43 |
+
$this->setArticleNumber($mArticleNumber);
|
44 |
+
}
|
45 |
+
}
|
46 |
+
|
47 |
+
/**
|
48 |
+
* Sets the item tax (amount not percentage!)
|
49 |
+
*
|
50 |
+
* @param integer/float
|
51 |
+
*/
|
52 |
+
public function setTax($fTax) {
|
53 |
+
$this->_setField(self::ITEM_TAX, $fTax);
|
54 |
+
return $this;
|
55 |
+
}
|
56 |
+
|
57 |
+
/**
|
58 |
+
* Returns the tax
|
59 |
+
*
|
60 |
+
* @return multitype:
|
61 |
+
*/
|
62 |
+
public function getTax() {
|
63 |
+
return $this->_itemData[self::ITEM_TAX];
|
64 |
+
}
|
65 |
+
|
66 |
+
/**
|
67 |
+
* Sets the article number for an item
|
68 |
+
*
|
69 |
+
* @param mixed(string|integer) $mArticleNumber
|
70 |
+
* @return WirecardCEE_Stdlib_Basket_Item
|
71 |
+
*/
|
72 |
+
public function setArticleNumber($mArticleNumber) {
|
73 |
+
$this->_setField(self::ITEM_ARTICLE_NUMBER, $mArticleNumber);
|
74 |
+
return $this;
|
75 |
+
}
|
76 |
+
|
77 |
+
/**
|
78 |
+
* Returns the article number of an item
|
79 |
+
*
|
80 |
+
* @return mixed(string|integer)
|
81 |
+
*/
|
82 |
+
public function getArticleNumber() {
|
83 |
+
return $this->_itemData[self::ITEM_ARTICLE_NUMBER];
|
84 |
+
}
|
85 |
+
|
86 |
+
/**
|
87 |
+
* Sets the price for a unit
|
88 |
+
*
|
89 |
+
* @param mixed(integer|float) $fPrice
|
90 |
+
* @return WirecardCEE_Stdlib_Basket_Item
|
91 |
+
*/
|
92 |
+
public function setUnitPrice($fPrice) {
|
93 |
+
$this->_setField(self::ITEM_UNIT_PRICE, $fPrice);
|
94 |
+
return $this;
|
95 |
+
}
|
96 |
+
|
97 |
+
/**
|
98 |
+
* Returns the price for a unit
|
99 |
+
*
|
100 |
+
* @return mixed(integer|float)
|
101 |
+
*/
|
102 |
+
public function getUnitPrice() {
|
103 |
+
return $this->_itemData[self::ITEM_UNIT_PRICE];
|
104 |
+
}
|
105 |
+
|
106 |
+
/**
|
107 |
+
* Sets the item description
|
108 |
+
*
|
109 |
+
* @param string $sDescription
|
110 |
+
* @return WirecardCEE_Stdlib_Basket_Item
|
111 |
+
*/
|
112 |
+
public function setDescription($sDescription) {
|
113 |
+
$this->_setField(self::ITEM_DESCRIPTION, (string) $sDescription);
|
114 |
+
return $this;
|
115 |
+
}
|
116 |
+
|
117 |
+
/**
|
118 |
+
* Retuns the item description
|
119 |
+
*
|
120 |
+
* @return string
|
121 |
+
*/
|
122 |
+
public function getDescription() {
|
123 |
+
return (string) $this->_itemData[self::ITEM_DESCRIPTION];
|
124 |
+
}
|
125 |
+
|
126 |
+
/**
|
127 |
+
* Destructor
|
128 |
+
*/
|
129 |
+
public function __destruct() {
|
130 |
+
unset($this);
|
131 |
+
}
|
132 |
+
|
133 |
+
/***************************************
|
134 |
+
* PROTECTED METHODS *
|
135 |
+
***************************************/
|
136 |
+
|
137 |
+
/**
|
138 |
+
* Field setter
|
139 |
+
*
|
140 |
+
* @param string $sName
|
141 |
+
* @param mixed $mValue
|
142 |
+
*/
|
143 |
+
protected function _setField($sName, $mValue) {
|
144 |
+
$this->_itemData[$sName] = $mValue;
|
145 |
+
}
|
146 |
+
}
|
app/code/local/Wirecard/Stdlib/Client/ClientAbstract.php
ADDED
@@ -0,0 +1,439 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Client_ClientAbstract
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Client
|
17 |
+
* @version 3.2.0
|
18 |
+
* @abstract
|
19 |
+
*/
|
20 |
+
abstract class WirecardCEE_Stdlib_Client_ClientAbstract {
|
21 |
+
|
22 |
+
/**
|
23 |
+
* Secret holder
|
24 |
+
*
|
25 |
+
* @var string
|
26 |
+
*/
|
27 |
+
protected $_secret;
|
28 |
+
|
29 |
+
/**
|
30 |
+
* HTTP Client
|
31 |
+
*
|
32 |
+
* @var Zend_Http_Client
|
33 |
+
*/
|
34 |
+
protected $_httpClient;
|
35 |
+
|
36 |
+
/**
|
37 |
+
*
|
38 |
+
* @var string
|
39 |
+
*/
|
40 |
+
protected $userAgent;
|
41 |
+
|
42 |
+
/**
|
43 |
+
* Fingerprint order type (dynamic or fixed)
|
44 |
+
*
|
45 |
+
* @var int
|
46 |
+
*/
|
47 |
+
protected $_fingerprintOrderType = 0;
|
48 |
+
|
49 |
+
/**
|
50 |
+
* Fingerprint
|
51 |
+
*
|
52 |
+
* @var string
|
53 |
+
*/
|
54 |
+
protected $_fingerprintString = null;
|
55 |
+
|
56 |
+
/**
|
57 |
+
* Fingeprint order
|
58 |
+
*
|
59 |
+
* @var WirecardCEE_Stdlib_FingerprintOrder
|
60 |
+
*/
|
61 |
+
protected $_fingerprintOrder;
|
62 |
+
|
63 |
+
/**
|
64 |
+
* request data
|
65 |
+
*
|
66 |
+
* @var string[]
|
67 |
+
*/
|
68 |
+
protected $_requestData;
|
69 |
+
|
70 |
+
/**
|
71 |
+
* Request path
|
72 |
+
*
|
73 |
+
* @var string
|
74 |
+
*/
|
75 |
+
protected $_requestPath = '';
|
76 |
+
|
77 |
+
/**
|
78 |
+
* User configuration holder!
|
79 |
+
*
|
80 |
+
* @var WirecardCEE_Stdlib_Config
|
81 |
+
*/
|
82 |
+
protected $oUserConfig;
|
83 |
+
|
84 |
+
/**
|
85 |
+
* Client configuration holder!
|
86 |
+
*
|
87 |
+
* @var WirecardCEE_Stdlib_Config
|
88 |
+
*/
|
89 |
+
protected $oClientConfig;
|
90 |
+
|
91 |
+
/**
|
92 |
+
* Bool true
|
93 |
+
* @var string
|
94 |
+
*/
|
95 |
+
protected static $BOOL_TRUE = 'yes';
|
96 |
+
|
97 |
+
/**
|
98 |
+
* BOol false
|
99 |
+
* @var string
|
100 |
+
*/
|
101 |
+
protected static $BOOL_FALSE = 'no';
|
102 |
+
|
103 |
+
/**
|
104 |
+
* Dynamic fingerprint
|
105 |
+
* @var int
|
106 |
+
*/
|
107 |
+
protected static $FINGERPRINT_TYPE_DYNAMIC = 0;
|
108 |
+
|
109 |
+
/**
|
110 |
+
* Fixed fingerprint
|
111 |
+
* @var int
|
112 |
+
*/
|
113 |
+
protected static $FINGERPRINT_TYPE_FIXED = 1;
|
114 |
+
|
115 |
+
/**
|
116 |
+
* Field names variable: customer_id
|
117 |
+
* @var string
|
118 |
+
*/
|
119 |
+
const CUSTOMER_ID = 'customerId';
|
120 |
+
|
121 |
+
/**
|
122 |
+
* Field names variable: secret
|
123 |
+
* @var string
|
124 |
+
*/
|
125 |
+
const SECRET = 'secret';
|
126 |
+
|
127 |
+
/**
|
128 |
+
* Field names variable: language
|
129 |
+
* @var string
|
130 |
+
*/
|
131 |
+
const LANGUAGE = 'language';
|
132 |
+
|
133 |
+
/**
|
134 |
+
* Field names variable: shopId
|
135 |
+
* @var string
|
136 |
+
*/
|
137 |
+
const SHOP_ID = 'shopId';
|
138 |
+
|
139 |
+
/**
|
140 |
+
* Field names variable: requestFingerprintOrder
|
141 |
+
* @var string
|
142 |
+
*/
|
143 |
+
const REQUEST_FINGERPRINT_ORDER = 'requestFingerprintOrder';
|
144 |
+
|
145 |
+
/**
|
146 |
+
* Field names variable: requestFingerprint
|
147 |
+
* @var string
|
148 |
+
*/
|
149 |
+
const REQUEST_FINGERPRINT = 'requestFingerprint';
|
150 |
+
|
151 |
+
/**
|
152 |
+
* Field names variable: amount
|
153 |
+
* @var string
|
154 |
+
*/
|
155 |
+
const AMOUNT = 'amount';
|
156 |
+
|
157 |
+
/**
|
158 |
+
* Field names variable: currency
|
159 |
+
* @var string
|
160 |
+
*/
|
161 |
+
const CURRENCY = 'currency';
|
162 |
+
|
163 |
+
/**
|
164 |
+
* Field names variable: orderDescription
|
165 |
+
* @var string
|
166 |
+
*/
|
167 |
+
const ORDER_DESCRIPTION = 'orderDescription';
|
168 |
+
|
169 |
+
/**
|
170 |
+
* Field names variable: autoDeposit
|
171 |
+
* @var string
|
172 |
+
*/
|
173 |
+
const AUTO_DEPOSIT = 'autoDeposit';
|
174 |
+
|
175 |
+
/**
|
176 |
+
* Field names variable: orderNumber
|
177 |
+
* @var string
|
178 |
+
*/
|
179 |
+
const ORDER_NUMBER = 'orderNumber';
|
180 |
+
|
181 |
+
/**
|
182 |
+
* Must be implemented in the client object
|
183 |
+
*
|
184 |
+
* @param Array|WirecardCEE_Stdlib_Config $aConfig
|
185 |
+
* @abstract
|
186 |
+
*/
|
187 |
+
abstract public function __construct(array $aConfig = null);
|
188 |
+
|
189 |
+
/**
|
190 |
+
* setter for Zend_Http_Client.
|
191 |
+
* Use this if you need specific client-configuration.
|
192 |
+
* otherwise the clientlibrary instantiates the Zend_Http_Client on its own.
|
193 |
+
*
|
194 |
+
* @param Zend_Http_Client $httpClient
|
195 |
+
* @return WirecardCEE_Stdlib_Client_ClientAbstract
|
196 |
+
*/
|
197 |
+
public function setZendHttpClient(Zend_Http_Client $httpClient) {
|
198 |
+
$this->_httpClient = $httpClient;
|
199 |
+
return $this;
|
200 |
+
}
|
201 |
+
|
202 |
+
/**
|
203 |
+
* Returns the user configuration object
|
204 |
+
*
|
205 |
+
* @return WirecardCEE_Stdlib_Config
|
206 |
+
*/
|
207 |
+
public function getUserConfig() {
|
208 |
+
return $this->oUserConfig;
|
209 |
+
}
|
210 |
+
|
211 |
+
/**
|
212 |
+
* Returns the client configuration object
|
213 |
+
*
|
214 |
+
* @return WirecardCEE_Stdlib_Config
|
215 |
+
*/
|
216 |
+
public function getClientConfig() {
|
217 |
+
return $this->oClientConfig;
|
218 |
+
}
|
219 |
+
|
220 |
+
/**
|
221 |
+
* Returns the user agent string
|
222 |
+
*
|
223 |
+
* @return string
|
224 |
+
*/
|
225 |
+
public function getUserAgentString() {
|
226 |
+
$oClientConfig = new WirecardCEE_Stdlib_Config(WirecardCEE_Stdlib_Module::getClientConfig());
|
227 |
+
|
228 |
+
$sUserAgent = $this->_getUserAgent() . ";{$oClientConfig->MODULE_NAME};{$oClientConfig->MODULE_VERSION};";
|
229 |
+
|
230 |
+
foreach($oClientConfig->DEPENDENCIES as $sValue) {
|
231 |
+
$sUserAgent .= is_string($sValue) ? $sValue . ";" : $sValue->CURRENT . ";";
|
232 |
+
}
|
233 |
+
|
234 |
+
return $sUserAgent;
|
235 |
+
}
|
236 |
+
|
237 |
+
/**
|
238 |
+
* Returns all the request data as an array
|
239 |
+
* @return array
|
240 |
+
*/
|
241 |
+
public function getRequestData() {
|
242 |
+
return (array) $this->_requestData;
|
243 |
+
}
|
244 |
+
|
245 |
+
/**
|
246 |
+
* Destructor
|
247 |
+
*/
|
248 |
+
public function __destruct() {
|
249 |
+
unset($this);
|
250 |
+
}
|
251 |
+
|
252 |
+
/**************************
|
253 |
+
* PROTECTED METHODS *
|
254 |
+
**************************/
|
255 |
+
|
256 |
+
/**
|
257 |
+
* Must be implemented in the client
|
258 |
+
*
|
259 |
+
* @return string
|
260 |
+
* @abstract
|
261 |
+
*/
|
262 |
+
abstract protected function _getRequestUrl();
|
263 |
+
|
264 |
+
/**
|
265 |
+
* Must be implemented in the client
|
266 |
+
*
|
267 |
+
* @return string
|
268 |
+
* @abstract
|
269 |
+
*/
|
270 |
+
abstract protected function _getUserAgent();
|
271 |
+
|
272 |
+
/**
|
273 |
+
* 'Secret' setter
|
274 |
+
*
|
275 |
+
* @param string $secret
|
276 |
+
*/
|
277 |
+
protected function _setSecret($secret) {
|
278 |
+
$this->_secret = $secret;
|
279 |
+
$this->_fingerprintOrder[] = self::SECRET;
|
280 |
+
}
|
281 |
+
|
282 |
+
/**
|
283 |
+
* sends the request and returns the zend http response object instance
|
284 |
+
*
|
285 |
+
* @throws WirecardCEE_Stdlib_Client_Exception_InvalidResponseException
|
286 |
+
* @return Zend_Http_Response
|
287 |
+
*/
|
288 |
+
protected function _send() {
|
289 |
+
if (count($this->_fingerprintOrder)) {
|
290 |
+
$this->_fingerprintString = $this->_calculateFingerprint();
|
291 |
+
if (!is_null($this->_fingerprintString)) {
|
292 |
+
$this->_requestData[self::REQUEST_FINGERPRINT] = $this->_fingerprintString;
|
293 |
+
}
|
294 |
+
}
|
295 |
+
|
296 |
+
try {
|
297 |
+
$response = $this->_sendRequest();
|
298 |
+
}
|
299 |
+
catch (Zend_Http_Client_Exception $e) {
|
300 |
+
throw new WirecardCEE_Stdlib_Client_Exception_InvalidResponseException($e->getMessage(), $e->getCode(), $e);
|
301 |
+
}
|
302 |
+
|
303 |
+
return $response;
|
304 |
+
}
|
305 |
+
|
306 |
+
/**
|
307 |
+
* method to calculate fingerprint from given fields.
|
308 |
+
*
|
309 |
+
* @return string - fingerprint hash
|
310 |
+
*/
|
311 |
+
protected function _calculateFingerprint() {
|
312 |
+
$oFingerprintOrder = $this->_fingerprintOrder;
|
313 |
+
|
314 |
+
if ($this->_fingerprintOrderType == self::$FINGERPRINT_TYPE_DYNAMIC) {
|
315 |
+
// we have to add REQUESTFINGERPRINTORDER to local fingerprintOrder to add correct value to param list
|
316 |
+
$oFingerprintOrder[] = self::REQUEST_FINGERPRINT_ORDER;
|
317 |
+
$this->_requestData[self::REQUEST_FINGERPRINT_ORDER] = (string) $oFingerprintOrder;
|
318 |
+
}
|
319 |
+
// fingerprintFields == requestFields + secret - secret MUST NOT be send as param
|
320 |
+
$fingerprintFields = $this->_requestData;
|
321 |
+
$fingerprintFields[self::SECRET] = $this->_secret;
|
322 |
+
|
323 |
+
return WirecardCEE_Stdlib_Fingerprint::generate($fingerprintFields, $oFingerprintOrder);
|
324 |
+
}
|
325 |
+
|
326 |
+
/**
|
327 |
+
* Sends the request and returns the zend http response object instance
|
328 |
+
*
|
329 |
+
* @throws Zend_Http_Client_Exception
|
330 |
+
* @return Zend_Http_Response
|
331 |
+
*/
|
332 |
+
protected function _sendRequest() {
|
333 |
+
$httpClient = $this->_getZendHttpClient();
|
334 |
+
$httpClient->setParameterPost($this->_requestData);
|
335 |
+
$httpClient->setConfig(Array(
|
336 |
+
'useragent' => $this->getUserAgentString()
|
337 |
+
));
|
338 |
+
return $httpClient->request(Zend_Http_Client::POST);
|
339 |
+
}
|
340 |
+
|
341 |
+
/**
|
342 |
+
* Setter for requestfield.
|
343 |
+
* Bare in mind that $this->_fingerprintOrder is an WirecardCEE_Stdlib_FingerprintOrder object which implements
|
344 |
+
* the ArrayAccess interface meaning we can use the array annotation [] on an object
|
345 |
+
*
|
346 |
+
* @see WirecardCEE_Stdlib_FingerprintOrder
|
347 |
+
* @param string $name
|
348 |
+
* @param mixed $value
|
349 |
+
*/
|
350 |
+
protected function _setField($name, $value) {
|
351 |
+
$this->_requestData[(string) $name] = (string) $value;
|
352 |
+
$this->_fingerprintOrder[] = (string) $name;
|
353 |
+
}
|
354 |
+
|
355 |
+
/**
|
356 |
+
* Check if we the field is set in the _requestData array
|
357 |
+
*
|
358 |
+
* @param string $sFieldname
|
359 |
+
* @return boolean
|
360 |
+
*/
|
361 |
+
protected function _isFieldSet($sFieldname) {
|
362 |
+
return (bool) (isset($this->_requestData[$sFieldname]) && !empty($this->_requestData[$sFieldname]));
|
363 |
+
}
|
364 |
+
|
365 |
+
/**
|
366 |
+
* private getter for the Zend_Http_Client
|
367 |
+
* if not set yet it will be instantiated
|
368 |
+
*
|
369 |
+
* @return Zend_Http_Client
|
370 |
+
*/
|
371 |
+
protected function _getZendHttpClient() {
|
372 |
+
if (is_null($this->_httpClient)) {
|
373 |
+
// @todo implement SSL check here
|
374 |
+
$this->_httpClient = new Zend_Http_Client($this->_getRequestUrl());
|
375 |
+
}
|
376 |
+
else {
|
377 |
+
$this->_httpClient->resetParameters(true);
|
378 |
+
$this->_httpClient->setUri($this->_getRequestUrl());
|
379 |
+
}
|
380 |
+
|
381 |
+
return $this->_httpClient;
|
382 |
+
}
|
383 |
+
|
384 |
+
protected function _composeCustomerStatement($paymenttype, $prefix = null, $uniqString = null)
|
385 |
+
{
|
386 |
+
if (!strlen($uniqString))
|
387 |
+
$uniqString = $this->generateUniqString(9);
|
388 |
+
|
389 |
+
if ($paymenttype == WirecardCEE_Stdlib_PaymentTypeAbstract::POLI)
|
390 |
+
{
|
391 |
+
if (strlen($prefix))
|
392 |
+
$customerStatement = substr($prefix, 0, 9);
|
393 |
+
else
|
394 |
+
$customerStatement = $uniqString;
|
395 |
+
} else {
|
396 |
+
if (strlen($prefix))
|
397 |
+
$customerStatement = sprintf('%s Id:%s', $prefix, $uniqString);
|
398 |
+
else
|
399 |
+
$customerStatement = $uniqString;
|
400 |
+
}
|
401 |
+
|
402 |
+
return $customerStatement;
|
403 |
+
}
|
404 |
+
|
405 |
+
/**
|
406 |
+
* returns a uniq String with default length 10.
|
407 |
+
*
|
408 |
+
* @param int $length
|
409 |
+
* @return string
|
410 |
+
*/
|
411 |
+
public function generateUniqString($length = 10)
|
412 |
+
{
|
413 |
+
$tid = '';
|
414 |
+
|
415 |
+
$alphabet = "023456789abcdefghikmnopqrstuvwxyzABCDEFGHIKMNOPQRSTUVWXYZ";
|
416 |
+
|
417 |
+
for ($i = 0; $i < $length; $i++)
|
418 |
+
{
|
419 |
+
$c = substr($alphabet, mt_rand(0, strlen($alphabet) - 1), 1);
|
420 |
+
|
421 |
+
if ((($i % 2) == 0) && !is_numeric($c))
|
422 |
+
{
|
423 |
+
$i--;
|
424 |
+
continue;
|
425 |
+
}
|
426 |
+
if ((($i % 2) == 1) && is_numeric($c))
|
427 |
+
{
|
428 |
+
$i--;
|
429 |
+
continue;
|
430 |
+
}
|
431 |
+
|
432 |
+
$alphabet = str_replace($c, '', $alphabet);
|
433 |
+
$tid .= $c;
|
434 |
+
}
|
435 |
+
|
436 |
+
return $tid;
|
437 |
+
}
|
438 |
+
|
439 |
+
}
|
app/code/local/Wirecard/Stdlib/Client/Exception/ExceptionInterface.php
ADDED
@@ -0,0 +1,19 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Client_Exception_ExceptionInterface
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Client_Exception
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
interface WirecardCEE_Stdlib_Client_Exception_ExceptionInterface extends WirecardCEE_Stdlib_Exception_ExceptionInterface {}
|
app/code/local/Wirecard/Stdlib/Client/Exception/InvalidResponseException.php
ADDED
@@ -0,0 +1,19 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Client_Exception_InvalidResponseException
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Client_Exception
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_Stdlib_Client_Exception_InvalidResponseException extends Exception implements WirecardCEE_Stdlib_Client_Exception_ExceptionInterface {}
|
app/code/local/Wirecard/Stdlib/Config.php
ADDED
@@ -0,0 +1,194 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig. Software & Service Copyright (C) by Wirecard Central Eastern
|
6 |
+
* Europe GmbH, FB-Nr: FN 195599 x, http://www.wirecard.at
|
7 |
+
*/
|
8 |
+
/**
|
9 |
+
*
|
10 |
+
* @name WirecardCEE_Stdlib_Config
|
11 |
+
* @category WirecardCEE
|
12 |
+
* @package WirecardCEE_Stdlib
|
13 |
+
* @version 3.2.0
|
14 |
+
*/
|
15 |
+
class WirecardCEE_Stdlib_Config implements Countable, Iterator {
|
16 |
+
/**
|
17 |
+
* Iteration index
|
18 |
+
*
|
19 |
+
* @var integer
|
20 |
+
*/
|
21 |
+
protected $_index;
|
22 |
+
|
23 |
+
/**
|
24 |
+
* Number of elements in configuration data
|
25 |
+
*
|
26 |
+
* @var integer
|
27 |
+
*/
|
28 |
+
protected $_count;
|
29 |
+
|
30 |
+
/**
|
31 |
+
* Contains array of configuration data
|
32 |
+
*
|
33 |
+
* @var array
|
34 |
+
*/
|
35 |
+
protected $_data;
|
36 |
+
|
37 |
+
/**
|
38 |
+
* Used when unsetting values during iteration to ensure we do not skip
|
39 |
+
* the next element
|
40 |
+
*
|
41 |
+
* @var boolean
|
42 |
+
*/
|
43 |
+
protected $_skipNextIteration;
|
44 |
+
|
45 |
+
/**
|
46 |
+
* WirecardCEE_Stdlib_Config provides a property based interface to
|
47 |
+
* an array.
|
48 |
+
* The data are read-only unless $allowModifications
|
49 |
+
* is set to true on construction.
|
50 |
+
*
|
51 |
+
* WirecardCEE_Stdlib_Config also implements Countable and Iterator to
|
52 |
+
* facilitate easy access to the data.
|
53 |
+
*
|
54 |
+
* @param array $array
|
55 |
+
* @return void
|
56 |
+
*/
|
57 |
+
public function __construct(array $array) {
|
58 |
+
$this->_index = 0;
|
59 |
+
$this->_data = array();
|
60 |
+
foreach($array as $key => $value) {
|
61 |
+
if(is_array($value)) {
|
62 |
+
$this->_data[$key] = new self($value);
|
63 |
+
}
|
64 |
+
else {
|
65 |
+
$this->_data[$key] = $value;
|
66 |
+
}
|
67 |
+
}
|
68 |
+
$this->_count = count($this->_data);
|
69 |
+
}
|
70 |
+
|
71 |
+
/**
|
72 |
+
* Support isset() overloading on PHP 5.1
|
73 |
+
*
|
74 |
+
* @param string $name
|
75 |
+
* @return boolean
|
76 |
+
*/
|
77 |
+
public function __isset($name) {
|
78 |
+
return (bool) isset($this->_data[$name]);
|
79 |
+
}
|
80 |
+
|
81 |
+
/**
|
82 |
+
* Support unset() overloading on PHP 5.1
|
83 |
+
*
|
84 |
+
* @param string $name
|
85 |
+
* @return void
|
86 |
+
*/
|
87 |
+
public function __unset($name) {
|
88 |
+
unset($this->_data[$name]);
|
89 |
+
$this->_count = count($this->_data);
|
90 |
+
$this->_skipNextIteration = true;
|
91 |
+
}
|
92 |
+
|
93 |
+
/**
|
94 |
+
* Magic function so that $obj->value will work.
|
95 |
+
*
|
96 |
+
* @param string $name
|
97 |
+
* @return mixed
|
98 |
+
*/
|
99 |
+
public function __get($name) {
|
100 |
+
return $this->get($name);
|
101 |
+
}
|
102 |
+
|
103 |
+
/**
|
104 |
+
* Retrieve a value and return $default if there is no element set.
|
105 |
+
*
|
106 |
+
* @param string $name
|
107 |
+
* @param mixed $default
|
108 |
+
* @return mixed
|
109 |
+
*/
|
110 |
+
public function get($name, $default = null) {
|
111 |
+
$result = $default;
|
112 |
+
if(array_key_exists($name, $this->_data)) {
|
113 |
+
$result = $this->_data[$name];
|
114 |
+
}
|
115 |
+
return $result;
|
116 |
+
}
|
117 |
+
|
118 |
+
/**
|
119 |
+
* Defined by Countable interface
|
120 |
+
*
|
121 |
+
* @return int
|
122 |
+
*/
|
123 |
+
public function count() {
|
124 |
+
return $this->_count;
|
125 |
+
}
|
126 |
+
|
127 |
+
/**
|
128 |
+
* Defined by Iterator interface
|
129 |
+
*
|
130 |
+
* @return mixed
|
131 |
+
*/
|
132 |
+
public function current() {
|
133 |
+
$this->_skipNextIteration = false;
|
134 |
+
return current($this->_data);
|
135 |
+
}
|
136 |
+
|
137 |
+
/**
|
138 |
+
* Defined by Iterator interface
|
139 |
+
*
|
140 |
+
* @return mixed
|
141 |
+
*/
|
142 |
+
public function key() {
|
143 |
+
return key($this->_data);
|
144 |
+
}
|
145 |
+
|
146 |
+
/**
|
147 |
+
* Defined by Iterator interface
|
148 |
+
*/
|
149 |
+
public function next() {
|
150 |
+
if($this->_skipNextIteration) {
|
151 |
+
$this->_skipNextIteration = false;
|
152 |
+
return;
|
153 |
+
}
|
154 |
+
next($this->_data);
|
155 |
+
$this->_index++;
|
156 |
+
}
|
157 |
+
|
158 |
+
/**
|
159 |
+
* Defined by Iterator interface
|
160 |
+
*/
|
161 |
+
public function rewind() {
|
162 |
+
$this->_skipNextIteration = false;
|
163 |
+
reset($this->_data);
|
164 |
+
$this->_index = 0;
|
165 |
+
}
|
166 |
+
|
167 |
+
/**
|
168 |
+
* Defined by Iterator interface
|
169 |
+
*
|
170 |
+
* @return boolean
|
171 |
+
*/
|
172 |
+
public function valid() {
|
173 |
+
return $this->_index < $this->_count;
|
174 |
+
}
|
175 |
+
|
176 |
+
/**
|
177 |
+
* Return an associative array of the stored data.
|
178 |
+
*
|
179 |
+
* @return array
|
180 |
+
*/
|
181 |
+
public function toArray() {
|
182 |
+
$array = array();
|
183 |
+
$data = $this->_data;
|
184 |
+
foreach($data as $key => $value) {
|
185 |
+
if($value instanceof WirecardCEE_Stdlib_Config) {
|
186 |
+
$array[$key] = $value->toArray();
|
187 |
+
}
|
188 |
+
else {
|
189 |
+
$array[$key] = $value;
|
190 |
+
}
|
191 |
+
}
|
192 |
+
return $array;
|
193 |
+
}
|
194 |
+
}
|
app/code/local/Wirecard/Stdlib/Config/client.config.php
ADDED
@@ -0,0 +1,24 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
return Array(
|
12 |
+
'MODULE_NAME' => 'WirecardCEE_Stdlib',
|
13 |
+
'MODULE_VERSION' => '3.0.0',
|
14 |
+
'DEPENDENCIES' => array(
|
15 |
+
'FRAMEWORK_NAME' => 'Zend_Framework',
|
16 |
+
'FRAMEWORK_VERSION' => Array(
|
17 |
+
'MINIMUM' => '1.11.10',
|
18 |
+
'CURRENT' => Zend_Version::VERSION
|
19 |
+
),
|
20 |
+
'SCRIPTING_LANG' => 'PHP',
|
21 |
+
'SCRIPTING_LANG_VERSION' => '5.2'
|
22 |
+
),
|
23 |
+
'USE_DEBUG' => FALSE
|
24 |
+
);
|
app/code/local/Wirecard/Stdlib/ConsumerData.php
ADDED
@@ -0,0 +1,271 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* Container class for consumerData
|
14 |
+
*
|
15 |
+
* @name WirecardCEE_Stdlib_ConsumerData
|
16 |
+
* @category WirecardCEE
|
17 |
+
* @package WirecardCEE_Stdlib
|
18 |
+
* @subpackage ConsumerData
|
19 |
+
* @version 3.2.0
|
20 |
+
*/
|
21 |
+
class WirecardCEE_Stdlib_ConsumerData {
|
22 |
+
/**
|
23 |
+
*
|
24 |
+
* @var string[]
|
25 |
+
*/
|
26 |
+
protected $_consumerData = Array();
|
27 |
+
|
28 |
+
/**
|
29 |
+
*
|
30 |
+
* @var string
|
31 |
+
*/
|
32 |
+
protected static $IP_ADDRESS = 'IpAddress';
|
33 |
+
|
34 |
+
/**
|
35 |
+
*
|
36 |
+
* @var string
|
37 |
+
*/
|
38 |
+
protected static $USER_AGENT = 'UserAgent';
|
39 |
+
|
40 |
+
/**
|
41 |
+
*
|
42 |
+
* @var string
|
43 |
+
*/
|
44 |
+
protected static $PREFIX = 'consumer';
|
45 |
+
|
46 |
+
/**
|
47 |
+
*
|
48 |
+
* @var string
|
49 |
+
*/
|
50 |
+
protected static $EMAIL = 'Email';
|
51 |
+
|
52 |
+
/**
|
53 |
+
*
|
54 |
+
* @var string
|
55 |
+
*/
|
56 |
+
protected static $BIRTH_DATE = 'BirthDate';
|
57 |
+
|
58 |
+
/**
|
59 |
+
* @var string
|
60 |
+
*/
|
61 |
+
protected static $COMPANY_NAME = 'companyName';
|
62 |
+
|
63 |
+
/**
|
64 |
+
* @var string
|
65 |
+
*/
|
66 |
+
protected static $COMPANY_VAT_ID = 'companyVatId';
|
67 |
+
|
68 |
+
/**
|
69 |
+
* @var string
|
70 |
+
*/
|
71 |
+
protected static $COMPANY_TRADE_REGISTRY_NUMBER = 'companyTradeRegistryNumber';
|
72 |
+
|
73 |
+
/**
|
74 |
+
*
|
75 |
+
* @var string
|
76 |
+
*/
|
77 |
+
protected static $TAX_IDENTIFICATION_NUMBER = 'TaxIdentificationNumber';
|
78 |
+
|
79 |
+
/**
|
80 |
+
*
|
81 |
+
* @var string
|
82 |
+
*/
|
83 |
+
protected static $DRIVERS_LICENSE_NUMBER = 'DriversLicenseNumber';
|
84 |
+
|
85 |
+
/**
|
86 |
+
*
|
87 |
+
* @var string
|
88 |
+
*/
|
89 |
+
protected static $DRIVERS_LICENSE_COUNTRY = 'DriversLicenseCountry';
|
90 |
+
|
91 |
+
/**
|
92 |
+
*
|
93 |
+
* @var string
|
94 |
+
*/
|
95 |
+
protected static $DRIVERS_LICENSE_STATE = 'DriversLicenseState';
|
96 |
+
|
97 |
+
/**
|
98 |
+
*
|
99 |
+
* @var string
|
100 |
+
*/
|
101 |
+
protected static $BIRTH_DATE_FORMAT = 'Y-m-d';
|
102 |
+
|
103 |
+
/**
|
104 |
+
* setter for the mail address of the consumer
|
105 |
+
*
|
106 |
+
* @param string $mailAddress
|
107 |
+
* @return WirecardCEE_Stdlib_ConsumerData
|
108 |
+
*/
|
109 |
+
public function setEmail($mailAddress) {
|
110 |
+
$this->_setField(self::$EMAIL, $mailAddress);
|
111 |
+
return $this;
|
112 |
+
}
|
113 |
+
|
114 |
+
/**
|
115 |
+
* setter for the birthdate of the consumer
|
116 |
+
*
|
117 |
+
* @param DateTime $birthDate
|
118 |
+
* @return WirecardCEE_Stdlib_ConsumerData
|
119 |
+
*/
|
120 |
+
public function setBirthDate(DateTime $birthDate) {
|
121 |
+
$this->_setField(self::$BIRTH_DATE, $birthDate->format(self::$BIRTH_DATE_FORMAT));
|
122 |
+
return $this;
|
123 |
+
}
|
124 |
+
|
125 |
+
/**
|
126 |
+
* setter for the tax identification number of the consumer
|
127 |
+
*
|
128 |
+
* @param string $taxIdentificationNumber
|
129 |
+
* @return WirecardCEE_Stdlib_ConsumerData
|
130 |
+
*/
|
131 |
+
public function setTaxIdentificationNumber($taxIdentificationNumber) {
|
132 |
+
$this->_setField(self::$TAX_IDENTIFICATION_NUMBER, $taxIdentificationNumber);
|
133 |
+
return $this;
|
134 |
+
}
|
135 |
+
|
136 |
+
/**
|
137 |
+
* setter for the drivers license number of the consumer
|
138 |
+
*
|
139 |
+
* @param string $driversLicenseNumber
|
140 |
+
* @return WirecardCEE_Stdlib_ConsumerData
|
141 |
+
*/
|
142 |
+
public function setDriversLicenseNumber($driversLicenseNumber) {
|
143 |
+
$this->_setField(self::$DRIVERS_LICENSE_NUMBER, $driversLicenseNumber);
|
144 |
+
return $this;
|
145 |
+
}
|
146 |
+
|
147 |
+
/**
|
148 |
+
* setter for the drivers license country of the consumer
|
149 |
+
*
|
150 |
+
* @param string $driversLicenseCountry
|
151 |
+
* @return WirecardCEE_Stdlib_ConsumerData
|
152 |
+
*/
|
153 |
+
public function setDriversLicenseCountry($driversLicenseCountry) {
|
154 |
+
$this->_setField(self::$DRIVERS_LICENSE_COUNTRY, $driversLicenseCountry);
|
155 |
+
return $this;
|
156 |
+
}
|
157 |
+
|
158 |
+
/**
|
159 |
+
* setter for the drivers license state of the consumer
|
160 |
+
*
|
161 |
+
* @param string $driversLicenseState
|
162 |
+
* @return WirecardCEE_Stdlib_ConsumerData
|
163 |
+
*/
|
164 |
+
public function setDriversLicenseState($driversLicenseState) {
|
165 |
+
$this->_setField(self::$DRIVERS_LICENSE_STATE, $driversLicenseState);
|
166 |
+
return $this;
|
167 |
+
}
|
168 |
+
|
169 |
+
/**
|
170 |
+
* @param string $companyName
|
171 |
+
* @return WirecardCEE_Stdlib_ConsumerData
|
172 |
+
*/
|
173 |
+
public function setCompanyName($companyName) {
|
174 |
+
$this->_setField(self::$COMPANY_NAME, $companyName);
|
175 |
+
return $this;
|
176 |
+
}
|
177 |
+
|
178 |
+
/**
|
179 |
+
* @param string $companyVatId
|
180 |
+
* @return WirecardCEE_Stdlib_ConsumerData
|
181 |
+
*/
|
182 |
+
public function setCompanyVatId($companyVatId) {
|
183 |
+
$this->_setField(self::$COMPANY_VAT_ID, $companyVatId);
|
184 |
+
return $this;
|
185 |
+
}
|
186 |
+
|
187 |
+
/**
|
188 |
+
* @param string $companyTradeRegistryNumber
|
189 |
+
* @return WirecardCEE_Stdlib_ConsumerData
|
190 |
+
*/
|
191 |
+
public function setCompanyTradeRegistryNumber($companyTradeRegistryNumber) {
|
192 |
+
$this->_setField(self::$COMPANY_TRADE_REGISTRY_NUMBER, $companyTradeRegistryNumber);
|
193 |
+
return $this;
|
194 |
+
}
|
195 |
+
|
196 |
+
/**
|
197 |
+
* adds addressinformation to the consumerdata.
|
198 |
+
* used {@link WirecardCEE_Stdlib_ConsumerData::getData()}
|
199 |
+
*
|
200 |
+
* @param WirecardCEE_Stdlib_ConsumerData_Address $address
|
201 |
+
* @return WirecardCEE_Stdlib_ConsumerData
|
202 |
+
*/
|
203 |
+
public function addAddressInformation(WirecardCEE_Stdlib_ConsumerData_Address $address) {
|
204 |
+
$consumerData = array_merge($this->_consumerData, $address->getData());
|
205 |
+
$this->_consumerData = $consumerData;
|
206 |
+
return $this;
|
207 |
+
}
|
208 |
+
|
209 |
+
/**
|
210 |
+
* setter for the consumer IP-Address
|
211 |
+
*
|
212 |
+
* @param string $consumerIpAddress
|
213 |
+
* @return WirecardCEE_Stdlib_ConsumerData
|
214 |
+
*/
|
215 |
+
public function setIpAddress($consumerIpAddress) {
|
216 |
+
$this->_setField(self::$IP_ADDRESS, $consumerIpAddress);
|
217 |
+
return $this;
|
218 |
+
}
|
219 |
+
|
220 |
+
/**
|
221 |
+
* setter for the consumer user-agent
|
222 |
+
*
|
223 |
+
* @param string $consumerUserAgent
|
224 |
+
* @return WirecardCEE_Stdlib_ConsumerData
|
225 |
+
*/
|
226 |
+
public function setUserAgent($consumerUserAgent) {
|
227 |
+
$this->_setField(self::$USER_AGENT, $consumerUserAgent);
|
228 |
+
return $this;
|
229 |
+
}
|
230 |
+
|
231 |
+
/**
|
232 |
+
* Getter for all consumerData
|
233 |
+
*
|
234 |
+
* @return string[]
|
235 |
+
*/
|
236 |
+
public function getData() {
|
237 |
+
return $this->_consumerData;
|
238 |
+
}
|
239 |
+
|
240 |
+
/**
|
241 |
+
* Static getter for consumerUserAgentField
|
242 |
+
*
|
243 |
+
* @internal
|
244 |
+
* @return string
|
245 |
+
*/
|
246 |
+
public static function getConsumerUserAgentFieldName() {
|
247 |
+
return self::$PREFIX . self::$USER_AGENT;
|
248 |
+
}
|
249 |
+
|
250 |
+
/**
|
251 |
+
* Static getter for consumerIpField
|
252 |
+
*
|
253 |
+
* @internal
|
254 |
+
* @return string
|
255 |
+
*/
|
256 |
+
public static function getConsumerIpAddressFieldName() {
|
257 |
+
return self::$PREFIX . self::$IP_ADDRESS;
|
258 |
+
}
|
259 |
+
|
260 |
+
/**
|
261 |
+
* setter for consumerdata fields
|
262 |
+
*
|
263 |
+
* @param string $name
|
264 |
+
* @param string $value
|
265 |
+
* @access private
|
266 |
+
*/
|
267 |
+
protected function _setField($name, $value) {
|
268 |
+
// e.g. consumerBillingFirstname
|
269 |
+
$this->_consumerData[self::$PREFIX . $name] = (string) $value;
|
270 |
+
}
|
271 |
+
}
|
app/code/local/Wirecard/Stdlib/ConsumerData/Address.php
ADDED
@@ -0,0 +1,262 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* Container class for consumerData
|
14 |
+
*
|
15 |
+
* @name WirecardCEE_Stdlib_ConsumerData
|
16 |
+
* @category WirecardCEE
|
17 |
+
* @package WirecardCEE_Stdlib
|
18 |
+
* @subpackage ConsumerData
|
19 |
+
* @version 3.2.0
|
20 |
+
*/
|
21 |
+
class WirecardCEE_Stdlib_ConsumerData_Address {
|
22 |
+
/**
|
23 |
+
* Constant: Shipping
|
24 |
+
* @var string
|
25 |
+
*/
|
26 |
+
const TYPE_SHIPPING = 'Shipping';
|
27 |
+
|
28 |
+
/**
|
29 |
+
* Constant: Billing
|
30 |
+
* @var string
|
31 |
+
*/
|
32 |
+
const TYPE_BILLING = 'Billing';
|
33 |
+
|
34 |
+
/**
|
35 |
+
* Consumer
|
36 |
+
* @staticvar string
|
37 |
+
* @internal
|
38 |
+
*/
|
39 |
+
protected static $PREFIX = 'consumer';
|
40 |
+
|
41 |
+
/**
|
42 |
+
* Firstname
|
43 |
+
* @staticvar string
|
44 |
+
* @internal
|
45 |
+
*/
|
46 |
+
protected static $FIRSTNAME = 'Firstname';
|
47 |
+
|
48 |
+
/**
|
49 |
+
* Lastname
|
50 |
+
* @staticvar string
|
51 |
+
* @internal
|
52 |
+
*/
|
53 |
+
protected static $LASTNAME = 'Lastname';
|
54 |
+
|
55 |
+
/**
|
56 |
+
* Address1
|
57 |
+
* @staticvar string
|
58 |
+
* @internal
|
59 |
+
*/
|
60 |
+
protected static $ADDRESS1 = 'Address1';
|
61 |
+
|
62 |
+
/**
|
63 |
+
* Address2
|
64 |
+
* @staticvar string
|
65 |
+
* @internal
|
66 |
+
*/
|
67 |
+
protected static $ADDRESS2 = 'Address2';
|
68 |
+
|
69 |
+
/**
|
70 |
+
* City
|
71 |
+
* @staticvar string
|
72 |
+
* @internal
|
73 |
+
*/
|
74 |
+
protected static $CITY = 'City';
|
75 |
+
|
76 |
+
/**
|
77 |
+
* Country
|
78 |
+
* @staticvar string
|
79 |
+
* @internal
|
80 |
+
*/
|
81 |
+
protected static $COUNTRY = 'Country';
|
82 |
+
|
83 |
+
/**
|
84 |
+
* State
|
85 |
+
* @staticvar string
|
86 |
+
* @internal
|
87 |
+
*/
|
88 |
+
protected static $STATE = 'State';
|
89 |
+
|
90 |
+
/**
|
91 |
+
* ZipCode
|
92 |
+
* @staticvar string
|
93 |
+
* @internal
|
94 |
+
*/
|
95 |
+
protected static $ZIP_CODE = 'ZipCode';
|
96 |
+
|
97 |
+
/**
|
98 |
+
* Phone
|
99 |
+
* @staticvar string
|
100 |
+
* @internal
|
101 |
+
*/
|
102 |
+
protected static $PHONE = 'Phone';
|
103 |
+
|
104 |
+
/**
|
105 |
+
* Fax
|
106 |
+
* @staticvar string
|
107 |
+
* @internal
|
108 |
+
*/
|
109 |
+
protected static $FAX = 'Fax';
|
110 |
+
|
111 |
+
/**
|
112 |
+
* Address type
|
113 |
+
* @var string
|
114 |
+
*/
|
115 |
+
protected $_addressType;
|
116 |
+
|
117 |
+
/**
|
118 |
+
* Internal address data holder
|
119 |
+
* @var array
|
120 |
+
*/
|
121 |
+
protected $_addressData = Array();
|
122 |
+
|
123 |
+
/**
|
124 |
+
* creates an instance of the WirecardCEE_Stdlib_ConsumerData_Address object.
|
125 |
+
* addressType should be Shipping or Billing.
|
126 |
+
*
|
127 |
+
* @param string $addressType
|
128 |
+
*/
|
129 |
+
public function __construct($addressType) {
|
130 |
+
$this->_addressType = $addressType;
|
131 |
+
}
|
132 |
+
|
133 |
+
/**
|
134 |
+
* setter for the firstname used for the given address.
|
135 |
+
*
|
136 |
+
* @param string $firstname
|
137 |
+
* @return WirecardCEE_Stdlib_ConsumerData_Address
|
138 |
+
*/
|
139 |
+
public function setFirstname($firstname) {
|
140 |
+
$this->_setField(self::$FIRSTNAME, $firstname);
|
141 |
+
return $this;
|
142 |
+
}
|
143 |
+
|
144 |
+
/**
|
145 |
+
* setter for the lastname used for the given address.
|
146 |
+
*
|
147 |
+
* @param string $lastname
|
148 |
+
* @return WirecardCEE_Stdlib_ConsumerData_Address
|
149 |
+
*/
|
150 |
+
public function setLastname($lastname) {
|
151 |
+
$this->_setField(self::$LASTNAME, $lastname);
|
152 |
+
return $this;
|
153 |
+
}
|
154 |
+
|
155 |
+
/**
|
156 |
+
* setter for the addressfield 1 used for the given address.
|
157 |
+
*
|
158 |
+
* @param string $address1
|
159 |
+
* @return WirecardCEE_Stdlib_ConsumerData_Address
|
160 |
+
*/
|
161 |
+
public function setAddress1($address1) {
|
162 |
+
$this->_setField(self::$ADDRESS1, $address1);
|
163 |
+
return $this;
|
164 |
+
}
|
165 |
+
|
166 |
+
/**
|
167 |
+
* setter for the addressfield 2 used for the given address.
|
168 |
+
*
|
169 |
+
* @param string $address2
|
170 |
+
* @return WirecardCEE_Stdlib_ConsumerData_Address
|
171 |
+
*/
|
172 |
+
public function setAddress2($address2) {
|
173 |
+
$this->_setField(self::$ADDRESS2, $address2);
|
174 |
+
return $this;
|
175 |
+
}
|
176 |
+
|
177 |
+
/**
|
178 |
+
* setter for the city used for the given address.
|
179 |
+
*
|
180 |
+
* @param string $city
|
181 |
+
* @return WirecardCEE_Stdlib_ConsumerData_Address
|
182 |
+
*/
|
183 |
+
public function setCity($city) {
|
184 |
+
$this->_setField(self::$CITY, $city);
|
185 |
+
return $this;
|
186 |
+
}
|
187 |
+
|
188 |
+
/**
|
189 |
+
* setter for the country used for the given address.
|
190 |
+
*
|
191 |
+
* @param string $country
|
192 |
+
* @return WirecardCEE_Stdlib_ConsumerData_Address
|
193 |
+
*/
|
194 |
+
public function setCountry($country) {
|
195 |
+
$this->_setField(self::$COUNTRY, $country);
|
196 |
+
return $this;
|
197 |
+
}
|
198 |
+
|
199 |
+
/**
|
200 |
+
* setter for the state used for the given address.
|
201 |
+
*
|
202 |
+
* @param string $state
|
203 |
+
* @return WirecardCEE_Stdlib_ConsumerData_Address
|
204 |
+
*/
|
205 |
+
public function setState($state) {
|
206 |
+
$this->_setField(self::$STATE, $state);
|
207 |
+
return $this;
|
208 |
+
}
|
209 |
+
|
210 |
+
/**
|
211 |
+
* setter for the zip code used for the given address.
|
212 |
+
*
|
213 |
+
* @param string $zipCode
|
214 |
+
* @return WirecardCEE_Stdlib_ConsumerData_Address
|
215 |
+
*/
|
216 |
+
public function setZipCode($zipCode) {
|
217 |
+
$this->_setField(self::$ZIP_CODE, $zipCode);
|
218 |
+
return $this;
|
219 |
+
}
|
220 |
+
|
221 |
+
/**
|
222 |
+
* setter for the phone number used for the given address.
|
223 |
+
*
|
224 |
+
* @param string $phone
|
225 |
+
* @return WirecardCEE_Stdlib_ConsumerData_Address
|
226 |
+
*/
|
227 |
+
public function setPhone($phone) {
|
228 |
+
$this->_setField(self::$PHONE, $phone);
|
229 |
+
return $this;
|
230 |
+
}
|
231 |
+
|
232 |
+
/**
|
233 |
+
* setter for the fax number used for the given address.
|
234 |
+
*
|
235 |
+
* @param string $fax
|
236 |
+
* @return WirecardCEE_Stdlib_ConsumerData_Address
|
237 |
+
*/
|
238 |
+
public function setFax($fax) {
|
239 |
+
$this->_setField(self::$FAX, $fax);
|
240 |
+
return $this;
|
241 |
+
}
|
242 |
+
|
243 |
+
/**
|
244 |
+
* setter for an addressfield.
|
245 |
+
*
|
246 |
+
* @param string $name
|
247 |
+
* @param string $value
|
248 |
+
*/
|
249 |
+
protected function _setField($name, $value) {
|
250 |
+
// e.g. consumerBillingFirstname
|
251 |
+
$this->_addressData[self::$PREFIX . $this->_addressType . $name] = (string) $value;
|
252 |
+
}
|
253 |
+
|
254 |
+
/**
|
255 |
+
* returns the given addressfields as an array
|
256 |
+
*
|
257 |
+
* @return string[]
|
258 |
+
*/
|
259 |
+
public function getData() {
|
260 |
+
return $this->_addressData;
|
261 |
+
}
|
262 |
+
}
|
app/code/local/Wirecard/Stdlib/Error.php
ADDED
@@ -0,0 +1,73 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_Stdlib_Error
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_Stdlib
|
15 |
+
* @version 3.2.0
|
16 |
+
* @abstract
|
17 |
+
*/
|
18 |
+
abstract class WirecardCEE_Stdlib_Error {
|
19 |
+
|
20 |
+
/**
|
21 |
+
* Error message
|
22 |
+
*
|
23 |
+
* @var string
|
24 |
+
*/
|
25 |
+
protected $_message = null;
|
26 |
+
|
27 |
+
/**
|
28 |
+
* Consumer message
|
29 |
+
*
|
30 |
+
* @var string
|
31 |
+
*/
|
32 |
+
protected $_consumerMessage = null;
|
33 |
+
|
34 |
+
/**
|
35 |
+
* Message getter
|
36 |
+
*
|
37 |
+
* @return string
|
38 |
+
*/
|
39 |
+
public function getMessage() {
|
40 |
+
return (string) $this->_message;
|
41 |
+
}
|
42 |
+
|
43 |
+
/**
|
44 |
+
* Error Message setter
|
45 |
+
*
|
46 |
+
* @param string $message
|
47 |
+
* @return WirecardCEE_Stdlib_Error
|
48 |
+
*/
|
49 |
+
public function setMessage($message) {
|
50 |
+
$this->_message = (string) $message;
|
51 |
+
return $this;
|
52 |
+
}
|
53 |
+
|
54 |
+
/**
|
55 |
+
* Consumer message setter
|
56 |
+
*
|
57 |
+
* @param string $consumerMessage
|
58 |
+
* @return WirecardCEE_Stdlib_Error
|
59 |
+
*/
|
60 |
+
public function setConsumerMessage($consumerMessage) {
|
61 |
+
$this->_consumerMessage = (string) $consumerMessage;
|
62 |
+
return $this;
|
63 |
+
}
|
64 |
+
|
65 |
+
/**
|
66 |
+
* Consumer message getter
|
67 |
+
*
|
68 |
+
* @return string
|
69 |
+
*/
|
70 |
+
public function getConsumerMessage() {
|
71 |
+
return (string) $this->_consumerMessage;
|
72 |
+
}
|
73 |
+
}
|
app/code/local/Wirecard/Stdlib/Exception/ExceptionInterface.php
ADDED
@@ -0,0 +1,19 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Exception_ExceptionInterface
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Exception
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
interface WirecardCEE_Stdlib_Exception_ExceptionInterface {}
|
app/code/local/Wirecard/Stdlib/Exception/InvalidArgumentException.php
ADDED
@@ -0,0 +1,19 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Exception_InvalidArgumentException
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Exception
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_Stdlib_Exception_InvalidArgumentException extends InvalidArgumentException implements WirecardCEE_Stdlib_Exception_ExceptionInterface {}
|
app/code/local/Wirecard/Stdlib/Exception/InvalidFormatException.php
ADDED
@@ -0,0 +1,19 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Exception_InvalidFormatException
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Exception
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_Stdlib_Exception_InvalidFormatException extends Exception implements WirecardCEE_Stdlib_Exception_ExceptionInterface {}
|
app/code/local/Wirecard/Stdlib/Exception/InvalidResponseException.php
ADDED
@@ -0,0 +1,18 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_Stdlib_Exception_InvalidResponseException
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_Stdlib
|
15 |
+
* @subpackage Exception
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_Stdlib_Exception_InvalidResponseException extends Exception implements WirecardCEE_Stdlib_Exception_ExceptionInterface {}
|
app/code/local/Wirecard/Stdlib/Exception/InvalidTypeException.php
ADDED
@@ -0,0 +1,18 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_Stdlib_Exception_InvalidResponseException
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_Stdlib
|
15 |
+
* @subpackage Exception
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_Stdlib_Exception_InvalidTypeException extends Exception implements WirecardCEE_Stdlib_Client_Exception_ExceptionInterface {}
|
app/code/local/Wirecard/Stdlib/Exception/InvalidValueException.php
ADDED
@@ -0,0 +1,18 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_Stdlib_Exception_InvalidValueException
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_Stdlib
|
15 |
+
* @subpackage Exception
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_Stdlib_Exception_InvalidValueException extends Exception implements WirecardCEE_Stdlib_Client_Exception_ExceptionInterface {}
|
app/code/local/Wirecard/Stdlib/Exception/UnexpectedValueException.php
ADDED
@@ -0,0 +1,18 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_Stdlib_Exception_UnexpectedValueException
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_Stdlib
|
15 |
+
* @subpackage Exception
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_Stdlib_Exception_UnexpectedValueException extends UnexpectedValueException implements WirecardCEE_Stdlib_Exception_ExceptionInterface {}
|
app/code/local/Wirecard/Stdlib/Fingerprint.php
ADDED
@@ -0,0 +1,106 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Fingerprint
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_Stdlib_Fingerprint {
|
19 |
+
/**
|
20 |
+
*
|
21 |
+
* @var string
|
22 |
+
*/
|
23 |
+
const HASH_ALGORITHM_MD5 = 'md5';
|
24 |
+
|
25 |
+
/**
|
26 |
+
*
|
27 |
+
* @var string
|
28 |
+
*/
|
29 |
+
const HASH_ALGORITHM_SHA512 = 'sha512';
|
30 |
+
|
31 |
+
/**
|
32 |
+
*
|
33 |
+
* @var string
|
34 |
+
*/
|
35 |
+
const HASH_ALGORITHM_HMAC_SHA512 = 'hmac_sha512';
|
36 |
+
|
37 |
+
/**
|
38 |
+
* Hash algorithm
|
39 |
+
* @staticvar string
|
40 |
+
* @internal
|
41 |
+
*/
|
42 |
+
protected static $_HASH_ALGORITHM = self::HASH_ALGORITHM_HMAC_SHA512;
|
43 |
+
|
44 |
+
/**
|
45 |
+
* Hash algorithm
|
46 |
+
* @staticvar boolean
|
47 |
+
* @internal
|
48 |
+
*/
|
49 |
+
protected static $_STRIP_SLASHES = false;
|
50 |
+
|
51 |
+
|
52 |
+
/**
|
53 |
+
* use stripslashes for fingerprint generate methods
|
54 |
+
*
|
55 |
+
* @param boolean $strip
|
56 |
+
*/
|
57 |
+
public static function stripSlashes($strip) {
|
58 |
+
self::$_STRIP_SLASHES = filter_var($strip, FILTER_VALIDATE_BOOLEAN);
|
59 |
+
}
|
60 |
+
|
61 |
+
/**
|
62 |
+
* Sets the hash algorithm
|
63 |
+
* @param string $hashAlgorithm
|
64 |
+
*/
|
65 |
+
public static function setHashAlgorithm($sHashAlgorithm) {
|
66 |
+
self::$_HASH_ALGORITHM = (string) $sHashAlgorithm;
|
67 |
+
}
|
68 |
+
|
69 |
+
/**
|
70 |
+
* generates an Fingerprint-string
|
71 |
+
*
|
72 |
+
* @param array $aValues
|
73 |
+
* @param array $oFingerprintOrder
|
74 |
+
*/
|
75 |
+
public static function generate(Array $aValues, WirecardCEE_Stdlib_FingerprintOrder $oFingerprintOrder) {
|
76 |
+
if (self::$_HASH_ALGORITHM == self::HASH_ALGORITHM_HMAC_SHA512) {
|
77 |
+
$hash = hash_init(self::HASH_ALGORITHM_SHA512, HASH_HMAC, $aValues['secret']);
|
78 |
+
} else {
|
79 |
+
$hash = hash_init(self::$_HASH_ALGORITHM);
|
80 |
+
}
|
81 |
+
foreach($oFingerprintOrder as $key) {
|
82 |
+
$key = (string) $key;
|
83 |
+
|
84 |
+
if (array_key_exists($key, $aValues)) {
|
85 |
+
hash_update($hash, (self::$_STRIP_SLASHES) ? stripslashes($aValues[$key]) : $aValues[$key]);
|
86 |
+
}
|
87 |
+
else {
|
88 |
+
throw new WirecardCEE_Stdlib_Exception_InvalidValueException('Value for key ' . strtoupper($key) . ' not found in values array.');
|
89 |
+
}
|
90 |
+
}
|
91 |
+
|
92 |
+
return hash_final($hash);
|
93 |
+
}
|
94 |
+
|
95 |
+
/**
|
96 |
+
*
|
97 |
+
* @param array $aValues
|
98 |
+
* @param array $oFingerprintOrder
|
99 |
+
* @param string $sCompareFingerprint
|
100 |
+
* @return boolean
|
101 |
+
*/
|
102 |
+
public static function compare(Array $aValues, WirecardCEE_Stdlib_FingerprintOrder $oFingerprintOrder, $sCompareFingerprint) {
|
103 |
+
$sCalcFingerprint = self::generate($aValues, $oFingerprintOrder);
|
104 |
+
return (bool) (strcasecmp($sCalcFingerprint, $sCompareFingerprint) == 0);
|
105 |
+
}
|
106 |
+
}
|
app/code/local/Wirecard/Stdlib/FingerprintOrder.php
ADDED
@@ -0,0 +1,163 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/*
|
13 |
+
* Due to the ArrayAccess, IteratorAggregate and Countable interfaces implementation we are able to use this object
|
14 |
+
* also as:
|
15 |
+
*
|
16 |
+
* 1. array
|
17 |
+
*
|
18 |
+
* ie.
|
19 |
+
*
|
20 |
+
* $obj = new WirecardCEE_Stdlib_FingerprintOrder();
|
21 |
+
* $obj->add('index') is same as $obj[] = 'index';
|
22 |
+
*
|
23 |
+
* 2. we can iterate it via foreach ie.
|
24 |
+
* foreach($obj as $key => $value) {}
|
25 |
+
*
|
26 |
+
* 3. and we can use count() on the whole object ie count($obj)
|
27 |
+
* which will return the number of items in fingeprintOrder array
|
28 |
+
*
|
29 |
+
* @name WirecardCEE_Stdlib_FingerprintOrder
|
30 |
+
* @category WirecardCEE
|
31 |
+
* @package WirecardCEE_Stdlib
|
32 |
+
* @version 3.2.0
|
33 |
+
*/
|
34 |
+
class WirecardCEE_Stdlib_FingerprintOrder implements ArrayAccess, IteratorAggregate, Countable {
|
35 |
+
/**
|
36 |
+
*
|
37 |
+
* Internal data holder
|
38 |
+
* @var Array
|
39 |
+
*/
|
40 |
+
protected $_fingeprintOrder;
|
41 |
+
|
42 |
+
/**
|
43 |
+
* Constructor which accepts array(key=>pair) or string ("first, second, thrid, fourth" format)
|
44 |
+
*
|
45 |
+
* @param string|array $mItems
|
46 |
+
* @throws WirecardCEE_Stdlib_Exception_InvalidArgumentException
|
47 |
+
*/
|
48 |
+
public function __construct($mItems = null) {
|
49 |
+
$this->_fingeprintOrder = Array();
|
50 |
+
|
51 |
+
if(!is_null($mItems) && !$this->setOrder($mItems)) {
|
52 |
+
throw new WirecardCEE_Stdlib_Exception_InvalidArgumentException(sprintf("Unknown fingerprint format in %s on line %s", __METHOD__, __LINE__));
|
53 |
+
}
|
54 |
+
}
|
55 |
+
|
56 |
+
/**
|
57 |
+
* Sets the fingerprint order from string ("first, second, third, fourth" format)
|
58 |
+
* or from an existing array (normal "key=>pair" format).
|
59 |
+
*
|
60 |
+
* @param string|array $mItems
|
61 |
+
* @return boolean
|
62 |
+
*/
|
63 |
+
public function setOrder($mItems) {
|
64 |
+
if(is_array($mItems) && count($mItems)) {
|
65 |
+
$this->_fingeprintOrder = Array();
|
66 |
+
foreach($mItems as $sItem) {
|
67 |
+
$this->_fingeprintOrder[] = trim($sItem);
|
68 |
+
}
|
69 |
+
return true;
|
70 |
+
}
|
71 |
+
elseif(is_string($mItems)) {
|
72 |
+
return $this->setOrder(explode(",", $mItems));
|
73 |
+
}
|
74 |
+
else {
|
75 |
+
return false;
|
76 |
+
}
|
77 |
+
}
|
78 |
+
|
79 |
+
/**
|
80 |
+
* Internal __toArray implementation
|
81 |
+
* At the time of writing this (07.03.2013) PHP doesn't support
|
82 |
+
* array casting of objects by calling __toArray function (like string casting nad calling __toString())
|
83 |
+
*
|
84 |
+
* @return array
|
85 |
+
*/
|
86 |
+
public function __toArray() {
|
87 |
+
return (array) $this->_fingeprintOrder;
|
88 |
+
}
|
89 |
+
|
90 |
+
/**
|
91 |
+
* Returns the fingerprint order as string (csv)
|
92 |
+
*
|
93 |
+
* @return string
|
94 |
+
*/
|
95 |
+
public function __toString() {
|
96 |
+
return (string) implode(",", $this->_fingeprintOrder);
|
97 |
+
}
|
98 |
+
|
99 |
+
/**
|
100 |
+
* @see ArrayAccess::offsetSet($mOffset, $mValue)
|
101 |
+
*
|
102 |
+
* @param int|string $mOffset
|
103 |
+
* @param int|string $mValue
|
104 |
+
*/
|
105 |
+
public function offsetSet($mOffset, $mValue) {
|
106 |
+
if(!$mOffset) {
|
107 |
+
$this->_fingeprintOrder[] = trim($mValue);
|
108 |
+
}
|
109 |
+
else {
|
110 |
+
$this->_fingeprintOrder[$mOffset] = trim($mValue);
|
111 |
+
}
|
112 |
+
}
|
113 |
+
|
114 |
+
/**
|
115 |
+
* @see ArrayAccess::offsetGet($mOffset)
|
116 |
+
*
|
117 |
+
* @param int|string $mOffset
|
118 |
+
* @return Mixed <NULL, int|string>
|
119 |
+
*/
|
120 |
+
public function offsetGet($mOffset) {
|
121 |
+
return isset($this->_fingeprintOrder[$mOffset]) ? $this->_fingeprintOrder[$mOffset] : null;
|
122 |
+
}
|
123 |
+
|
124 |
+
/**
|
125 |
+
* @see ArrayAccess::offsetExists($mOffset)
|
126 |
+
*
|
127 |
+
* @param int|string $mOffset
|
128 |
+
* @return boolean
|
129 |
+
*/
|
130 |
+
public function offsetExists($mOffset) {
|
131 |
+
return (bool) isset($this->_fingeprintOrder[$mOffset]);
|
132 |
+
}
|
133 |
+
|
134 |
+
/**
|
135 |
+
* @see ArrayAccess::offsetUnset($mOffset)
|
136 |
+
*
|
137 |
+
* @param int|string $mOffset
|
138 |
+
*/
|
139 |
+
public function offsetUnset($mOffset) {
|
140 |
+
unset($this->_fingeprintOrder[$mOffset]);
|
141 |
+
}
|
142 |
+
|
143 |
+
/**
|
144 |
+
* IteratorAggregate abstract function implementation
|
145 |
+
* Due to this we can iterate thru object just using the foreach
|
146 |
+
*
|
147 |
+
* @see IteratorAggregate::getIterator()
|
148 |
+
* @return ArrayIterator
|
149 |
+
*/
|
150 |
+
public function getIterator() {
|
151 |
+
return new ArrayIterator($this->_fingeprintOrder);
|
152 |
+
}
|
153 |
+
|
154 |
+
/**
|
155 |
+
* Impltemented count function from Countable interface
|
156 |
+
*
|
157 |
+
* @see Countable::count();
|
158 |
+
* @return number
|
159 |
+
*/
|
160 |
+
public function count() {
|
161 |
+
return (int) count($this->_fingeprintOrder);
|
162 |
+
}
|
163 |
+
}
|
app/code/local/Wirecard/Stdlib/Module.php
ADDED
@@ -0,0 +1,29 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Module
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Module
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_Stdlib_Module extends WirecardCEE_Stdlib_Module_ModuleAbstract implements WirecardCEE_Stdlib_Module_ModuleInterface {
|
20 |
+
/**
|
21 |
+
* Returns the client configuration details found in 'Config' directory
|
22 |
+
* (client.config.php)
|
23 |
+
*
|
24 |
+
* @return Array
|
25 |
+
*/
|
26 |
+
public static final function getClientConfig() {
|
27 |
+
return include dirname(__FILE__) . '/Config/client.config.php';
|
28 |
+
}
|
29 |
+
}
|
app/code/local/Wirecard/Stdlib/Module/ModuleAbstract.php
ADDED
@@ -0,0 +1,38 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Module_ModuleAbstract
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Module
|
17 |
+
* @version 3.2.0
|
18 |
+
* @abstract
|
19 |
+
*/
|
20 |
+
abstract class WirecardCEE_Stdlib_Module_ModuleAbstract implements WirecardCEE_Stdlib_Module_ModuleInterface {
|
21 |
+
/**
|
22 |
+
* Returns the user configuration details found in 'Config' directory
|
23 |
+
* (user.config.php)
|
24 |
+
*
|
25 |
+
* @return Array
|
26 |
+
* @abstract
|
27 |
+
*/
|
28 |
+
public static function getConfig() {}
|
29 |
+
|
30 |
+
/**
|
31 |
+
* Returns the client configuration details found in 'Config' directory
|
32 |
+
* (client.config.php)
|
33 |
+
*
|
34 |
+
* @return Array
|
35 |
+
* @abstract
|
36 |
+
*/
|
37 |
+
public static function getClientConfig() {}
|
38 |
+
}
|
app/code/local/Wirecard/Stdlib/Module/ModuleInterface.php
ADDED
@@ -0,0 +1,36 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Module_ModuleInterface
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Module
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
interface WirecardCEE_Stdlib_Module_ModuleInterface {
|
20 |
+
|
21 |
+
/**
|
22 |
+
* Returns the user configuration details found in 'Config' directory
|
23 |
+
* (user.config.php)
|
24 |
+
*
|
25 |
+
* @return Array
|
26 |
+
*/
|
27 |
+
public static function getConfig();
|
28 |
+
|
29 |
+
/**
|
30 |
+
* Returns the client configuration details found in 'Config' directory
|
31 |
+
* (cloent.config.php)
|
32 |
+
*
|
33 |
+
* @return Array
|
34 |
+
*/
|
35 |
+
public static function getClientConfig();
|
36 |
+
}
|
app/code/local/Wirecard/Stdlib/PaymentTypeAbstract.php
ADDED
@@ -0,0 +1,162 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_PaymentTypeAbstract
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @version 3.2.0
|
17 |
+
* @abstract
|
18 |
+
*/
|
19 |
+
abstract class WirecardCEE_Stdlib_PaymentTypeAbstract {
|
20 |
+
const BMC = 'BANCONTACT_MISTERCASH';
|
21 |
+
const CCARD = 'CCARD';
|
22 |
+
const CCARD_MOTO = 'CCARD-MOTO';
|
23 |
+
const EKONTO = 'EKONTO';
|
24 |
+
const EPAYBG = 'EPAY_BG';
|
25 |
+
const EPS = 'EPS';
|
26 |
+
const GIROPAY = 'GIROPAY';
|
27 |
+
const IDL = 'IDL';
|
28 |
+
const INSTALLMENT = 'INSTALLMENT';
|
29 |
+
const INVOICE = 'INVOICE';
|
30 |
+
const MAESTRO = 'MAESTRO';
|
31 |
+
const MONETA = 'MONETA';
|
32 |
+
const MPASS = 'MPASS';
|
33 |
+
const P24 = 'PRZELEWY24';
|
34 |
+
const PAYPAL = 'PAYPAL';
|
35 |
+
const PBX = 'PBX';
|
36 |
+
const POLI = 'POLI';
|
37 |
+
const PSC = 'PSC';
|
38 |
+
const QUICK = 'QUICK';
|
39 |
+
const SEPADD = 'SEPA-DD';
|
40 |
+
const ELV = 'ELV';
|
41 |
+
const SKRILLDIRECT = 'SKRILLDIRECT';
|
42 |
+
const SKRILLWALLET = 'SKRILLWALLET';
|
43 |
+
const SOFORTUEBERWEISUNG = 'SOFORTUEBERWEISUNG';
|
44 |
+
const TATRAPAY = 'TATRAPAY';
|
45 |
+
const TRUSTLY = 'TRUSTLY';
|
46 |
+
const TRUSTPAY = 'TRUSTPAY';
|
47 |
+
const VOUCHER = 'VOUCHER';
|
48 |
+
|
49 |
+
/**
|
50 |
+
* array of eps financial institutions
|
51 |
+
*
|
52 |
+
* @var string[]
|
53 |
+
*
|
54 |
+
* @todo would be nice to get this values directly from the server so the data is in sync
|
55 |
+
*/
|
56 |
+
protected static $_eps_financial_institutions = Array(
|
57 |
+
'BA-CA' => 'Bank Austria',
|
58 |
+
'Bawag|B' => 'BAWAG',
|
59 |
+
'Bawag|E' => 'easybank',
|
60 |
+
'Bawag|P' => 'PSK Bank',
|
61 |
+
'Bawag|S' => 'Sparda Bank',
|
62 |
+
'BB-Racon' => 'Bank Burgenland',
|
63 |
+
'Hypo-Racon|O' => 'Hypo Oberösterreich',
|
64 |
+
'Hypo-Racon|S' => 'Hypo Salzburg',
|
65 |
+
'Hypo-Racon|St' => 'Hypo Steiermark',
|
66 |
+
'Racon' => 'Raiffeisen Bank',
|
67 |
+
'Spardat|EBS' => 'Erste Bank und Sparkassen',
|
68 |
+
'ARZ|AAB' => 'Austrian Anadi Bank AG',
|
69 |
+
'ARZ|AB' => 'Österreichische Apothekerbank',
|
70 |
+
'ARZ|BAF' => ' Bank für Ärzte und Freie Berufe ',
|
71 |
+
'ARZ|BCS' => 'Bankhaus Carl Spängler & Co. AG',
|
72 |
+
'ARZ|BD' => 'bankdirekt.at AG',
|
73 |
+
'ARZ|BKS' => 'BKS Bank AG',
|
74 |
+
'ARZ|BSS' => 'Bankhaus Schelhammer & Schattera AG',
|
75 |
+
'ARZ|BTV' => 'BTV VIER LÄNDER BANK',
|
76 |
+
'ARZ|GB' => 'Gärtnerbank',
|
77 |
+
'ARZ|HAA' => 'Hypo Alpe-Adria-Bank International AG',
|
78 |
+
'ARZ|HI' => 'Hypo Investmentbank AG',
|
79 |
+
'ARZ|HTB' => 'Hypo Tirol Bank AG',
|
80 |
+
'ARZ|IB' => 'Immo-Bank',
|
81 |
+
'ARZ|IKB' => 'Investkredit Bank AG',
|
82 |
+
'ARZ|NLH' => 'Niederösterreichische Landes-Hypothekenbank AG',
|
83 |
+
'ARZ|OB' => 'Oberbank AG',
|
84 |
+
'ARZ|PB' => 'PRIVAT BANK AG',
|
85 |
+
'ARZ|SB' => 'Schoellerbank AG',
|
86 |
+
'ARZ|SBL' => 'Sparda-Bank Linz',
|
87 |
+
'ARZ|SBVI' => 'Sparda-Bank Villach/Innsbruck',
|
88 |
+
'ARZ|VB' => 'Die österreichischen Volksbanken',
|
89 |
+
'ARZ|VKB' => 'Volkskreditbank AG',
|
90 |
+
'ARZ|VLH' => 'Vorarlberger Landes- und Hypothekerbank AG',
|
91 |
+
'ARZ|VRB' => 'VR-Bank Braunau',
|
92 |
+
);
|
93 |
+
|
94 |
+
/**
|
95 |
+
* array of iDEAL financial institutions
|
96 |
+
*
|
97 |
+
* @var string[]
|
98 |
+
*
|
99 |
+
* @todo would be nice to get this values directly from the server so the data is in sync
|
100 |
+
*/
|
101 |
+
protected static $_idl_financial_institutions = Array(
|
102 |
+
'ABNAMROBANK' => 'ABN AMRO Bank',
|
103 |
+
'ASNBANK' => 'ASN Bank',
|
104 |
+
'FRIESLANDBANK' => 'Friesland Bank',
|
105 |
+
'INGBANK' => 'ING',
|
106 |
+
'KNAB' => 'Knab',
|
107 |
+
'RABOBANK' => 'Rabobank',
|
108 |
+
'SNSBANK' => 'SNS Bank',
|
109 |
+
'REGIOBANK' => 'Regio Bank',
|
110 |
+
'TRIODOSBANK' => 'Triodos Bank',
|
111 |
+
'VANLANSCHOT' => 'Van Lanschot Bankiers'
|
112 |
+
);
|
113 |
+
|
114 |
+
/**
|
115 |
+
* check if the given paymenttype has financial institions
|
116 |
+
*
|
117 |
+
* @param string $paymentType
|
118 |
+
* @return bool
|
119 |
+
*/
|
120 |
+
public static function hasFinancialInstitutions($paymentType) {
|
121 |
+
return (bool) ($paymentType == self::EPS || $paymentType == self::IDL);
|
122 |
+
}
|
123 |
+
|
124 |
+
/**
|
125 |
+
* the an array of financial institutions for the given paymenttype.
|
126 |
+
*
|
127 |
+
* @param string $paymentType
|
128 |
+
* @return string[]
|
129 |
+
*/
|
130 |
+
public static function getFinancialInstitutions($paymentType) {
|
131 |
+
switch($paymentType) {
|
132 |
+
case self::EPS:
|
133 |
+
return self::$_eps_financial_institutions;
|
134 |
+
break;
|
135 |
+
case self::IDL:
|
136 |
+
return self::$_idl_financial_institutions;
|
137 |
+
break;
|
138 |
+
default:
|
139 |
+
return Array();
|
140 |
+
break;
|
141 |
+
}
|
142 |
+
}
|
143 |
+
|
144 |
+
/**
|
145 |
+
* Returns full name of the financial institution
|
146 |
+
* Used in dd_wirecard_order.php (function: getPayment())
|
147 |
+
*
|
148 |
+
* @param string $sFinancialInstitutionShortCode
|
149 |
+
* @return string
|
150 |
+
*/
|
151 |
+
public static function getFinancialInstitutionFullName($sFinancialInstitutionShortCode) {
|
152 |
+
if (array_key_exists($sFinancialInstitutionShortCode, self::$_eps_financial_institutions)) {
|
153 |
+
return self::$_eps_financial_institutions[$sFinancialInstitutionShortCode];
|
154 |
+
}
|
155 |
+
|
156 |
+
if (array_key_exists($sFinancialInstitutionShortCode, self::$_idl_financial_institutions)) {
|
157 |
+
return self::$_idl_financial_institutions[$sFinancialInstitutionShortCode];
|
158 |
+
}
|
159 |
+
|
160 |
+
return "";
|
161 |
+
}
|
162 |
+
}
|
app/code/local/Wirecard/Stdlib/Response/ResponseAbstract.php
ADDED
@@ -0,0 +1,119 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Response_ResponseAbstract
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Response
|
17 |
+
* @version 3.2.0
|
18 |
+
* @abstract
|
19 |
+
*/
|
20 |
+
abstract class WirecardCEE_Stdlib_Response_ResponseAbstract {
|
21 |
+
/**
|
22 |
+
* State success
|
23 |
+
* @var int
|
24 |
+
*/
|
25 |
+
const STATE_SUCCESS = 0;
|
26 |
+
|
27 |
+
/**
|
28 |
+
* State failure
|
29 |
+
* @var int
|
30 |
+
*/
|
31 |
+
const STATE_FAILURE = 1;
|
32 |
+
|
33 |
+
/**
|
34 |
+
* Response holder
|
35 |
+
* @var array
|
36 |
+
*/
|
37 |
+
protected $_response = Array();
|
38 |
+
|
39 |
+
/**
|
40 |
+
* RedirectURL Field name
|
41 |
+
* @var string
|
42 |
+
*/
|
43 |
+
const REDIRECT_URL = 'redirectUrl';
|
44 |
+
|
45 |
+
/**
|
46 |
+
* Errors holder
|
47 |
+
* @var Array
|
48 |
+
*/
|
49 |
+
protected $_errors = Array();
|
50 |
+
|
51 |
+
/**
|
52 |
+
* Error message
|
53 |
+
* @staticvar string
|
54 |
+
* @internal
|
55 |
+
*/
|
56 |
+
protected static $ERROR_MESSAGE = 'message';
|
57 |
+
|
58 |
+
/**
|
59 |
+
* Error consumer message
|
60 |
+
* @staticvar string
|
61 |
+
* @internal
|
62 |
+
*/
|
63 |
+
protected static $ERROR_CONSUMER_MESSAGE = 'consumerMessage';
|
64 |
+
|
65 |
+
/**
|
66 |
+
* base constructor for Response objects
|
67 |
+
*
|
68 |
+
* @param Zend_Http_Response $response
|
69 |
+
*/
|
70 |
+
public function __construct($response) {
|
71 |
+
if ($response instanceof Zend_Http_Response) {
|
72 |
+
$this->_response = WirecardCEE_Stdlib_SerialApi::decode($response->getBody());
|
73 |
+
}
|
74 |
+
elseif (is_array($response)) {
|
75 |
+
$this->_response = $response;
|
76 |
+
}
|
77 |
+
else {
|
78 |
+
throw new WirecardCEE_Stdlib_Exception_InvalidResponseException(sprintf('Invalid response from WirecardCEE thrown in %s.', __METHOD__));
|
79 |
+
}
|
80 |
+
}
|
81 |
+
|
82 |
+
/**
|
83 |
+
* Cheks to see if the object request failed or not
|
84 |
+
*
|
85 |
+
* @return boolean
|
86 |
+
*/
|
87 |
+
public function hasFailed() {
|
88 |
+
return (bool) ($this->getStatus() == self::STATE_FAILURE);
|
89 |
+
}
|
90 |
+
|
91 |
+
/**
|
92 |
+
* getter for given field
|
93 |
+
*
|
94 |
+
* @param string $name
|
95 |
+
* @return string|array|null
|
96 |
+
*/
|
97 |
+
protected function _getField($name) {
|
98 |
+
return isset($this->_response[$name]) ? $this->_response[$name] : null;
|
99 |
+
}
|
100 |
+
|
101 |
+
|
102 |
+
/**
|
103 |
+
* getter for the returned redirect url
|
104 |
+
*
|
105 |
+
* @return string
|
106 |
+
*/
|
107 |
+
public function getRedirectUrl() {
|
108 |
+
return (string) $this->_getField(self::REDIRECT_URL);
|
109 |
+
}
|
110 |
+
|
111 |
+
/**
|
112 |
+
* getter for the response data
|
113 |
+
*
|
114 |
+
* @return array
|
115 |
+
*/
|
116 |
+
public function getResponse() {
|
117 |
+
return $this->_response;
|
118 |
+
}
|
119 |
+
}
|
app/code/local/Wirecard/Stdlib/Return/Cancel.php
ADDED
@@ -0,0 +1,26 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Return_Cancel
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Return
|
17 |
+
* @version 3.2.0
|
18 |
+
* @abstract
|
19 |
+
*/
|
20 |
+
abstract class WirecardCEE_Stdlib_Return_Cancel extends WirecardCEE_Stdlib_Return_ReturnAbstract {
|
21 |
+
/**
|
22 |
+
* State
|
23 |
+
* @var string
|
24 |
+
*/
|
25 |
+
protected $_state = 'CANCEL';
|
26 |
+
}
|
app/code/local/Wirecard/Stdlib/Return/Failure.php
ADDED
@@ -0,0 +1,73 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Return_Failure
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Return
|
17 |
+
* @version 3.2.0
|
18 |
+
* @abstract
|
19 |
+
*/
|
20 |
+
abstract class WirecardCEE_Stdlib_Return_Failure extends WirecardCEE_Stdlib_Return_ReturnAbstract {
|
21 |
+
/**
|
22 |
+
*
|
23 |
+
* @var Array
|
24 |
+
*/
|
25 |
+
protected $_errors = Array();
|
26 |
+
|
27 |
+
/**
|
28 |
+
*
|
29 |
+
* @var string
|
30 |
+
*/
|
31 |
+
protected $_state = 'FAILURE';
|
32 |
+
|
33 |
+
/**
|
34 |
+
*
|
35 |
+
* @var string
|
36 |
+
*/
|
37 |
+
protected static $ERRORS = 'errors';
|
38 |
+
|
39 |
+
/**
|
40 |
+
*
|
41 |
+
* @var string
|
42 |
+
*/
|
43 |
+
protected static $ERROR = 'error';
|
44 |
+
|
45 |
+
/**
|
46 |
+
*
|
47 |
+
* @var string
|
48 |
+
*/
|
49 |
+
protected static $ERROR_ERROR_CODE = 'errorCode';
|
50 |
+
|
51 |
+
/**
|
52 |
+
*
|
53 |
+
* @var string
|
54 |
+
*/
|
55 |
+
protected static $ERROR_MESSAGE = 'message';
|
56 |
+
|
57 |
+
/**
|
58 |
+
*
|
59 |
+
* @var string
|
60 |
+
*/
|
61 |
+
protected static $ERROR_CONSUMER_MESSAGE = 'consumerMessage';
|
62 |
+
|
63 |
+
/**
|
64 |
+
*
|
65 |
+
* @var string
|
66 |
+
*/
|
67 |
+
protected static $ERROR_PAY_SYS_MESSAGE = 'paySysMessage';
|
68 |
+
|
69 |
+
/**
|
70 |
+
* return Array
|
71 |
+
*/
|
72 |
+
abstract public function getErrors();
|
73 |
+
}
|
app/code/local/Wirecard/Stdlib/Return/Pending.php
ADDED
@@ -0,0 +1,71 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_Stdlib_Return_Pending
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_Stdlib
|
15 |
+
* @subpackage Return
|
16 |
+
* @version 3.2.0
|
17 |
+
* @abstract
|
18 |
+
*/
|
19 |
+
abstract class WirecardCEE_Stdlib_Return_Pending extends WirecardCEE_Stdlib_Return_ReturnAbstract {
|
20 |
+
|
21 |
+
/**
|
22 |
+
* Secret
|
23 |
+
* @var string
|
24 |
+
* @internal
|
25 |
+
*/
|
26 |
+
protected static $SECRET = 'secret';
|
27 |
+
/**
|
28 |
+
* State: Pending
|
29 |
+
* @var string
|
30 |
+
* @internal
|
31 |
+
*/
|
32 |
+
protected $_state = 'PENDING';
|
33 |
+
|
34 |
+
/**
|
35 |
+
* Fingerprintorder field
|
36 |
+
* @var string
|
37 |
+
* @internal
|
38 |
+
*/
|
39 |
+
protected static $FINGERPRINT_ORDER_FIELD = 'fingerprintOrderField';
|
40 |
+
|
41 |
+
/**
|
42 |
+
* Constructor for PENDING state - we need the fingeprint validator so we add it after the
|
43 |
+
* parent::__construct($returnData)
|
44 |
+
*
|
45 |
+
* @param array $returnData
|
46 |
+
*/
|
47 |
+
public function __construct($returnData, $secret, $hashAlgo = WirecardCEE_Stdlib_Fingerprint::HASH_ALGORITHM_HMAC_SHA512) {
|
48 |
+
//@see WirecardCEE_Stdlib_Return_ReturnAbstract::__construct($returnData)
|
49 |
+
parent::__construct($returnData);
|
50 |
+
|
51 |
+
$oFingerprintValidator = new WirecardCEE_Stdlib_Validate_Fingerprint(Array(
|
52 |
+
self::$SECRET => $secret,
|
53 |
+
self::$FINGERPRINT_ORDER_FIELD => 'responseFingerprintOrder',
|
54 |
+
));
|
55 |
+
|
56 |
+
$oFingerprintValidator->setHashAlgorithm($hashAlgo);
|
57 |
+
$oFingerprintValidator->setOrderType(WirecardCEE_Stdlib_Validate_Fingerprint::TYPE_DYNAMIC);
|
58 |
+
|
59 |
+
$this->addValidator($oFingerprintValidator, 'responseFingerprint');
|
60 |
+
}
|
61 |
+
|
62 |
+
/**
|
63 |
+
* getter for the return parameter orderNumber
|
64 |
+
*
|
65 |
+
* @return string
|
66 |
+
*/
|
67 |
+
public function getOrderNumber() {
|
68 |
+
return $this->orderNumber;
|
69 |
+
}
|
70 |
+
|
71 |
+
}
|
app/code/local/Wirecard/Stdlib/Return/ReturnAbstract.php
ADDED
@@ -0,0 +1,129 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Return_ReturnAbstract
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Return
|
17 |
+
* @version 3.2.0
|
18 |
+
* @abstract
|
19 |
+
*/
|
20 |
+
abstract class WirecardCEE_Stdlib_Return_ReturnAbstract {
|
21 |
+
/**
|
22 |
+
* Return data holder
|
23 |
+
* @var Array
|
24 |
+
* @internal
|
25 |
+
*/
|
26 |
+
protected $_returnData = Array();
|
27 |
+
|
28 |
+
/**
|
29 |
+
* Validators holder
|
30 |
+
* @var Zend_Validate_Abstract[]
|
31 |
+
* @internal
|
32 |
+
*/
|
33 |
+
protected $_validators = Array();
|
34 |
+
|
35 |
+
/**
|
36 |
+
* State
|
37 |
+
* @var string
|
38 |
+
* @internal
|
39 |
+
*/
|
40 |
+
protected $_state = '';
|
41 |
+
|
42 |
+
/**
|
43 |
+
* Contructor
|
44 |
+
*
|
45 |
+
* @param Array $returnData
|
46 |
+
*/
|
47 |
+
public function __construct($returnData) {
|
48 |
+
$this->_returnData = $returnData;
|
49 |
+
}
|
50 |
+
|
51 |
+
/**
|
52 |
+
* Validate function
|
53 |
+
*
|
54 |
+
* @return boolean
|
55 |
+
*/
|
56 |
+
public function validate() {
|
57 |
+
// If there are no validators in the array then the validation is "successfull"
|
58 |
+
if(!count($this->_validators)) {
|
59 |
+
return true;
|
60 |
+
}
|
61 |
+
|
62 |
+
$_bValid = true;
|
63 |
+
|
64 |
+
// Iterate thru all the validators and validate every one of them
|
65 |
+
foreach($this->_validators as $param => $aValidator) {
|
66 |
+
foreach($aValidator as $oValidator) {
|
67 |
+
$param = (string) $param;
|
68 |
+
|
69 |
+
if(!isset($this->_returnData[$param])) {
|
70 |
+
throw new Exception(sprintf("No key '{$param}' found in \$this->_returnData array. Thrown in %s on line %s.", __METHOD__, __LINE__));
|
71 |
+
}
|
72 |
+
|
73 |
+
$bValidatorResult = $oValidator->isValid($this->_returnData[$param], $this->_returnData);
|
74 |
+
|
75 |
+
$_bValid = $_bValid && $bValidatorResult;
|
76 |
+
}
|
77 |
+
}
|
78 |
+
|
79 |
+
return (bool) $_bValid;
|
80 |
+
}
|
81 |
+
|
82 |
+
/**
|
83 |
+
* Adds the validator
|
84 |
+
*
|
85 |
+
* @param Zend_Validate_Abstract $oValidator
|
86 |
+
* @param string $param
|
87 |
+
* @return WirecardCEE_Stdlib_Return_ReturnAbstract
|
88 |
+
*/
|
89 |
+
public function addValidator(Zend_Validate_Abstract $oValidator, $param) {
|
90 |
+
$this->_validators[(string) $param][] = $oValidator;
|
91 |
+
return $this;
|
92 |
+
}
|
93 |
+
|
94 |
+
/**
|
95 |
+
* getter for paymentState
|
96 |
+
*
|
97 |
+
* @return string
|
98 |
+
*/
|
99 |
+
public function getPaymentState() {
|
100 |
+
return (string) $this->_state;
|
101 |
+
}
|
102 |
+
|
103 |
+
/**
|
104 |
+
* magic getter method
|
105 |
+
*
|
106 |
+
* @param string $name
|
107 |
+
* @return string
|
108 |
+
*/
|
109 |
+
public function __get($name) {
|
110 |
+
$name = (string) $name;
|
111 |
+
return (string) array_key_exists($name, $this->_returnData) ? $this->_returnData[$name] : '';
|
112 |
+
}
|
113 |
+
|
114 |
+
/**
|
115 |
+
* getter for filtered return data.
|
116 |
+
*
|
117 |
+
* @return string[]
|
118 |
+
*/
|
119 |
+
public function getReturned() {
|
120 |
+
// noone needs the responseFingerprintOrder and responseFingerprint in
|
121 |
+
// the shop.
|
122 |
+
if (array_key_exists('responseFingerprintOrder', $this->_returnData) && array_key_exists('responseFingerprint', $this->_returnData)) {
|
123 |
+
unset($this->_returnData['responseFingerprintOrder']);
|
124 |
+
unset($this->_returnData['responseFingerprint']);
|
125 |
+
}
|
126 |
+
|
127 |
+
return $this->_returnData;
|
128 |
+
}
|
129 |
+
}
|
app/code/local/Wirecard/Stdlib/Return/Success.php
ADDED
@@ -0,0 +1,158 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Return_Success
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Return
|
17 |
+
* @version 3.2.0
|
18 |
+
* @abstract
|
19 |
+
*/
|
20 |
+
abstract class WirecardCEE_Stdlib_Return_Success extends WirecardCEE_Stdlib_Return_ReturnAbstract {
|
21 |
+
/**
|
22 |
+
*
|
23 |
+
* @var string
|
24 |
+
*/
|
25 |
+
protected $_secret;
|
26 |
+
|
27 |
+
/**
|
28 |
+
*
|
29 |
+
* @var string
|
30 |
+
*/
|
31 |
+
protected $_state = 'SUCCESS';
|
32 |
+
|
33 |
+
/**
|
34 |
+
*
|
35 |
+
* @staticvar string
|
36 |
+
* @internal
|
37 |
+
*/
|
38 |
+
protected static $SECRET = 'secret';
|
39 |
+
|
40 |
+
|
41 |
+
/**
|
42 |
+
* Fingerprintorder field
|
43 |
+
* @var string
|
44 |
+
* @internal
|
45 |
+
*/
|
46 |
+
protected static $FINGERPRINT_ORDER_FIELD = 'fingerprintOrderField';
|
47 |
+
|
48 |
+
/**
|
49 |
+
* creates an instance of an WirecardCEE_Stdlib_Return_Success object
|
50 |
+
*
|
51 |
+
* @param Array $returnData
|
52 |
+
* @param string $secret
|
53 |
+
*/
|
54 |
+
public function __construct(Array $returnData, $secret, $hashAlgo = WirecardCEE_Stdlib_Fingerprint::HASH_ALGORITHM_HMAC_SHA512) {
|
55 |
+
$this->_secret = (string) $secret;
|
56 |
+
parent::__construct($returnData);
|
57 |
+
|
58 |
+
$oFingerprintValidator = new WirecardCEE_Stdlib_Validate_Fingerprint(Array(
|
59 |
+
self::$SECRET => $secret,
|
60 |
+
self::$FINGERPRINT_ORDER_FIELD => 'responseFingerprintOrder',
|
61 |
+
));
|
62 |
+
|
63 |
+
$oFingerprintValidator->setHashAlgorithm($hashAlgo);
|
64 |
+
$oFingerprintValidator->setOrderType(WirecardCEE_Stdlib_Validate_Fingerprint::TYPE_DYNAMIC);
|
65 |
+
|
66 |
+
$this->addValidator($oFingerprintValidator, 'responseFingerprint');
|
67 |
+
}
|
68 |
+
|
69 |
+
/**
|
70 |
+
* getter for the return parameter amount
|
71 |
+
*
|
72 |
+
* @return string
|
73 |
+
*/
|
74 |
+
public function getAmount() {
|
75 |
+
return $this->amount;
|
76 |
+
}
|
77 |
+
|
78 |
+
/**
|
79 |
+
* getter for the return parameter currency
|
80 |
+
*
|
81 |
+
* @return string
|
82 |
+
*/
|
83 |
+
public function getCurrency() {
|
84 |
+
return (string) $this->currency;
|
85 |
+
}
|
86 |
+
|
87 |
+
/**
|
88 |
+
* getter for the return parameter paymentType
|
89 |
+
*
|
90 |
+
* @return string
|
91 |
+
*/
|
92 |
+
public function getPaymentType() {
|
93 |
+
return (string) $this->paymentType;
|
94 |
+
}
|
95 |
+
|
96 |
+
/**
|
97 |
+
* getter for the return parameter financialInstitution
|
98 |
+
*
|
99 |
+
* @return string
|
100 |
+
*/
|
101 |
+
public function getFinancialInstitution() {
|
102 |
+
return (string) $this->financialInstitution;
|
103 |
+
}
|
104 |
+
|
105 |
+
/**
|
106 |
+
* getter for the return parameter Language
|
107 |
+
*
|
108 |
+
* @return string
|
109 |
+
*/
|
110 |
+
public function getLanguage() {
|
111 |
+
return (string) $this->language;
|
112 |
+
}
|
113 |
+
|
114 |
+
/**
|
115 |
+
* getter for the return parameter orderNumber
|
116 |
+
*
|
117 |
+
* @return string
|
118 |
+
*/
|
119 |
+
public function getOrderNumber() {
|
120 |
+
return $this->orderNumber;
|
121 |
+
}
|
122 |
+
|
123 |
+
/**
|
124 |
+
* getter for the return parameter gatewayReferenceNumber
|
125 |
+
*
|
126 |
+
* @return string
|
127 |
+
*/
|
128 |
+
public function getGatewayReferenceNumber() {
|
129 |
+
return $this->gatewayReferenceNumber;
|
130 |
+
}
|
131 |
+
|
132 |
+
/**
|
133 |
+
* getter for the return parameter gatewayContractNumber
|
134 |
+
*
|
135 |
+
* @return string
|
136 |
+
*/
|
137 |
+
public function getGatewayContractNumber() {
|
138 |
+
return $this->gatewayContractNumber;
|
139 |
+
}
|
140 |
+
|
141 |
+
/**
|
142 |
+
* getter for the return parameter avsResponseCode
|
143 |
+
*
|
144 |
+
* @return string
|
145 |
+
*/
|
146 |
+
public function getAvsResponseCode() {
|
147 |
+
return $this->avsResponseCode;
|
148 |
+
}
|
149 |
+
|
150 |
+
/**
|
151 |
+
* getter for the return parameter avsResponseMessage
|
152 |
+
*
|
153 |
+
* @return string
|
154 |
+
*/
|
155 |
+
public function getAvsResponseMessage() {
|
156 |
+
return (string) $this->avsResponseMessage;
|
157 |
+
}
|
158 |
+
}
|
app/code/local/Wirecard/Stdlib/Return/Success/CreditCard.php
ADDED
@@ -0,0 +1,66 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Return_Success_CreditCard
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Return_Success
|
17 |
+
* @version 3.2.0
|
18 |
+
* @abstract
|
19 |
+
*/
|
20 |
+
abstract class WirecardCEE_Stdlib_Return_Success_CreditCard extends WirecardCEE_Stdlib_Return_Success {
|
21 |
+
|
22 |
+
/**
|
23 |
+
* getter for the return parameter anonymousPan
|
24 |
+
*
|
25 |
+
* @return string
|
26 |
+
*/
|
27 |
+
public function getAnonymousPan() {
|
28 |
+
return (string) $this->anonymousPan;
|
29 |
+
}
|
30 |
+
|
31 |
+
/**
|
32 |
+
* getter for the return parameter authenticated
|
33 |
+
*
|
34 |
+
* @return string
|
35 |
+
*/
|
36 |
+
public function getAuthenticated() {
|
37 |
+
return (string) $this->authenticated;
|
38 |
+
}
|
39 |
+
|
40 |
+
/**
|
41 |
+
* getter for the return parameter expiry
|
42 |
+
*
|
43 |
+
* @return string
|
44 |
+
*/
|
45 |
+
public function getExpiry() {
|
46 |
+
return (string) $this->expiry;
|
47 |
+
}
|
48 |
+
|
49 |
+
/**
|
50 |
+
* getter for the return parameter cardholder
|
51 |
+
*
|
52 |
+
* @return string
|
53 |
+
*/
|
54 |
+
public function getCardholder() {
|
55 |
+
return (string) $this->cardholder;
|
56 |
+
}
|
57 |
+
|
58 |
+
/**
|
59 |
+
* getter for the return parameter maskedPan
|
60 |
+
*
|
61 |
+
* @return string
|
62 |
+
*/
|
63 |
+
public function getMaskedPan() {
|
64 |
+
return (string) $this->maskedPan;
|
65 |
+
}
|
66 |
+
}
|
app/code/local/Wirecard/Stdlib/Return/Success/Ideal.php
ADDED
@@ -0,0 +1,47 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Return_Success_Ideal
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Return_Success
|
17 |
+
* @version 3.2.0
|
18 |
+
* @abstract
|
19 |
+
*/
|
20 |
+
abstract class WirecardCEE_Stdlib_Return_Success_Ideal extends WirecardCEE_Stdlib_Return_Success {
|
21 |
+
/**
|
22 |
+
* getter for the return parameter idealConsumerName
|
23 |
+
*
|
24 |
+
* @return string
|
25 |
+
*/
|
26 |
+
public function getConsumerName() {
|
27 |
+
return (string) $this->idealConsumerName;
|
28 |
+
}
|
29 |
+
|
30 |
+
/**
|
31 |
+
* getter for the return parameter idealConsumerCity
|
32 |
+
*
|
33 |
+
* @return string
|
34 |
+
*/
|
35 |
+
public function getConsumerCity() {
|
36 |
+
return (string) $this->idealConsumerCity;
|
37 |
+
}
|
38 |
+
|
39 |
+
/**
|
40 |
+
* getter for the return parameter idealConsunerAccountNumber
|
41 |
+
*
|
42 |
+
* @return string
|
43 |
+
*/
|
44 |
+
public function getConsumerAccountNumber() {
|
45 |
+
return (string) $this->idealConsumerAccountNumber;
|
46 |
+
}
|
47 |
+
}
|
app/code/local/Wirecard/Stdlib/Return/Success/PayPal.php
ADDED
@@ -0,0 +1,120 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Return_Success_PayPal
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Return_Success
|
17 |
+
* @version 3.2.0
|
18 |
+
* @abstract
|
19 |
+
*/
|
20 |
+
abstract class WirecardCEE_Stdlib_Return_Success_PayPal extends WirecardCEE_Stdlib_Return_Success {
|
21 |
+
|
22 |
+
/**
|
23 |
+
* getter for the return parameter paypalPayerID
|
24 |
+
*
|
25 |
+
* @return string
|
26 |
+
*/
|
27 |
+
public function getPayerId() {
|
28 |
+
return $this->paypalPayerID;
|
29 |
+
}
|
30 |
+
|
31 |
+
/**
|
32 |
+
* getter for the return parameter paypalPayerEmail
|
33 |
+
*
|
34 |
+
* @return string
|
35 |
+
*/
|
36 |
+
public function getPayerEmail() {
|
37 |
+
return $this->paypalPayerEmail;
|
38 |
+
}
|
39 |
+
|
40 |
+
/**
|
41 |
+
* getter for the return parameter paypalPayerLastName
|
42 |
+
*
|
43 |
+
* @return string
|
44 |
+
*/
|
45 |
+
public function getPayerLastName() {
|
46 |
+
return $this->paypalPayerLastName;
|
47 |
+
}
|
48 |
+
|
49 |
+
/**
|
50 |
+
* getter for the return parameter paypalPayerFirstName
|
51 |
+
*
|
52 |
+
* @return string
|
53 |
+
*/
|
54 |
+
public function getPayerFirstName() {
|
55 |
+
return $this->paypalPayerFirstName;
|
56 |
+
}
|
57 |
+
|
58 |
+
/**
|
59 |
+
* getter for the return parameter paypalPayerAddressName
|
60 |
+
*
|
61 |
+
* @return string
|
62 |
+
*/
|
63 |
+
public function getPayerAddressName() {
|
64 |
+
return $this->paypalPayerAddressName;
|
65 |
+
}
|
66 |
+
|
67 |
+
/**
|
68 |
+
* getter for the return parameter paypalPayerAddressCountry
|
69 |
+
*
|
70 |
+
* @return string
|
71 |
+
*/
|
72 |
+
public function getPayerAddressCountry() {
|
73 |
+
return $this->paypalPayerAddressCountry;
|
74 |
+
}
|
75 |
+
|
76 |
+
/**
|
77 |
+
* getter for the return parameter paypalPayerAddressCity
|
78 |
+
*
|
79 |
+
* @return string
|
80 |
+
*/
|
81 |
+
public function getPayerAddressCity() {
|
82 |
+
return $this->paypalPayerAddressCity;
|
83 |
+
}
|
84 |
+
|
85 |
+
/**
|
86 |
+
* getter for the return parameter paypalPayerAddressState
|
87 |
+
*
|
88 |
+
* @return string
|
89 |
+
*/
|
90 |
+
public function getPayerAddressState() {
|
91 |
+
return $this->paypalPayerAddressState;
|
92 |
+
}
|
93 |
+
|
94 |
+
/**
|
95 |
+
* getter for the return parameter paypalPayerAddressStreet1
|
96 |
+
*
|
97 |
+
* @return string
|
98 |
+
*/
|
99 |
+
public function getPayerAddressStreet1() {
|
100 |
+
return $this->paypalPayerAddressStreet1;
|
101 |
+
}
|
102 |
+
|
103 |
+
/**
|
104 |
+
* getter for the return parameter paypalPayerAddressStreet2
|
105 |
+
*
|
106 |
+
* @return string
|
107 |
+
*/
|
108 |
+
public function getPayerAddressStreet2() {
|
109 |
+
return $this->paypalPayerAddressStreet2;
|
110 |
+
}
|
111 |
+
|
112 |
+
/**
|
113 |
+
* getter for the return parameter paypalPayerAddressZIP
|
114 |
+
*
|
115 |
+
* @return string
|
116 |
+
*/
|
117 |
+
public function getPayerAddressZip() {
|
118 |
+
return $this->paypalPayerAddressZIP;
|
119 |
+
}
|
120 |
+
}
|
app/code/local/Wirecard/Stdlib/Return/Success/SepaDD.php
ADDED
@@ -0,0 +1,56 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
/**
|
12 |
+
* @name WirecardCEE_Stdlib_Return_Success_SepaDD
|
13 |
+
* @category WirecardCEE
|
14 |
+
* @package WirecardCEE_QMore
|
15 |
+
* @subpackage Return_Success
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
abstract class WirecardCEE_Stdlib_Return_Success_SepaDD extends WirecardCEE_Stdlib_Return_Success {
|
19 |
+
|
20 |
+
/**
|
21 |
+
* getter for the return parameter creditorId
|
22 |
+
*
|
23 |
+
* @return string
|
24 |
+
*/
|
25 |
+
public function getCreditorId() {
|
26 |
+
return $this->creditorId;
|
27 |
+
}
|
28 |
+
|
29 |
+
/**
|
30 |
+
* getter for the return parameter dueDate
|
31 |
+
*
|
32 |
+
* @return string
|
33 |
+
*/
|
34 |
+
public function getDueDate() {
|
35 |
+
return $this->dueDate;
|
36 |
+
}
|
37 |
+
|
38 |
+
/**
|
39 |
+
* getter for the return parameter mandateId
|
40 |
+
*
|
41 |
+
* @return string
|
42 |
+
*/
|
43 |
+
public function getMandateId() {
|
44 |
+
return $this->mandateId;
|
45 |
+
}
|
46 |
+
|
47 |
+
/**
|
48 |
+
* getter for the return parameter mandateSignatureDate
|
49 |
+
*
|
50 |
+
* @return string
|
51 |
+
*/
|
52 |
+
public function getMandateSignatureDate() {
|
53 |
+
return $this->mandateSignatureDate;
|
54 |
+
}
|
55 |
+
|
56 |
+
}
|
app/code/local/Wirecard/Stdlib/Return/Success/Sofortueberweisung.php
ADDED
@@ -0,0 +1,93 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Return_Success_Sofortueberweisung
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Return_Success
|
17 |
+
* @version 3.2.0
|
18 |
+
* @abstract
|
19 |
+
*/
|
20 |
+
abstract class WirecardCEE_Stdlib_Return_Success_Sofortueberweisung extends WirecardCEE_Stdlib_Return_Success {
|
21 |
+
|
22 |
+
/**
|
23 |
+
* getter for the return parameter senderAccountOwner
|
24 |
+
*
|
25 |
+
* @return string
|
26 |
+
*/
|
27 |
+
public function getSenderAccountOwner() {
|
28 |
+
return $this->senderAccountOwner;
|
29 |
+
}
|
30 |
+
|
31 |
+
/**
|
32 |
+
* getter for the return parameter senderAccountNumber
|
33 |
+
*
|
34 |
+
* @return string
|
35 |
+
*/
|
36 |
+
public function getSenderAccountNumber() {
|
37 |
+
return $this->senderAccountNumber;
|
38 |
+
}
|
39 |
+
|
40 |
+
/**
|
41 |
+
* getter for the return parameter senderBankNumber
|
42 |
+
*
|
43 |
+
* @return string
|
44 |
+
*/
|
45 |
+
public function getSenderBankNumber() {
|
46 |
+
return $this->senderBankNumber;
|
47 |
+
}
|
48 |
+
|
49 |
+
/**
|
50 |
+
* getter for the return parameter senderBankName
|
51 |
+
*
|
52 |
+
* @return string
|
53 |
+
*/
|
54 |
+
public function getSenderBankName() {
|
55 |
+
return $this->senderBankName;
|
56 |
+
}
|
57 |
+
|
58 |
+
/**
|
59 |
+
* getter for the return parameter senderBIC
|
60 |
+
*
|
61 |
+
* @return string
|
62 |
+
*/
|
63 |
+
public function getSenderBic() {
|
64 |
+
return $this->senderBIC;
|
65 |
+
}
|
66 |
+
|
67 |
+
/**
|
68 |
+
* getter for the return parameter senderIBAN
|
69 |
+
*
|
70 |
+
* @return string
|
71 |
+
*/
|
72 |
+
public function getSenderIban() {
|
73 |
+
return $this->senderIBAN;
|
74 |
+
}
|
75 |
+
|
76 |
+
/**
|
77 |
+
* getter for the return parameter senderCountry
|
78 |
+
*
|
79 |
+
* @return string
|
80 |
+
*/
|
81 |
+
public function getSenderCountry() {
|
82 |
+
return $this->senderCountry;
|
83 |
+
}
|
84 |
+
|
85 |
+
/**
|
86 |
+
* getter for the return parameter securityCriteria
|
87 |
+
*
|
88 |
+
* @return string
|
89 |
+
*/
|
90 |
+
public function getSecurityCriteria() {
|
91 |
+
return $this->securityCriteria;
|
92 |
+
}
|
93 |
+
}
|
app/code/local/Wirecard/Stdlib/ReturnFactoryAbstract.php
ADDED
@@ -0,0 +1,67 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig. Software & Service Copyright (C) by Wirecard Central Eastern
|
6 |
+
* Europe GmbH, FB-Nr: FN 195599 x, http://www.wirecard.at
|
7 |
+
*/
|
8 |
+
/**
|
9 |
+
* Factory method for returned params validators
|
10 |
+
*
|
11 |
+
* @name WirecardCEE_Stdlib_ReturnFactoryAbstract
|
12 |
+
* @category WirecardCEE
|
13 |
+
* @package WirecardCEE_Stdlib
|
14 |
+
* @subpackage Return
|
15 |
+
* @version 3.2.0
|
16 |
+
* @abstract
|
17 |
+
*/
|
18 |
+
abstract class WirecardCEE_Stdlib_ReturnFactoryAbstract {
|
19 |
+
/**
|
20 |
+
* Success
|
21 |
+
* @var string
|
22 |
+
*/
|
23 |
+
const STATE_SUCCESS = 'SUCCESS';
|
24 |
+
|
25 |
+
/**
|
26 |
+
* Cancel
|
27 |
+
* @var string
|
28 |
+
*/
|
29 |
+
const STATE_CANCEL = 'CANCEL';
|
30 |
+
|
31 |
+
/**
|
32 |
+
* Failure
|
33 |
+
* @var string
|
34 |
+
*/
|
35 |
+
const STATE_FAILURE = 'FAILURE';
|
36 |
+
|
37 |
+
/**
|
38 |
+
* Pending
|
39 |
+
* @var string
|
40 |
+
*/
|
41 |
+
const STATE_PENDING = 'PENDING';
|
42 |
+
|
43 |
+
|
44 |
+
/**
|
45 |
+
* generator for qpay confirm response strings.
|
46 |
+
* the response-string must be returned to QPAY in confirmation process.
|
47 |
+
*
|
48 |
+
* @param string $messages
|
49 |
+
* @param bool $inCommentTag
|
50 |
+
* @return string
|
51 |
+
*/
|
52 |
+
public static function generateConfirmResponseString($messages = null, $inCommentTag = false) {
|
53 |
+
$template = '<QPAY-CONFIRMATION-RESPONSE result="%status%" %message%/>';
|
54 |
+
if (empty($messages)) {
|
55 |
+
$returnValue = str_replace('%status%', 'OK', $template);
|
56 |
+
$returnValue = str_replace('%message% ', '', $returnValue);
|
57 |
+
}
|
58 |
+
else {
|
59 |
+
$returnValue = str_replace('%status%', 'NOK', $template);
|
60 |
+
$returnValue = str_replace('%message%', 'message="' . strval($messages) . '"', $returnValue);
|
61 |
+
}
|
62 |
+
if ($inCommentTag) {
|
63 |
+
$returnValue = '<!--' . $returnValue . '-->';
|
64 |
+
}
|
65 |
+
return $returnValue;
|
66 |
+
}
|
67 |
+
}
|
app/code/local/Wirecard/Stdlib/SerialApi.php
ADDED
@@ -0,0 +1,206 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_SerialApi
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @version 3.2.0
|
17 |
+
*/
|
18 |
+
class WirecardCEE_Stdlib_SerialApi {
|
19 |
+
/**
|
20 |
+
* Encode the mixed[] $valueToEncode into the SerialAPI format
|
21 |
+
*
|
22 |
+
* NOTE: only Strings can be handled. So for every object the __toString
|
23 |
+
* will be called.
|
24 |
+
*
|
25 |
+
* @throws WirecardCEE_Stdlib_Exception_InvalidTypeException if valueToEncode is not an array.
|
26 |
+
* @param mixed[] $aValueToEncode
|
27 |
+
* @return string SerialAPI encoded Array
|
28 |
+
*/
|
29 |
+
public static function encode($aValueToEncode) {
|
30 |
+
if (is_array($aValueToEncode)) {
|
31 |
+
$serializedString = '';
|
32 |
+
foreach($aValueToEncode as $key => $value) {
|
33 |
+
$serializedString = self::_addEntryEncode($key, $value, $serializedString);
|
34 |
+
}
|
35 |
+
return $serializedString;
|
36 |
+
}
|
37 |
+
else {
|
38 |
+
throw new WirecardCEE_Stdlib_Exception_InvalidTypeException(sprintf('Invalid type for %s. Array must be given.', __METHOD__));
|
39 |
+
}
|
40 |
+
}
|
41 |
+
|
42 |
+
/**
|
43 |
+
* Adds an key/value pair to the serializedString
|
44 |
+
*
|
45 |
+
* @param string key representing the entry
|
46 |
+
* @param mixed|mixed[] value for key entry
|
47 |
+
* @param string serialized String
|
48 |
+
*/
|
49 |
+
protected static function _addEntryEncode($key, $value, $serializedString = '') {
|
50 |
+
if (is_array($value)) {
|
51 |
+
$entryValue = Array();
|
52 |
+
$entryKey = '';
|
53 |
+
$nextEntryKey = '';
|
54 |
+
$nextEntryValue = '';
|
55 |
+
foreach($value as $subKey => $subValue) {
|
56 |
+
if (is_int($subKey)) {
|
57 |
+
$subKey++;
|
58 |
+
if (!is_array($subValue)) {
|
59 |
+
if ($entryKey == '') {
|
60 |
+
|
61 |
+
if (is_numeric(substr(strrchr($key, '.'), 1))) {
|
62 |
+
$entryKey = $key . '.' . $subKey;
|
63 |
+
}
|
64 |
+
else {
|
65 |
+
$entryKey = $key;
|
66 |
+
}
|
67 |
+
}
|
68 |
+
$entryValue[] = $subValue;
|
69 |
+
// next loop
|
70 |
+
continue;
|
71 |
+
}
|
72 |
+
else {
|
73 |
+
if (!empty($entryValue)) {
|
74 |
+
$serializedString = self::_addLastEntryArrayEncode($entryKey, $entryValue, $serializedString);
|
75 |
+
$entryValue = '';
|
76 |
+
$entryKey = '';
|
77 |
+
}
|
78 |
+
}
|
79 |
+
}
|
80 |
+
if (empty($entryValue)) {
|
81 |
+
$serializedString = self::_addEntryEncode($key . '.' . $subKey, $subValue, $serializedString);
|
82 |
+
}
|
83 |
+
else {
|
84 |
+
$nextEntryKey = $key . '.' . $subKey;
|
85 |
+
$nextEntryValue = $subValue;
|
86 |
+
}
|
87 |
+
}
|
88 |
+
if (!empty($entryValue)) {
|
89 |
+
$serializedString = self::_addLastEntryArrayEncode($entryKey, $entryValue, $serializedString);
|
90 |
+
$entryValue = '';
|
91 |
+
$entryKey = '';
|
92 |
+
if ($nextEntryKey != '' && $nextEntryValue != '') {
|
93 |
+
$serializedString = self::_addEntryEncode($nextEntryKey, $nextEntryValue, $serializedString);
|
94 |
+
$nextEntryKey = '';
|
95 |
+
$nextEntryValue = '';
|
96 |
+
}
|
97 |
+
}
|
98 |
+
}
|
99 |
+
else {
|
100 |
+
if ($serializedString != '') {
|
101 |
+
$serializedString .= '&';
|
102 |
+
}
|
103 |
+
if (is_int($key)) {
|
104 |
+
$key++;
|
105 |
+
}
|
106 |
+
$serializedString .= urlencode((string) $key) . '=' . urlencode((string) $value);
|
107 |
+
}
|
108 |
+
return $serializedString;
|
109 |
+
}
|
110 |
+
|
111 |
+
/**
|
112 |
+
*
|
113 |
+
* @param string $sKey
|
114 |
+
* @param array $aValues
|
115 |
+
* @param string $serializedString
|
116 |
+
* @return string
|
117 |
+
*/
|
118 |
+
protected static function _addLastEntryArrayEncode($sKey, Array $aValues, $serializedString) {
|
119 |
+
$valueString = '';
|
120 |
+
foreach($aValues as $value) {
|
121 |
+
if ($valueString == '') {
|
122 |
+
$valueString = urlencode((string) $value);
|
123 |
+
}
|
124 |
+
else {
|
125 |
+
$valueString .= ',' . urlencode((string) $value);
|
126 |
+
}
|
127 |
+
}
|
128 |
+
if ($serializedString == '') {
|
129 |
+
$serializedString = urlencode((string) $sKey) . '=' . $valueString;
|
130 |
+
}
|
131 |
+
else {
|
132 |
+
$serializedString .= '&' . urlencode((string) $sKey) . '=' . $valueString;
|
133 |
+
}
|
134 |
+
return $serializedString;
|
135 |
+
}
|
136 |
+
|
137 |
+
public static function decode($encodedValue) {
|
138 |
+
$decodedValue = Array();
|
139 |
+
$keyValueStrings = explode('&', $encodedValue);
|
140 |
+
foreach($keyValueStrings as $entry) {
|
141 |
+
$decodedValue = self::_addEntryDecode($entry, $decodedValue);
|
142 |
+
}
|
143 |
+
return $decodedValue;
|
144 |
+
}
|
145 |
+
|
146 |
+
/**
|
147 |
+
*
|
148 |
+
* @param string $sEntry
|
149 |
+
* @param array $aDecodedValue
|
150 |
+
* @throws WirecardCEE_Stdlib_Exception_InvalidFormatException
|
151 |
+
* @return Array
|
152 |
+
*/
|
153 |
+
protected static function _addEntryDecode($sEntry, $aDecodedValue) {
|
154 |
+
$aEntry = explode('=', $sEntry);
|
155 |
+
if (!is_array($aEntry) || count($aEntry) < 2) {
|
156 |
+
// ignore keys only
|
157 |
+
return $aDecodedValue;
|
158 |
+
}
|
159 |
+
else
|
160 |
+
if (count($aEntry) == 2) {
|
161 |
+
$keyArray = explode('.', $aEntry[0]);
|
162 |
+
if (is_array($keyArray) && count($keyArray) > 1) {
|
163 |
+
$position = & $aDecodedValue;
|
164 |
+
foreach($keyArray as $keyName) {
|
165 |
+
if ($keyName == intval($keyName)) {
|
166 |
+
$keyName--;
|
167 |
+
}
|
168 |
+
if (!isset($position[$keyName])) {
|
169 |
+
$position[$keyName] = Array();
|
170 |
+
}
|
171 |
+
$position = & $position[$keyName];
|
172 |
+
}
|
173 |
+
$position = self::_decodeValueArray($aEntry[1]);
|
174 |
+
}
|
175 |
+
else {
|
176 |
+
if ($aEntry[0] == intval($aEntry[0])) {
|
177 |
+
$aEntry[0]--;
|
178 |
+
}
|
179 |
+
$aDecodedValue[urldecode($aEntry[0])] = self::_decodeValueArray($aEntry[1]);
|
180 |
+
}
|
181 |
+
return $aDecodedValue;
|
182 |
+
}
|
183 |
+
else {
|
184 |
+
throw new WirecardCEE_Stdlib_Exception_InvalidFormatException('Invalid format for WirecardCEE_Stdlib_SerialApi::decode. Expecting key=value pairs');
|
185 |
+
}
|
186 |
+
}
|
187 |
+
|
188 |
+
/**
|
189 |
+
*
|
190 |
+
* @param string $sValue
|
191 |
+
* @return multitype: string | string
|
192 |
+
*/
|
193 |
+
protected static function _decodeValueArray($sValue) {
|
194 |
+
$aValues = explode(',', $sValue);
|
195 |
+
if (is_array($aValues) && count($aValues) > 1) {
|
196 |
+
$aEntries = Array();
|
197 |
+
foreach($aValues as $sEntry) {
|
198 |
+
$aEntries[] = urldecode($sEntry);
|
199 |
+
}
|
200 |
+
return $aEntries;
|
201 |
+
}
|
202 |
+
else {
|
203 |
+
return urldecode($sValue);
|
204 |
+
}
|
205 |
+
}
|
206 |
+
}
|
app/code/local/Wirecard/Stdlib/Validate/Fingerprint.php
ADDED
@@ -0,0 +1,275 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/*
|
3 |
+
* Die vorliegende Software ist Eigentum von Wirecard CEE und daher vertraulich
|
4 |
+
* zu behandeln. Jegliche Weitergabe an dritte, in welcher Form auch immer, ist
|
5 |
+
* unzulaessig.
|
6 |
+
*
|
7 |
+
* Software & Service Copyright (C) by
|
8 |
+
* Wirecard Central Eastern Europe GmbH,
|
9 |
+
* FB-Nr: FN 195599 x, http://www.wirecard.at
|
10 |
+
*/
|
11 |
+
|
12 |
+
/**
|
13 |
+
* @name WirecardCEE_Stdlib_Validate_Fingerprint
|
14 |
+
* @category WirecardCEE
|
15 |
+
* @package WirecardCEE_Stdlib
|
16 |
+
* @subpackage Validate
|
17 |
+
* @version 3.2.0
|
18 |
+
*/
|
19 |
+
class WirecardCEE_Stdlib_Validate_Fingerprint extends Zend_Validate_Abstract {
|
20 |
+
|
21 |
+
/**
|
22 |
+
* Fingeprint order
|
23 |
+
* @var WirecardCEE_Stdlib_FingerprintOrder
|
24 |
+
*/
|
25 |
+
protected $fingerprintOrder;
|
26 |
+
|
27 |
+
/**
|
28 |
+
* Type of fingerprint order
|
29 |
+
* @var string
|
30 |
+
*/
|
31 |
+
protected $fingerprintOrderType = self::TYPE_FIXED;
|
32 |
+
|
33 |
+
/**
|
34 |
+
* Hash algorithm
|
35 |
+
* @var string
|
36 |
+
*/
|
37 |
+
protected $hashAlgorithm = WirecardCEE_Stdlib_Fingerprint::HASH_ALGORITHM_SHA512;
|
38 |
+
|
39 |
+
/**
|
40 |
+
* Secret
|
41 |
+
* @var string
|
42 |
+
*/
|
43 |
+
protected $secret = '';
|
44 |
+
|
45 |
+
/**
|
46 |
+
* Mandatory fields internal holder
|
47 |
+
* @var array
|
48 |
+
* @internal
|
49 |
+
*/
|
50 |
+
protected $_mandatoryFields = Array();
|
51 |
+
|
52 |
+
/**
|
53 |
+
* Fingerprint order field
|
54 |
+
* @var string
|
55 |
+
*/
|
56 |
+
protected $fingerprintOrderField = '';
|
57 |
+
|
58 |
+
/**
|
59 |
+
* Const: Dynamic type
|
60 |
+
*
|
61 |
+
* @var string
|
62 |
+
*/
|
63 |
+
const TYPE_DYNAMIC = 'dynamic';
|
64 |
+
|
65 |
+
/**
|
66 |
+
* Const: Fixed type
|
67 |
+
*
|
68 |
+
* @var string
|
69 |
+
*/
|
70 |
+
const TYPE_FIXED = 'fixed';
|
71 |
+
|
72 |
+
/**
|
73 |
+
* Const: Invalid
|
74 |
+
*
|
75 |
+
* @var string
|
76 |
+
*/
|
77 |
+
const INVALID = 'invalid';
|
78 |
+
|
79 |
+
/**
|
80 |
+
* Const: Invalid Length
|
81 |
+
*
|
82 |
+
* @var string
|
83 |
+
*/
|
84 |
+
const INVALID_LENGTH = 'invalidLength';
|
85 |
+
|
86 |
+
/**
|
87 |
+
* Const: Fingerprint order missing
|
88 |
+
*
|
89 |
+
* @var string
|
90 |
+
*/
|
91 |
+
const FINGERPRINTORDER_MISSING = 'fingerprintorderMissing';
|
92 |
+
|
93 |
+
/**
|
94 |
+
* Message templates
|
95 |
+
*
|
96 |
+
* @var array
|
97 |
+
* @internal
|
98 |
+
*/
|
99 |
+
protected $_messageTemplates = array(
|
100 |
+
self::INVALID => "Given fingerprint does not match calculated one.",
|
101 |
+
self::INVALID_LENGTH => "'%value%' has invalid length for hash algorithm %hash%.",
|
102 |
+
self::FINGERPRINTORDER_MISSING => 'Parameter fingerprintOrder is missing'
|
103 |
+
);
|
104 |
+
|
105 |
+
/**
|
106 |
+
* Message variables
|
107 |
+
*
|
108 |
+
* @var array
|
109 |
+
* @internal
|
110 |
+
*/
|
111 |
+
protected $_messageVariables = array(
|
112 |
+
'hash' => 'hashAlgorithm'
|
113 |
+
);
|
114 |
+
|
115 |
+
/**
|
116 |
+
* Constructor
|
117 |
+
* @param Array $options - optional
|
118 |
+
*/
|
119 |
+
public function __construct($options = array()) {
|
120 |
+
$this->fingerprintOrder = new WirecardCEE_Stdlib_FingerprintOrder();
|
121 |
+
|
122 |
+
if($options instanceof WirecardCEE_Stdlib_Config) {
|
123 |
+
$options = $options->toArray();
|
124 |
+
}
|
125 |
+
|
126 |
+
if(!empty($options['fingerprintOrder'])) {
|
127 |
+
$this->setOrder($options['fingerprintOrder']);
|
128 |
+
}
|
129 |
+
|
130 |
+
if(!empty($options['fingerprintOrderField'])) {
|
131 |
+
$this->setFingerprintOrderField($options['fingerprintOrderField']);
|
132 |
+
}
|
133 |
+
if(!empty($options['hashAlgorithm'])) {
|
134 |
+
$this->setHashAlgorithm($options['hashAlgorithm']);
|
135 |
+
}
|
136 |
+
if(!empty($options['orderType'])) {
|
137 |
+
$this->setOrderType($options['orderType']);
|
138 |
+
}
|
139 |
+
if(!empty($options['secret'])) {
|
140 |
+
$this->setSecret($options['secret']);
|
141 |
+
}
|
142 |
+
}
|
143 |
+
|
144 |
+
/**
|
145 |
+
* Sets the fingerprint order field
|
146 |
+
* @param string $sFingerprintOrderField
|
147 |
+
* @return WirecardCEE_Stdlib_Validate_Fingerprint
|
148 |
+
*/
|
149 |
+
public function setFingerprintOrderField($sFingerprintOrderField) {
|
150 |
+
$this->fingerprintOrderField = strtolower($sFingerprintOrderField);
|
151 |
+
return $this;
|
152 |
+
}
|
153 |
+
|
154 |
+
/**
|
155 |
+
* Sets the ordere type
|
156 |
+
* @param string $orderType
|
157 |
+
* @return WirecardCEE_Stdlib_Validate_FingerprintValidator
|
158 |
+
*/
|
159 |
+
public function setOrderType($orderType) {
|
160 |
+
$this->fingerprintOrderType = (string) $orderType;
|
161 |
+
return $this;
|
162 |
+
}
|
163 |
+
|
164 |
+
/**
|
165 |
+
* Sets the fingeprint order
|
166 |
+
* @param string|array $order
|
167 |
+
* @return WirecardCEE_Stdlib_Validate_FingerprintValidator
|
168 |
+
*/
|
169 |
+
public function setOrder($order) {
|
170 |
+
$this->fingerprintOrder->setOrder($order);
|
171 |
+
return $this;
|
172 |
+
}
|
173 |
+
|
174 |
+
/**
|
175 |
+
* Hash algorithm setter
|
176 |
+
* @param string $hashAlgorithm
|
177 |
+
* @return WirecardCEE_Stdlib_Validate_FingerprintValidator
|
178 |
+
*/
|
179 |
+
public function setHashAlgorithm($hashAlgorithm) {
|
180 |
+
$this->hashAlgorithm = (string) $hashAlgorithm;
|
181 |
+
WirecardCEE_Stdlib_Fingerprint::setHashAlgorithm($hashAlgorithm);
|
182 |
+
return $this;
|
183 |
+
}
|
184 |
+
|
185 |
+
/**
|
186 |
+
* Secret setter
|
187 |
+
* @param string $secret
|
188 |
+
* @return WirecardCEE_Stdlib_Validate_FingerprintValidator
|
189 |
+
*/
|
190 |
+
public function setSecret($secret) {
|
191 |
+
$this->secret = (string) $secret;
|
192 |
+
return $this;
|
193 |
+
}
|
194 |
+
|
195 |
+
/**
|
196 |
+
* Add madatory field
|
197 |
+
* @param string $mandatoryField
|
198 |
+
* @return WirecardCEE_Stdlib_Validate_FingerprintValidator
|
199 |
+
*/
|
200 |
+
public function addMandatoryField($mandatoryField) {
|
201 |
+
if(!in_array((string) $mandatoryField, $this->_mandatoryFields)) {
|
202 |
+
$this->_mandatoryFields[] = (string) $mandatoryField;
|
203 |
+
}
|
204 |
+
return $this;
|
205 |
+
}
|
206 |
+
|
207 |
+
/**
|
208 |
+
* Sets mandatory fields
|
209 |
+
* @param array $mandatoryFields
|
210 |
+
* @return WirecardCEE_Stdlib_Validate_FingerprintValidator
|
211 |
+
*/
|
212 |
+
public function setMandatoryFields(Array $mandatoryFields) {
|
213 |
+
$this->_mandatoryFields = $mandatoryFields;
|
214 |
+
return $this;
|
215 |
+
}
|
216 |
+
|
217 |
+
/**
|
218 |
+
* Is validator check valid?
|
219 |
+
* @see Zend_Validate_Interface::isValid()
|
220 |
+
*/
|
221 |
+
public function isValid($value, $context = null) {
|
222 |
+
$context = array_change_key_case($context, CASE_LOWER);
|
223 |
+
|
224 |
+
switch($this->hashAlgorithm) {
|
225 |
+
case WirecardCEE_Stdlib_Fingerprint::HASH_ALGORITHM_HMAC_SHA512:
|
226 |
+
case WirecardCEE_Stdlib_Fingerprint::HASH_ALGORITHM_SHA512:
|
227 |
+
$stringLength = 128;
|
228 |
+
break;
|
229 |
+
case WirecardCEE_Stdlib_Fingerprint::HASH_ALGORITHM_MD5:
|
230 |
+
$stringLength = 32;
|
231 |
+
break;
|
232 |
+
default:
|
233 |
+
throw new WirecardCEE_Stdlib_Exception_UnexpectedValueException(sprintf("Used hash algorithm '%s' is not supported. MD5, SHA512, or HMAC_SHA512 are currently supported.", $this->hashAlgorithm));
|
234 |
+
break;
|
235 |
+
}
|
236 |
+
|
237 |
+
if(strlen($value) != $stringLength) {
|
238 |
+
return false;
|
239 |
+
}
|
240 |
+
|
241 |
+
if($this->fingerprintOrderType == self::TYPE_FIXED) {
|
242 |
+
$fingerprintOrder = $this->fingerprintOrder;
|
243 |
+
}
|
244 |
+
else {
|
245 |
+
if(array_key_exists($this->fingerprintOrderField, $context)) {
|
246 |
+
$fingerprintOrder = new WirecardCEE_Stdlib_FingerprintOrder(strtolower($context[$this->fingerprintOrderField]));
|
247 |
+
}
|
248 |
+
else {
|
249 |
+
$this->_error(self::FINGERPRINTORDER_MISSING);
|
250 |
+
return false;
|
251 |
+
}
|
252 |
+
}
|
253 |
+
|
254 |
+
$fingerprintOrder->setOrder(array_map('strtolower', $this->fingerprintOrder->__toArray()));
|
255 |
+
|
256 |
+
$fingerprintFields = Array();
|
257 |
+
foreach($fingerprintOrder as $fingerprintFieldKey) {
|
258 |
+
if($fingerprintFieldKey == 'secret') {
|
259 |
+
$fingerprintFields[$fingerprintFieldKey] = $this->secret;
|
260 |
+
}
|
261 |
+
else {
|
262 |
+
$fingerprintFields[$fingerprintFieldKey] = isset($context[$fingerprintFieldKey]) ? $context[$fingerprintFieldKey] : '';
|
263 |
+
}
|
264 |
+
}
|
265 |
+
|
266 |
+
if(!WirecardCEE_Stdlib_Fingerprint::compare($fingerprintFields, $fingerprintOrder, $value)) {
|
267 |
+
$this->_error(self::INVALID);
|
268 |
+
return false;
|
269 |
+
}
|
270 |
+
|
271 |
+
return true;
|
272 |
+
}
|
273 |
+
}
|
274 |
+
|
275 |
+
?>
|
app/design/adminhtml/default/default/template/wirecard/checkoutpage/info.phtml
ADDED
@@ -0,0 +1,60 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
echo $this->getMethod()->getTitle() . '<br/>';
|
34 |
+
$data = $this->getInfo()->getAdditionalInformation();
|
35 |
+
if (!$data) {
|
36 |
+
$data = unserialize($this->getInfo()->getAdditionalData());
|
37 |
+
}
|
38 |
+
if(is_array($data))
|
39 |
+
{
|
40 |
+
foreach($data AS $key => $value)
|
41 |
+
{
|
42 |
+
if(strtolower($key) == 'lasttransid')
|
43 |
+
{
|
44 |
+
echo $this->__('Wirecard Checkout Page Transaction ID: %s', $this->htmlEscape($value)) . '<br/>';
|
45 |
+
}
|
46 |
+
else
|
47 |
+
{
|
48 |
+
echo $this->__($this->htmlEscape($key).': %s', $this->htmlEscape($value)) .'<br />';
|
49 |
+
}
|
50 |
+
}
|
51 |
+
}
|
52 |
+
else if($this->getInfo()->getLastTransId())
|
53 |
+
{
|
54 |
+
echo $this->__('Wirecard Checkout Page Transaction ID: %s', $this->htmlEscape($this->getInfo()->getLastTransId())) . '<br/>';
|
55 |
+
}
|
56 |
+
else
|
57 |
+
{
|
58 |
+
echo $this->__('Payment has not been processed yet.') . '<br/>';
|
59 |
+
}
|
60 |
+
|
app/design/adminhtml/default/default/template/wirecard/checkoutpage/pdf/info.phtml
ADDED
@@ -0,0 +1,34 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
|
33 |
+
echo $this->getMethod()->getTitle();
|
34 |
+
|
app/design/frontend/base/default/layout/wirecard_checkoutpage.xml
ADDED
@@ -0,0 +1,90 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<!--
|
3 |
+
/**
|
4 |
+
* Shop System Plugins - Terms of Use
|
5 |
+
*
|
6 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
7 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
8 |
+
* products and services.
|
9 |
+
*
|
10 |
+
* They have been tested and approved for full functionality in the standard configuration
|
11 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
12 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
13 |
+
* the same terms.
|
14 |
+
*
|
15 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
16 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
17 |
+
*
|
18 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
19 |
+
* comprehensive test phase by the user of the plugin.
|
20 |
+
*
|
21 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
22 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
23 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
24 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
25 |
+
* shop system.
|
26 |
+
*
|
27 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
28 |
+
* operation.
|
29 |
+
*
|
30 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
31 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
32 |
+
*/
|
33 |
+
-->
|
34 |
+
|
35 |
+
<layout version="0.1.0">
|
36 |
+
<!--
|
37 |
+
WirecardCheckoutPage Failure Response Review
|
38 |
+
-->
|
39 |
+
<wirecard_checkoutpage_processing_failure>
|
40 |
+
<reference name="root">
|
41 |
+
<action method="setTemplate">
|
42 |
+
<template>page/2columns-right.phtml</template>
|
43 |
+
</action>
|
44 |
+
</reference>
|
45 |
+
<reference name="content">
|
46 |
+
<block type="wirecard_checkoutpage/failure" name="wirecard_checkoutpage_failure"
|
47 |
+
template="wirecard/checkoutpage/failure.phtml">
|
48 |
+
</block>
|
49 |
+
</reference>
|
50 |
+
</wirecard_checkoutpage_processing_failure>
|
51 |
+
|
52 |
+
<wirecard_checkoutpage_processing_checkout>
|
53 |
+
<reference name="root">
|
54 |
+
<action method="setTemplate">
|
55 |
+
<template>page/1column.phtml</template>
|
56 |
+
</action>
|
57 |
+
</reference>
|
58 |
+
<reference name="content">
|
59 |
+
<block type="wirecard_checkoutpage/checkout"
|
60 |
+
name="wirecard_checkoutpage_checkout"
|
61 |
+
template="wirecard/checkoutpage/checkout.phtml">
|
62 |
+
</block>
|
63 |
+
</reference>
|
64 |
+
</wirecard_checkoutpage_processing_checkout>
|
65 |
+
|
66 |
+
<wirecard_checkoutpage_processing_redirect>
|
67 |
+
<reference name="root">
|
68 |
+
<action method="setTemplate">
|
69 |
+
<template>wirecard/checkoutpage/blank.phtml</template>
|
70 |
+
</action>
|
71 |
+
</reference>
|
72 |
+
<reference name="content">
|
73 |
+
<block type="wirecard_checkoutpage/processing" name="wirecard_checkoutpage_processing"
|
74 |
+
template="wirecard/checkoutpage/processing.phtml"/>
|
75 |
+
</reference>
|
76 |
+
</wirecard_checkoutpage_processing_redirect>
|
77 |
+
|
78 |
+
<wirecard_checkoutpage_processing_return>
|
79 |
+
<reference name="root">
|
80 |
+
<action method="setTemplate">
|
81 |
+
<template>wirecard/checkoutpage/blank.phtml</template>
|
82 |
+
</action>
|
83 |
+
</reference>
|
84 |
+
<reference name="content">
|
85 |
+
<block type="wirecard_checkoutpage/return" name="wirecard_checkoutpage_return"
|
86 |
+
template="wirecard/checkoutpage/return.phtml"/>
|
87 |
+
</reference>
|
88 |
+
</wirecard_checkoutpage_processing_return>
|
89 |
+
|
90 |
+
</layout>
|
app/design/frontend/base/default/template/wirecard/checkoutpage/additional/installment.phtml
ADDED
@@ -0,0 +1,106 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
?>
|
33 |
+
<li><label for="wirecard_checkoutpage_installment_dob_day" class="required"><em>*</em><?php echo $this->__('Date of Birth') ?></label>
|
34 |
+
<div class="input-box wirecard-checkoutpage-dob customer-dob">
|
35 |
+
<div class="dob-day wirecard-checkoutpage-installment-dob-day">
|
36 |
+
<input type="text" id="wirecard_checkoutpage_installment_dob_day"
|
37 |
+
name="payment[wirecard_checkoutpage_installment_dob_day]"
|
38 |
+
value="<?php echo $this->getCustomerDobDay() ?>"
|
39 |
+
title="<?php echo $this->__('Day') ?>"
|
40 |
+
class="input-text validate-custom" /> <label
|
41 |
+
for="wirecard_checkoutpage_installment_dob_day"><?php echo $this->__('DD') ?></label>
|
42 |
+
</div>
|
43 |
+
<div class="dob-month wirecard-checkoutpage-installment-dob-month">
|
44 |
+
<input type="text" id="wirecard_checkoutpage_installment_dob_month"
|
45 |
+
name="payment[wirecard_checkoutpage_installment_dob_month]"
|
46 |
+
value="<?php echo $this->getCustomerDobMonth() ?>"
|
47 |
+
title="<?php echo $this->__('Month') ?>"
|
48 |
+
class="input-text validate-custom" /> <label
|
49 |
+
for="wirecard_checkoutpage_installment_dob_month"><?php echo $this->__('MM') ?></label>
|
50 |
+
</div>
|
51 |
+
<div class="dob-year wirecard-checkoutpage-installment-dob-year">
|
52 |
+
<input type="text" id="wirecard_checkoutpage_installment_dob_year"
|
53 |
+
name="payment[wirecard_checkoutpage_installment_dob_year]"
|
54 |
+
value="<?php echo $this->getCustomerDobYear() ?>"
|
55 |
+
title="<?php echo $this->__('Year') ?>"
|
56 |
+
class="input-text validate-custom" /> <label
|
57 |
+
for="wirecard_checkoutpage_installment_dob_year"><?php echo $this->__('YYYY') ?></label>
|
58 |
+
</div>
|
59 |
+
<div class="dob-full wirecard-checkoutpage-installment-dob-full" style="display: none;">
|
60 |
+
<input type="hidden" id="wirecard_checkoutpage_installment_dob_full"
|
61 |
+
name="payment[wirecard_checkoutpage_installment_dob]" />
|
62 |
+
</div>
|
63 |
+
|
64 |
+
<div class="validation-advice wirecard-checkoutpage-installment-validation-advice" id="wirecard_checkoutpage_installment_validation_advice" style="display: none;"></div>
|
65 |
+
</div>
|
66 |
+
</li>
|
67 |
+
|
68 |
+
<script type="text/javascript">
|
69 |
+
Translator.add('You have to be 18 years or older to use installment payments.','<?php echo $this->__('You have to be 18 years or older to use installment payments.')?>');
|
70 |
+
</script> <script type="text/javascript">
|
71 |
+
//<![CDATA[
|
72 |
+
Varien.QINSTDateElement = Class.create();
|
73 |
+
Varien.QINSTDateElement.prototype = Object.extend(new Varien.DateElement(), {
|
74 |
+
validateData: function() {
|
75 |
+
var year = this.fullDate.getFullYear();
|
76 |
+
var date = new Date;
|
77 |
+
this.curyear = date.getFullYear();
|
78 |
+
if(year <= 1899 || year >= this.curyear+1)
|
79 |
+
{
|
80 |
+
return false;
|
81 |
+
}
|
82 |
+
var today = new Date();
|
83 |
+
var limit = new Date((today.getFullYear() - 18), today.getMonth(), today.getDate());
|
84 |
+
var validateToYoung = this.fullDate <= limit;
|
85 |
+
this.validateDataErrorText = 'You have to be 18 years or older to use installment payments.';
|
86 |
+
return validateToYoung;
|
87 |
+
}
|
88 |
+
});
|
89 |
+
Varien.QINSTDOB = Class.create();
|
90 |
+
Varien.QINSTDOB.prototype = {
|
91 |
+
initialize: function(selector, required, format) {
|
92 |
+
var el = $(selector);
|
93 |
+
var container = {};
|
94 |
+
container.day = Element.select(el, '#wirecard_checkoutpage_installment_dob_day')[0];
|
95 |
+
container.month = Element.select(el, '#wirecard_checkoutpage_installment_dob_month')[0];
|
96 |
+
container.year = Element.select(el, '#wirecard_checkoutpage_installment_dob_year')[0];
|
97 |
+
container.full = Element.select(el, '#wirecard_checkoutpage_installment_dob_full')[0];
|
98 |
+
container.advice = Element.select(el, '#wirecard_checkoutpage_installment_validation_advice')[0];
|
99 |
+
|
100 |
+
new Varien.QINSTDateElement('container', container, required, format);
|
101 |
+
}
|
102 |
+
};
|
103 |
+
|
104 |
+
var wirecard_checkoutpage_installment_customer_dob = new Varien.QINSTDOB('#payment_form_wirecard_checkoutpage_installment', 'true', '%y-%m-%d');
|
105 |
+
//]]>
|
106 |
+
</script>
|
app/design/frontend/base/default/template/wirecard/checkoutpage/additional/invoice.phtml
ADDED
@@ -0,0 +1,106 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
?>
|
33 |
+
<li><label for="wirecard_checkoutpage_invoice_dob_day" class="required"><em>*</em><?php echo $this->__('Date of Birth') ?></label>
|
34 |
+
<div class="input-box wirecard-checkoutpage-dob customer-dob">
|
35 |
+
<div class="dob-day wirecard-checkoutpage-invoice-dob-day">
|
36 |
+
<input type="text" id="wirecard_checkoutpage_invoice_dob_day"
|
37 |
+
name="payment[wirecard_checkoutpage_invoice_dob_day]"
|
38 |
+
value="<?php echo $this->getCustomerDobDay() ?>"
|
39 |
+
title="<?php echo $this->__('Day') ?>"
|
40 |
+
class="input-text validate-custom" /> <label
|
41 |
+
for="wirecard_checkoutpage_invoice_dob_day"><?php echo $this->__('DD') ?></label>
|
42 |
+
</div>
|
43 |
+
<div class="dob-month wirecard-checkoutpage-invoice-dob-month">
|
44 |
+
<input type="text" id="wirecard_checkoutpage_invoice_dob_month"
|
45 |
+
name="payment[wirecard_checkoutpage_invoice_dob_month]"
|
46 |
+
value="<?php echo $this->getCustomerDobMonth() ?>"
|
47 |
+
title="<?php echo $this->__('Month') ?>"
|
48 |
+
class="input-text validate-custom" /> <label
|
49 |
+
for="wirecard_checkoutpage_invoice_dob_month"><?php echo $this->__('MM') ?></label>
|
50 |
+
</div>
|
51 |
+
<div class="dob-year wirecard-checkoutpage-invoice-dob-year">
|
52 |
+
<input type="text" id="wirecard_checkoutpage_invoice_dob_year"
|
53 |
+
name="payment[wirecard_checkoutpage_invoice_dob_year]"
|
54 |
+
value="<?php echo $this->getCustomerDobYear() ?>"
|
55 |
+
title="<?php echo $this->__('Year') ?>"
|
56 |
+
class="input-text validate-custom" /> <label
|
57 |
+
for="wirecard_checkoutpage_invoice_dob_year"><?php echo $this->__('YYYY') ?></label>
|
58 |
+
</div>
|
59 |
+
<div class="dob-full wirecard-checkoutpage-invoice-dob-full" style="display: none;">
|
60 |
+
<input type="hidden" id="wirecard_checkoutpage_invoice_dob_full"
|
61 |
+
name="payment[wirecard_checkoutpage_invoice_dob]" />
|
62 |
+
</div>
|
63 |
+
|
64 |
+
<div class="validation-advice wirecard-checkoutpage-invoice-validation-advice" id="wirecard_checkoutpage_invoice_validation_advice" style="display: none;"></div>
|
65 |
+
</div>
|
66 |
+
</li>
|
67 |
+
|
68 |
+
<script type="text/javascript">
|
69 |
+
Translator.add('You have to be 18 years or older to use invoice payments.','<?php echo $this->__('You have to be 18 years or older to use invoice payments.')?>');
|
70 |
+
</script> <script type="text/javascript">
|
71 |
+
//<![CDATA[
|
72 |
+
Varien.QINVDateElement = Class.create();
|
73 |
+
Varien.QINVDateElement.prototype = Object.extend(new Varien.DateElement(), {
|
74 |
+
validateData: function() {
|
75 |
+
var year = this.fullDate.getFullYear();
|
76 |
+
var date = new Date;
|
77 |
+
this.curyear = date.getFullYear();
|
78 |
+
if(year <= 1899 || year >= this.curyear+1)
|
79 |
+
{
|
80 |
+
return false;
|
81 |
+
}
|
82 |
+
var today = new Date();
|
83 |
+
var limit = new Date((today.getFullYear() - 18), today.getMonth(), today.getDate());
|
84 |
+
var validateToYoung = this.fullDate <= limit;
|
85 |
+
this.validateDataErrorText = 'You have to be 18 years or older to use invoice payments.';
|
86 |
+
return validateToYoung;
|
87 |
+
}
|
88 |
+
});
|
89 |
+
Varien.QINVDOB = Class.create();
|
90 |
+
Varien.QINVDOB.prototype = {
|
91 |
+
initialize: function(selector, required, format) {
|
92 |
+
var el = $(selector);
|
93 |
+
var container = {};
|
94 |
+
container.day = Element.select(el, '#wirecard_checkoutpage_invoice_dob_day')[0];
|
95 |
+
container.month = Element.select(el, '#wirecard_checkoutpage_invoice_dob_month')[0];
|
96 |
+
container.year = Element.select(el, '#wirecard_checkoutpage_invoice_dob_year')[0];
|
97 |
+
container.full = Element.select(el, '#wirecard_checkoutpage_invoice_dob_full')[0];
|
98 |
+
container.advice = Element.select(el, '#wirecard_checkoutpage_invoice_validation_advice')[0];
|
99 |
+
|
100 |
+
new Varien.QINVDateElement('container', container, required, format);
|
101 |
+
}
|
102 |
+
};
|
103 |
+
|
104 |
+
var wirecard_checkoutpage_invoice_customer_dob = new Varien.QINVDOB('#payment_form_wirecard_checkoutpage_invoice', 'true', '%y-%m-%d');
|
105 |
+
//]]>
|
106 |
+
</script>
|
app/design/frontend/base/default/template/wirecard/checkoutpage/additional/invoiceb2b.phtml
ADDED
@@ -0,0 +1,37 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
?>
|
33 |
+
<li><label for="wirecard_checkoutpage_invoiceb2b_company_trade_reg_number"><?php echo $this->__('Company Trade Registration Number') ?></label>
|
34 |
+
<div class="input-box wirecard-checkoutpage-dob customer-dob">
|
35 |
+
<input type="text" name="payment[wirecard_checkoutpage_invoiceb2b_company_trade_reg_number]" id="wirecard_checkoutpage_invoiceb2b_company_trade_reg_number" value="<?php echo $this->getCompanyTradeRegistrationNumber(); ?>">
|
36 |
+
</div>
|
37 |
+
</li>
|
app/design/frontend/base/default/template/wirecard/checkoutpage/blank.phtml
ADDED
@@ -0,0 +1,40 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
?>
|
33 |
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
34 |
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->getLang() ?>" lang="<?php echo $this->getLang() ?>">
|
35 |
+
<head>
|
36 |
+
</head>
|
37 |
+
<body>
|
38 |
+
<?php echo $this->getChildHtml('content') ?>
|
39 |
+
</body>
|
40 |
+
</html>
|
app/design/frontend/base/default/template/wirecard/checkoutpage/checkout.phtml
ADDED
@@ -0,0 +1,36 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
?>
|
33 |
+
|
34 |
+
<p align="center">
|
35 |
+
<iframe src="<?php echo $iframeUrl ?>" name="wirecard_checkoutpage_iframe" id="wirecard_checkoutpage_iframe" width="660" height="680" frameborder="0"></iframe>
|
36 |
+
</p>
|
app/design/frontend/base/default/template/wirecard/checkoutpage/failure.phtml
ADDED
@@ -0,0 +1,37 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
?>
|
33 |
+
<div class="page-head">
|
34 |
+
<h3><?php echo $this->__('An error occurred') ?></h3>
|
35 |
+
</div>
|
36 |
+
<p><?php echo $this->getErrorMessage() ?></p>
|
37 |
+
<p><?php echo $this->__('<a href=""%s"">Continue shopping</a>.', $this->getContinueShoppingUrl()) ?></p>
|
app/design/frontend/base/default/template/wirecard/checkoutpage/form.phtml
ADDED
@@ -0,0 +1,61 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
?>
|
33 |
+
<?php $_code = $this->getMethodCode() ?>
|
34 |
+
<ul class="form-list" id="payment_form_<?php echo $_code ?>" style="display:none">
|
35 |
+
|
36 |
+
<li>
|
37 |
+
<?php echo $this->__('You will be redirected to our payment service provider Wirecard CEE.') ?>
|
38 |
+
</li>
|
39 |
+
|
40 |
+
<?php if ($this->hasPayolutionTerms()): ?>
|
41 |
+
|
42 |
+
<label for="wirecard_checkoutpage_payolution_terms"
|
43 |
+
class="required"><em>*</em><?php echo $this->__('Accept payolution terms') ?>:
|
44 |
+
</label>
|
45 |
+
|
46 |
+
<p class="control">
|
47 |
+
<input type="checkbox" id="wirecard_checkoutpage_payolution_terms"
|
48 |
+
name="payment[wirecard_checkoutpage_payolution_terms]"
|
49 |
+
value="1"
|
50 |
+
title="<?php echo $this->__('payolution terms') ?>"
|
51 |
+
class="checkbox required-entry"/>
|
52 |
+
<label
|
53 |
+
for="wirecard_checkoutpage_payolution_terms"><?php echo sprintf($this->__('I agree that the data which are necessary for the liquidation of invoice payments and which are used to complete the identity and credit check are transmitted to payolution. My %s can be revoked at any time with future effect.'), $this->getPayolutionLink()); ?>
|
54 |
+
</label>
|
55 |
+
</p>
|
56 |
+
<?php endif; ?>
|
57 |
+
|
58 |
+
<?php if ($this->hasAdditionalForm()): ?>
|
59 |
+
<?php echo $this->getLayout()->createBlock($this->getAdditionalForm())->toHtml(); ?>
|
60 |
+
<?php endif; ?>
|
61 |
+
</ul>
|
app/design/frontend/base/default/template/wirecard/checkoutpage/info.phtml
ADDED
@@ -0,0 +1,39 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
?>
|
33 |
+
<?php
|
34 |
+
echo $this->getMethod()->getTitle() . '<br/>';
|
35 |
+
if ($this->getInfo()->getLastTransId() == '') {
|
36 |
+
} else {
|
37 |
+
echo $this->__('Wirecard Checkout Page Transaction ID: %s', $this->htmlEscape($this->getInfo()->getLastTransId())) . '<br/>';
|
38 |
+
}
|
39 |
+
?>
|
app/design/frontend/base/default/template/wirecard/checkoutpage/processing.phtml
ADDED
@@ -0,0 +1,51 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
?>
|
33 |
+
<style type="text/css">
|
34 |
+
html { font:bold 12px/28px Arial, Helvetica, sans-serif; }
|
35 |
+
</style>
|
36 |
+
<b><?php echo Mage::helper('wirecard_checkoutpage')->__('You will be redirected to the payment page in a few seconds. If you are not redirected, click the redirect button.'); ?></b>
|
37 |
+
<form name="wirecard_checkoutpage_checkout" id="wirecard_checkoutpage_checkout" action="<?php echo $this->getFormAction();?>" method="get">
|
38 |
+
<?php if (is_array($this->getFormData())): ?>
|
39 |
+
<?php foreach ($this->getFormData() as $name => $value): ?>
|
40 |
+
<input type="hidden" name="<?php echo $name; ?>" value="<?php echo $value; ?>"/>
|
41 |
+
<?php endforeach; ?>
|
42 |
+
<?php endif; ?>
|
43 |
+
<input type="button" onclick="document.wirecard_checkoutpage_checkout.submit();" value="<?php echo Mage::helper('wirecard_checkoutpage')->__('redirect') ?>">
|
44 |
+
</form>
|
45 |
+
|
46 |
+
<script type="text/javascript">
|
47 |
+
//<![CDATA[
|
48 |
+
var paymentform = document.getElementById('wirecard_checkoutpage_checkout');
|
49 |
+
window.onload = paymentform.submit();
|
50 |
+
//]]>
|
51 |
+
</script>
|
app/design/frontend/base/default/template/wirecard/checkoutpage/progress.phtml
ADDED
@@ -0,0 +1,112 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
?>
|
33 |
+
<div class="box one-page-checkout-progress">
|
34 |
+
<h3><?php echo $this->__('Your Checkout Progress') ?></h3>
|
35 |
+
<ol>
|
36 |
+
<?php if ($this->getCheckout()->getStepData('billing', 'is_show')): ?>
|
37 |
+
<?php if ($this->getCheckout()->getStepData('billing', 'complete')): ?>
|
38 |
+
<li>
|
39 |
+
<h4 class="complete"><?php echo $this->__('Billing Address') ?></h4>
|
40 |
+
<div class="content">
|
41 |
+
<address><?php echo $this->getBilling()->format('html') ?></address>
|
42 |
+
</div>
|
43 |
+
</li>
|
44 |
+
<?php else: ?>
|
45 |
+
<li>
|
46 |
+
<h4><?php echo $this->__('Billing Address') ?></h4>
|
47 |
+
</li>
|
48 |
+
<?php endif; ?>
|
49 |
+
<?php endif; ?>
|
50 |
+
|
51 |
+
<?php if ($this->getCheckout()->getStepData('shipping', 'is_show')): ?>
|
52 |
+
<?php if ($this->getCheckout()->getStepData('shipping', 'complete')): ?>
|
53 |
+
<li>
|
54 |
+
<h4 class="complete"><?php echo $this->__('Shipping Address') ?></h4>
|
55 |
+
<div class="content">
|
56 |
+
<address><?php echo $this->getShipping()->format('html') ?></address>
|
57 |
+
</div>
|
58 |
+
</li>
|
59 |
+
<?php else: ?>
|
60 |
+
<li>
|
61 |
+
<h4><?php echo $this->__('Shipping Address') ?></h4>
|
62 |
+
</li>
|
63 |
+
<?php endif; ?>
|
64 |
+
<?php endif; ?>
|
65 |
+
|
66 |
+
<?php if ($this->getCheckout()->getStepData('shipping_method', 'is_show')): ?>
|
67 |
+
<?php if ($this->getCheckout()->getStepData('shipping_method', 'complete')): ?>
|
68 |
+
<li>
|
69 |
+
<h4 class="complete"><?php echo $this->__('Shipping Method') ?></h4>
|
70 |
+
<div class="content">
|
71 |
+
<?php if ($this->getShippingMethod()): ?>
|
72 |
+
<?php echo $this->getShippingDescription(); ?>
|
73 |
+
|
74 |
+
<?php $_excl = $this->getShippingPriceExclTax(); ?>
|
75 |
+
<?php $_incl = $this->getShippingPriceInclTax(); ?>
|
76 |
+
<?php if ($this->helper('tax')->displayShippingPriceIncludingTax()): ?>
|
77 |
+
<?php echo $_incl; ?>
|
78 |
+
<?php else: ?>
|
79 |
+
<?php echo $_excl; ?>
|
80 |
+
<?php endif; ?>
|
81 |
+
<?php if ($this->helper('tax')->displayShippingBothPrices() && $_incl != $_excl): ?>
|
82 |
+
(<?php echo $this->__('Incl. Tax'); ?> <?php echo $_incl; ?>)
|
83 |
+
<?php endif; ?>
|
84 |
+
|
85 |
+
<?php else: ?>
|
86 |
+
<?php echo $this->__('Shipping method has not been selected yet') ?>
|
87 |
+
<?php endif ?>
|
88 |
+
</div>
|
89 |
+
</li>
|
90 |
+
<?php else: ?>
|
91 |
+
<li>
|
92 |
+
<h4><?php echo $this->__('Shipping Method') ?></h4>
|
93 |
+
</li>
|
94 |
+
<?php endif; ?>
|
95 |
+
<?php endif; ?>
|
96 |
+
|
97 |
+
<?php if ($this->getCheckout()->getStepData('payment', 'is_show')): ?>
|
98 |
+
<?php if ($this->getCheckout()->getStepData('payment', 'complete')): ?>
|
99 |
+
<li>
|
100 |
+
<h4 class="complete"><?php echo $this->__('Payment Method') ?></h4>
|
101 |
+
<div class="content">
|
102 |
+
<?php echo $this->getPaymentHtml() ?>
|
103 |
+
</div>
|
104 |
+
</li>
|
105 |
+
<?php else: ?>
|
106 |
+
<li>
|
107 |
+
<h4><?php echo $this->__('Payment Method') ?></h4>
|
108 |
+
</li>
|
109 |
+
<?php endif; ?>
|
110 |
+
<?php endif; ?>
|
111 |
+
</ol>
|
112 |
+
</div>
|
app/design/frontend/base/default/template/wirecard/checkoutpage/return.phtml
ADDED
@@ -0,0 +1,41 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Shop System Plugins - Terms of Use
|
4 |
+
*
|
5 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
6 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
7 |
+
* products and services.
|
8 |
+
*
|
9 |
+
* They have been tested and approved for full functionality in the standard configuration
|
10 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
11 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
12 |
+
* the same terms.
|
13 |
+
*
|
14 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
15 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
16 |
+
*
|
17 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
18 |
+
* comprehensive test phase by the user of the plugin.
|
19 |
+
*
|
20 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
21 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
22 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
23 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
24 |
+
* shop system.
|
25 |
+
*
|
26 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
27 |
+
* operation.
|
28 |
+
*
|
29 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
30 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
31 |
+
*/
|
32 |
+
?>
|
33 |
+
<style type="text/css">
|
34 |
+
html { font:bold 12px/28px Arial, Helvetica, sans-serif; }
|
35 |
+
</style>
|
36 |
+
<b><?php echo Mage::helper('wirecard_checkoutpage')->__('You will be redirected in a few seconds. Thank you for your patience.'); ?></b>
|
37 |
+
<script type="text/javascript">
|
38 |
+
//<![CDATA[
|
39 |
+
parent.location.href = "<?php echo $this->getRedirectUrl();?>";
|
40 |
+
//]]>
|
41 |
+
</script>
|
app/etc/modules/Wirecard_CheckoutPage.xml
ADDED
@@ -0,0 +1,41 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<!--
|
3 |
+
/**
|
4 |
+
* Shop System Plugins - Terms of Use
|
5 |
+
*
|
6 |
+
* The plugins offered are provided free of charge by Wirecard Central Eastern Europe GmbH
|
7 |
+
* (abbreviated to Wirecard CEE) and are explicitly not part of the Wirecard CEE range of
|
8 |
+
* products and services.
|
9 |
+
*
|
10 |
+
* They have been tested and approved for full functionality in the standard configuration
|
11 |
+
* (status on delivery) of the corresponding shop system. They are under General Public
|
12 |
+
* License Version 2 (GPLv2) and can be used, developed and passed on to third parties under
|
13 |
+
* the same terms.
|
14 |
+
*
|
15 |
+
* However, Wirecard CEE does not provide any guarantee or accept any liability for any errors
|
16 |
+
* occurring when used in an enhanced, customized shop system configuration.
|
17 |
+
*
|
18 |
+
* Operation in an enhanced, customized configuration is at your own risk and requires a
|
19 |
+
* comprehensive test phase by the user of the plugin.
|
20 |
+
*
|
21 |
+
* Customers use the plugins at their own risk. Wirecard CEE does not guarantee their full
|
22 |
+
* functionality neither does Wirecard CEE assume liability for any disadvantages related to
|
23 |
+
* the use of the plugins. Additionally, Wirecard CEE does not guarantee the full functionality
|
24 |
+
* for customized shop systems or installed plugins of other vendors of plugins within the same
|
25 |
+
* shop system.
|
26 |
+
*
|
27 |
+
* Customers are responsible for testing the plugin's functionality before starting productive
|
28 |
+
* operation.
|
29 |
+
*
|
30 |
+
* By installing the plugin into the shop system the customer agrees to these terms of use.
|
31 |
+
* Please do not use the plugin if you do not agree to these terms of use!
|
32 |
+
*/
|
33 |
+
-->
|
34 |
+
<config>
|
35 |
+
<modules>
|
36 |
+
<Wirecard_CheckoutPage>
|
37 |
+
<active>true</active>
|
38 |
+
<codePool>community</codePool>
|
39 |
+
</Wirecard_CheckoutPage>
|
40 |
+
</modules>
|
41 |
+
</config>
|
app/locale/de_AT/Wirecard_CheckoutPage.csv
ADDED
@@ -0,0 +1,53 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
"Date of Birth","Geburtsdatum"
|
2 |
+
"I agree that the data which are necessary for the liquidation of invoice payments and which are used to complete the identity and credit check are transmitted to payolution. My %s can be revoked at any time with future effect.","Mit der Übermittlung der für die Abwicklung des Rechnungskaufes und einer Identitäts- und Bonitätsprüfung erforderlichen Daten an payolution bin ich einverstanden. Meine %s kann ich jederzeit mit Wirkung für die Zukunft widerrufen."
|
3 |
+
"You have to be 18 years or older to use invoice payments.","Sie müssen mindestens 18 Jahre alt sein um Kauf auf Rechnung nutzen zu können."
|
4 |
+
"You have to be 18 years or older to use installment payments.","Sie müssen mindestens 18 Jahre alt sein um Ratenzahlung nutzen zu können."
|
5 |
+
"Consent","Einwilligung"
|
6 |
+
"Accept payolution terms","payolution Einverständniserklärung akzeptieren"
|
7 |
+
"payolution terms","payolution Einverständniserklärung"
|
8 |
+
"You will be redirected to our payment service provider Wirecard CEE.","Sie werden zu unserem Zahlungsdienstleister Wirecard CEE weitergeleitet."
|
9 |
+
"Company Trade Registration Number","Handelsregister Firmennummer"
|
10 |
+
"An error occurred","Ein Fehler ist aufgetreten"
|
11 |
+
"<a href=""%s"">Continue shopping</a>.","<a href=""%s"">Weiter einkaufen</a>."
|
12 |
+
"You will be redirected in a few seconds. Thank you for your patience.","Sie werden in Kürze weitergeleitet. Bitte haben sie ein wenig Geduld."
|
13 |
+
"You will be redirected to the payment page in a few seconds. If you are not redirected, click the redirect button.","In wenigen Sekunden erfolgt eine Weiterleitung zur Bezahlung. Sollte keine Weiterleitung erfolgen, klicken Sie bitte auf 'Weiterleiten'."
|
14 |
+
"Wirecard Checkout Page Transaction ID: %s","Wirecard Checkout Page Transaktions-ID: %s"
|
15 |
+
"Payment has not been processed yet.","Die Zahlung wurde noch nicht durchgeführt."
|
16 |
+
"Configuration test ok","Konfigurationstest erfolgreich"
|
17 |
+
"An error occurred during the payment process","Während des Bezahlvorganges ist ein Fehler aufgetreten"
|
18 |
+
"Production","Produktion"
|
19 |
+
"Test without 3-D Secure","Test ohne 3-D Secure"
|
20 |
+
"Test with 3-D Secure","Test mit 3-D Secure"
|
21 |
+
"Customer was redirected to Wirecard Checkout Page.","Kunde wurde zu Wirecard Checkout Page weitergeleitet."
|
22 |
+
"Order has been canceled.","Die Bestellung wurde abgebrochen."
|
23 |
+
"Sorry, your payment has not been confirmed by the financial service provider.","Die Zahlung wurde leider nicht durch den Finanzdienstleister bestätigt."
|
24 |
+
"Your order will be processed as soon as we receive the payment confirmation from your bank.","Ihre Bestellung wird verarbeitet sobald wir die Zahlungsbestätigung Ihrer Bank erhalten haben."
|
25 |
+
"The payment has been successfully completed.","Die Zahlung wurde erfolgreich durchgeführt."
|
26 |
+
"SELECT","Zahlungsmittelauswahl"
|
27 |
+
"BANCONTACT_MISTERCASH","Bancontact/Mister Cash"
|
28 |
+
"CCARD","Kreditkarte / Maestro SecureCode"
|
29 |
+
"CCARD-MOTO","Kreditkarte - Mail Order / Telephone Order"
|
30 |
+
"EKONTO","eKonto"
|
31 |
+
"EPAY_BG","ePay.bg"
|
32 |
+
"EPS","eps Online-Ãœberweisung"
|
33 |
+
"GIROPAY","giropay"
|
34 |
+
"IDL","iDEAL"
|
35 |
+
"INSTALLMENT","Kauf auf Raten"
|
36 |
+
"INVOICEB2B","Kauf auf Rechnung B2B"
|
37 |
+
"INVOICE","Kaudf auf Rechnung"
|
38 |
+
"MONETA","moneta.ru"
|
39 |
+
"MPASS","mpass"
|
40 |
+
"PRZELEWY24',"Przelewy24"
|
41 |
+
"PAYPAL","PayPal"
|
42 |
+
"PBX","paybox"
|
43 |
+
"POLI","POLi"
|
44 |
+
"PSC","paysafecard"
|
45 |
+
"QUICK","@Quick"
|
46 |
+
"SEPA-DD","SEPA Lastschrift"
|
47 |
+
"SKRILLDIRECT","Skrill Direct"
|
48 |
+
"SKRILLWALLET","Skrill Digital Wallet"
|
49 |
+
"SOFORTUEBERWEISUNG","SOFORT Ãœberweisung"
|
50 |
+
"TATRAPAY","TatraPay"
|
51 |
+
"TRUSTLY","Trustly"
|
52 |
+
"TRUSTPAY","TrustPay"
|
53 |
+
"VOUCHER","Gutschein"
|
app/locale/de_DE/Wirecard_CheckoutPage.csv
ADDED
@@ -0,0 +1,53 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
"Date of Birth","Geburtsdatum"
|
2 |
+
"I agree that the data which are necessary for the liquidation of invoice payments and which are used to complete the identity and credit check are transmitted to payolution. My %s can be revoked at any time with future effect.","Mit der Übermittlung der für die Abwicklung des Rechnungskaufes und einer Identitäts- und Bonitätsprüfung erforderlichen Daten an payolution bin ich einverstanden. Meine %s kann ich jederzeit mit Wirkung für die Zukunft widerrufen."
|
3 |
+
"You have to be 18 years or older to use invoice payments.","Sie müssen mindestens 18 Jahre alt sein um Kauf auf Rechnung nutzen zu können."
|
4 |
+
"You have to be 18 years or older to use installment payments.","Sie müssen mindestens 18 Jahre alt sein um Ratenzahlung nutzen zu können."
|
5 |
+
"Consent","Einwilligung"
|
6 |
+
"Accept payolution terms","payolution Einverständniserklärung akzeptieren"
|
7 |
+
"payolution terms","payolution Einverständniserklärung"
|
8 |
+
"You will be redirected to our payment service provider Wirecard CEE.","Sie werden zu unserem Zahlungsdienstleister Wirecard CEE weitergeleitet."
|
9 |
+
"Company Trade Registration Number","Handelsregister Firmennummer"
|
10 |
+
"An error occurred","Ein Fehler ist aufgetreten"
|
11 |
+
"<a href=""%s"">Continue shopping</a>.","<a href=""%s"">Weiter einkaufen</a>."
|
12 |
+
"You will be redirected in a few seconds. Thank you for your patience.","Sie werden in Kürze weitergeleitet. Bitte haben sie ein wenig Geduld."
|
13 |
+
"You will be redirected to the payment page in a few seconds. If you are not redirected, click the redirect button.","In wenigen Sekunden erfolgt eine Weiterleitung zur Bezahlung. Sollte keine Weiterleitung erfolgen, klicken Sie bitte auf 'Weiterleiten'."
|
14 |
+
"Wirecard Checkout Page Transaction ID: %s","Wirecard Checkout Page Transaktions-ID: %s"
|
15 |
+
"Payment has not been processed yet.","Die Zahlung wurde noch nicht durchgeführt."
|
16 |
+
"Configuration test ok","Konfigurationstest erfolgreich"
|
17 |
+
"An error occurred during the payment process","Während des Bezahlvorganges ist ein Fehler aufgetreten"
|
18 |
+
"Production","Produktion"
|
19 |
+
"Test without 3-D Secure","Test ohne 3-D Secure"
|
20 |
+
"Test with 3-D Secure","Test mit 3-D Secure"
|
21 |
+
"Customer was redirected to Wirecard Checkout Page.","Kunde wurde zu Wirecard Checkout Page weitergeleitet."
|
22 |
+
"Order has been canceled.","Die Bestellung wurde abgebrochen."
|
23 |
+
"Sorry, your payment has not been confirmed by the financial service provider.","Die Zahlung wurde leider nicht durch den Finanzdienstleister bestätigt."
|
24 |
+
"Your order will be processed as soon as we receive the payment confirmation from your bank.","Ihre Bestellung wird verarbeitet sobald wir die Zahlungsbestätigung Ihrer Bank erhalten haben."
|
25 |
+
"The payment has been successfully completed.","Die Zahlung wurde erfolgreich durchgeführt."
|
26 |
+
"SELECT","Zahlungsmittelauswahl"
|
27 |
+
"BANCONTACT_MISTERCASH","Bancontact/Mister Cash"
|
28 |
+
"CCARD","Kreditkarte / Maestro SecureCode"
|
29 |
+
"CCARD-MOTO","Kreditkarte - Mail Order / Telephone Order"
|
30 |
+
"EKONTO","eKonto"
|
31 |
+
"EPAY_BG","ePay.bg"
|
32 |
+
"EPS","eps Online-Ãœberweisung"
|
33 |
+
"GIROPAY","giropay"
|
34 |
+
"IDL","iDEAL"
|
35 |
+
"INSTALLMENT","Kauf auf Raten"
|
36 |
+
"INVOICEB2B","Kauf auf Rechnung B2B"
|
37 |
+
"INVOICE","Kauf auf Rechnung"
|
38 |
+
"MONETA","moneta.ru"
|
39 |
+
"MPASS","mpass"
|
40 |
+
"PRZELEWY24',"Przelewy24"
|
41 |
+
"PAYPAL","PayPal"
|
42 |
+
"PBX","paybox"
|
43 |
+
"POLI","POLi"
|
44 |
+
"PSC","paysafecard"
|
45 |
+
"QUICK","@Quick"
|
46 |
+
"SEPA-DD","SEPA Lastschrift"
|
47 |
+
"SKRILLDIRECT","Skrill Direct"
|
48 |
+
"SKRILLWALLET","Skrill Digital Wallet"
|
49 |
+
"SOFORTUEBERWEISUNG","SOFORT Ãœberweisung"
|
50 |
+
"TATRAPAY","TatraPay"
|
51 |
+
"TRUSTLY","Trustly"
|
52 |
+
"TRUSTPAY","TrustPay"
|
53 |
+
"VOUCHER","Mein Gutschein"
|
app/locale/en_US/Wirecard_CheckoutPage.csv
ADDED
@@ -0,0 +1,54 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
"Date of Birth","Date of Birth"
|
2 |
+
"I agree that the data which are necessary for the liquidation of invoice payments and which are used to complete the identity and credit check are transmitted to payolution. My %s can be revoked at any time with future effect.","I agree that the data which are necessary for the liquidation of invoice payments and which are used to complete the identity and credit check are transmitted to payolution. My %s can be revoked at any time with future effect."
|
3 |
+
"You have to be 18 years or older to use invoice payments.","You have to be 18 years or older to use invoice payments."
|
4 |
+
"You have to be 18 years or older to use installment payments.","You have to be 18 years or older to use installment payments."
|
5 |
+
"Consent","Consent"
|
6 |
+
"Accept payolution terms","Accept payolution terms"
|
7 |
+
"payolution terms","payolution terms"
|
8 |
+
"You will be redirected to our payment service provider Wirecard CEE.","You will be redirected to Wirecard Checkout Page when you place an order."
|
9 |
+
"Company Trade Registration Number","Company Trade Registration Number"
|
10 |
+
"An error occurred","An error occurred"
|
11 |
+
"<a href=""%s"">Continue shopping</a>.","<a href=""%s"">Continue shopping</a>."
|
12 |
+
"You will be redirected in a few seconds. Thank you for your patience.","You will be redirected in a few seconds. Thank you for your patience."
|
13 |
+
"You will be redirected to the payment page in a few seconds. If you are not redirected, click the redirect button.","You will be redirected to the payment page in a few seconds. If you are not redirected, click the redirect button."
|
14 |
+
"Wirecard Checkout Page Transaction ID: %s","Wirecard Checkout Page Transaction ID: %s"
|
15 |
+
"Payment has not been processed yet.","Payment has not been processed yet."
|
16 |
+
"Configuration test ok","Configuration test ok"
|
17 |
+
"An error occurred during the payment process","An error occurred during the payment process"
|
18 |
+
"Production","Production"
|
19 |
+
"Test without 3-D Secure","Test without 3-D Secure"
|
20 |
+
"Test with 3-D Secure","Test with 3-D Secure"
|
21 |
+
"Customer was redirected to Wirecard Checkout Page.","Customer was redirected to Wirecard Checkout Page."
|
22 |
+
"Order has been canceled.","Order has been canceled."
|
23 |
+
"Sorry, your payment has not been confirmed by the financial service provider.","Sorry, your payment has not been confirmed by the financial service provider."
|
24 |
+
"Your order will be processed as soon as we receive the payment confirmation from your bank.","Your order will be processed as soon as we receive the payment confirmation from you bank."
|
25 |
+
"The payment has been successfully completed.","The payment has been successfully completed."
|
26 |
+
"SELECT","Select"
|
27 |
+
"BANCONTACT_MISTERCASH","Bancontact/Mister Cash"
|
28 |
+
"CCARD","Credit Card / Maestro SecureCode"
|
29 |
+
"CCARD-MOTO","Credit Card - Mail Order / Telephone Order"
|
30 |
+
"EKONTO","eKonto"
|
31 |
+
"EPAY_BG","ePay.bg"
|
32 |
+
"EPS","eps Online-Ãœberweisung"
|
33 |
+
"GIROPAY","giropay"
|
34 |
+
"IDL","iDEAL"
|
35 |
+
"INSTALLMENT","Installment"
|
36 |
+
"INVOICEB2B","Invoice B2B"
|
37 |
+
"INVOICE","Invoice"
|
38 |
+
"MAESTRO","Maestro Secure Code"
|
39 |
+
"MONETA","moneta.ru"
|
40 |
+
"MPASS","mpass"
|
41 |
+
"PRZELEWY24',"Przelewy24"
|
42 |
+
"PAYPAL","PayPal"
|
43 |
+
"PBX","paybox"
|
44 |
+
"POLI","POLi"
|
45 |
+
"PSC","paysafecard"
|
46 |
+
"QUICK","@Quick"
|
47 |
+
"SEPA-DD","SEPA Direct Debit"
|
48 |
+
"SKRILLDIRECT","Skrill Direct"
|
49 |
+
"SKRILLWALLET","Skrill Digital Wallet"
|
50 |
+
"SOFORTUEBERWEISUNG","SOFORT Banking"
|
51 |
+
"TATRAPAY","TatraPay"
|
52 |
+
"TRUSTLY","Trustly"
|
53 |
+
"TRUSTPAY","TrustPay"
|
54 |
+
"VOUCHER","My Voucher"
|
package.xml
ADDED
@@ -0,0 +1,32 @@
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
|
Â
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<package>
|
3 |
+
<name>wirecard_checkout_page</name>
|
4 |
+
<version>4.0.0</version>
|
5 |
+
<stability>stable</stability>
|
6 |
+
<license>GNU General Public License Version 2 (GPLv2)</license>
|
7 |
+
<channel>community</channel>
|
8 |
+
<extends/>
|
9 |
+
<summary>Wirecard Checkout Page supports all popular payment methods and fulfills PCI DSS compliance.</summary>
|
10 |
+
<description>Wirecard Checkout Page is designed to meet the ambitious demands of merchants offering a wide range of payment methods while at the same time fulfilling PCI DSS compliance.
|
11 |
+
Wirecard Checkout Page offers:
|
12 |
+
National and international payment methods: credit cards, debit cards, online banking payments, mobile payment solutions and other alternative payment methods.
|
13 |
+
One interface for all payment methods.
|
14 |
+
Intuitive user interface in more than 25 languages and 120 currencies.
|
15 |
+
Layout and design customizable to meet the needs of our merchants (customized look-and-feel).
|
16 |
+
Payment page compatible with mobile devices.
|
17 |
+
Comprehensive range of effective fraud prevention tools.
|
18 |
+
PCI DSS 3 compliant, no PCI certification necessary for merchants.
|
19 |
+
Easy to add new payment methods, additional features, languages and currencies, etc.
|
20 |
+
Web interface for managing payments (approvals, cancelations, credits, etc.).
|
21 |
+
Benefit from Wirecard Bank´s license to conclude credit card acceptance contracts (acquiring) and issue credit cards.
|
22 |
+
With Wirecard Collecting only a single contract is required for payouts within various payment methods.
|
23 |
+
Support of recurring payments (subscriptions, one-click checkout).
|
24 |
+
Our Online Guides provide technical documentation, installation and configuration instructions for the plugin as well as further information on payment methods and additional features: https://guides.wirecard.com/</description>
|
25 |
+
<notes>initial release</notes>
|
26 |
+
<authors><author><name>WirecardCEE</name><user>Customer</user><email>support.at@wirecard.com</email></author></authors>
|
27 |
+
<date>2016-01-27</date>
|
28 |
+
<time>10:00:00</time>
|
29 |
+
<contents></contents>
|
30 |
+
<compatible/>
|
31 |
+
<dependencies><required><php><min>5.4.0</min><max>5.6.0</max></php></required></dependencies>
|
32 |
+
</package>
|
skin/adminhtml/default/default/images/wirecard/wirecard-logo.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/bmc.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/cc.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/ccMoto.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/ekonto.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/epaybg.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/eps.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/giropay.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/ideal.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/installment.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/invoice.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/invoiceb2b.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/maestro.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/moneta.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/mpass.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/p24.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/paybox.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/paypal.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/paysafecard.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/poli.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/quick.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/sepadd.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/skrilldirect.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/skrillwallet.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/sofortbanking.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/tatrapay.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/trustly.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/trustpay.png
ADDED
Binary file
|
skin/frontend/base/default/images/wirecard/checkoutpage/voucher.png
ADDED
Binary file
|