Version Notes
local testing mode
configurable if sending invoice or order confirmation email
automatic page reload of success page due to connection error
Download this release
Release Info
Developer | Magento Core Team |
Extension | MageBase_DpsPaymentExpress |
Version | 1.5.8 |
Comparing to | |
See all releases |
Code changes from version 1.5.3 to 1.5.8
- app/code/community/MageBase/DpsPaymentExpress/Helper/Data.php +3 -1
- app/code/community/MageBase/DpsPaymentExpress/Model/Method/Common.php +13 -1
- app/code/community/MageBase/DpsPaymentExpress/Model/Method/Pxpay.php +27 -9
- app/code/community/MageBase/DpsPaymentExpress/Model/Method/Pxpost.php +15 -6
- app/code/community/MageBase/DpsPaymentExpress/Model/Observer.php +12 -0
- app/code/community/MageBase/DpsPaymentExpress/etc/config-1.4.xml +33 -0
- app/code/community/MageBase/DpsPaymentExpress/etc/config.xml +15 -23
- app/code/community/MageBase/DpsPaymentExpress/etc/system.xml +18 -0
- app/code/community/MageBase/DpsPaymentExpress/sql/magebasedps_setup/mysql4-upgrade-1.2.5-1.3.0.php +16 -11
- app/design/frontend/base/default/template/magebase/dps/pxpost/form.phtml +5 -0
- package.xml +4 -4
app/code/community/MageBase/DpsPaymentExpress/Helper/Data.php
CHANGED
@@ -64,7 +64,9 @@ class MageBase_DpsPaymentExpress_Helper_Data extends Mage_Core_Helper_Abstract
|
|
64 |
) {
|
65 |
return $info->getAdditionalInformation($key);
|
66 |
}
|
67 |
-
|
|
|
|
|
68 |
$data = unserialize($info->getAdditionalData());
|
69 |
}
|
70 |
if (!empty($key) && isset($data[$key])) {
|
64 |
) {
|
65 |
return $info->getAdditionalInformation($key);
|
66 |
}
|
67 |
+
//We make the following check since we may get string "Array" in additional_data field. Seems like it happens
|
68 |
+
//by default if additional_data is not set. This should be investigated but for now this is a solution.
|
69 |
+
if ($info->getAdditionalData() && strpos($info->getAdditionalData(), 'Array') !== 0) {
|
70 |
$data = unserialize($info->getAdditionalData());
|
71 |
}
|
72 |
if (!empty($key) && isset($data[$key])) {
|
app/code/community/MageBase/DpsPaymentExpress/Model/Method/Common.php
CHANGED
@@ -85,9 +85,21 @@ class MageBase_DpsPaymentExpress_Model_Method_Common extends Mage_Payment_Model_
|
|
85 |
'NP' => 'PXPay Closing Request tag not found.',
|
86 |
'NQ' => 'User not enabled for PxPay. Contact DPS.',
|
87 |
'NT' => 'Key is not 64 characters.',
|
88 |
-
'U5' => '
|
89 |
'QD' => 'The transaction was Declined.', //Invalid TxnRef
|
90 |
'Q4' => 'Invalid Amount Entered. Transaction has not been Approved',
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
91 |
);
|
92 |
|
93 |
|
85 |
'NP' => 'PXPay Closing Request tag not found.',
|
86 |
'NQ' => 'User not enabled for PxPay. Contact DPS.',
|
87 |
'NT' => 'Key is not 64 characters.',
|
88 |
+
'U5' => 'Invalid User / Password',
|
89 |
'QD' => 'The transaction was Declined.', //Invalid TxnRef
|
90 |
'Q4' => 'Invalid Amount Entered. Transaction has not been Approved',
|
91 |
+
'Q8' => 'Invalid Currency',
|
92 |
+
'QG' => 'Invalid TxnType',
|
93 |
+
'QI' => 'Invalid Expiry Date (month not between 1-12)',
|
94 |
+
'QJ' => 'Invalid Expiry Date (non numeric value submitted)',
|
95 |
+
'QK' => 'Invalid Card Number Length',
|
96 |
+
'QL' => 'Invalid Card Number',
|
97 |
+
'JC' => 'Invalid BillingId',
|
98 |
+
'JD' => 'Invalid DPSBillingId',
|
99 |
+
'JE' => 'DPSBillingId not matched',
|
100 |
+
'D2' => 'Invalid username',
|
101 |
+
'D3' => 'Invalid / missing Password',
|
102 |
+
'D4' => 'Maximum number of logon attempts exceeded'
|
103 |
);
|
104 |
|
105 |
|
app/code/community/MageBase/DpsPaymentExpress/Model/Method/Pxpay.php
CHANGED
@@ -378,7 +378,7 @@ class MageBase_DpsPaymentExpress_Model_Method_Pxpay extends Mage_Payment_Model_M
|
|
378 |
Mage::log("Error in DPS Response Validation: No Order", null, self::DPS_LOG_FILENAME);
|
379 |
return MageBase_DpsPaymentExpress_Model_Method_Common::STATUS_ERROR;
|
380 |
}
|
381 |
-
if (abs((float)$resultXml->AmountSettlement -
|
382 |
Mage::log(
|
383 |
$order->getIncrementId() . " Error in DPS Response Validation: Mismatched totals",
|
384 |
null,
|
@@ -485,6 +485,9 @@ class MageBase_DpsPaymentExpress_Model_Method_Pxpay extends Mage_Payment_Model_M
|
|
485 |
'ResponseText' => (string)$responseXml->ResponseText,
|
486 |
'Cvc2ResultCode' => (string)$responseXml->Cvc2ResultCode
|
487 |
);
|
|
|
|
|
|
|
488 |
$payment->setAdditionalData(serialize($data));
|
489 |
}
|
490 |
|
@@ -518,10 +521,6 @@ class MageBase_DpsPaymentExpress_Model_Method_Pxpay extends Mage_Payment_Model_M
|
|
518 |
protected function _sendEmails($order, $invoice)
|
519 |
{
|
520 |
switch (Mage::getStoreConfig('payment/' . $this->_code . '/emailstosend', $this->getStore())) {
|
521 |
-
case MageBase_DpsPaymentExpress_Model_Method_Common::EMAIL_SEND_ORDER: // default - send order emails only
|
522 |
-
$order->sendNewOrderEmail();
|
523 |
-
$order->setEmailSent(true);
|
524 |
-
break;
|
525 |
case MageBase_DpsPaymentExpress_Model_Method_Common::EMAIL_SEND_INVOICE: // send invoice email only
|
526 |
$invoice->save();
|
527 |
$invoice->sendEmail();
|
@@ -534,6 +533,11 @@ class MageBase_DpsPaymentExpress_Model_Method_Pxpay extends Mage_Payment_Model_M
|
|
534 |
$invoice->sendEmail();
|
535 |
$invoice->setEmailSent(true);
|
536 |
break;
|
|
|
|
|
|
|
|
|
|
|
537 |
}
|
538 |
}
|
539 |
|
@@ -564,17 +568,18 @@ class MageBase_DpsPaymentExpress_Model_Method_Pxpay extends Mage_Payment_Model_M
|
|
564 |
{
|
565 |
if ($responseXml) {
|
566 |
$order = $this->_getOrder($responseXml);
|
567 |
-
|
|
|
|
|
568 |
} else {
|
569 |
$order = Mage::getModel('sales/order')->load(Mage::getSingleton('checkout/session')->getLastOrderId());
|
570 |
}
|
571 |
-
if ($order->getId() && $order->getState() != Mage_Sales_Model_Order::STATE_CANCELED) {
|
572 |
$order->registerCancellation(
|
573 |
Mage::helper('magebasedps')->__(
|
574 |
'There has been an error processing your payment. Please try later or contact us for help.'
|
575 |
), false
|
576 |
-
)
|
577 |
-
->save();
|
578 |
}
|
579 |
}
|
580 |
|
@@ -598,4 +603,17 @@ class MageBase_DpsPaymentExpress_Model_Method_Pxpay extends Mage_Payment_Model_M
|
|
598 |
return Mage::getStoreConfig('payment/' . $this->_code . '/debug', $this->getStore());
|
599 |
}
|
600 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
601 |
}
|
378 |
Mage::log("Error in DPS Response Validation: No Order", null, self::DPS_LOG_FILENAME);
|
379 |
return MageBase_DpsPaymentExpress_Model_Method_Common::STATUS_ERROR;
|
380 |
}
|
381 |
+
if (abs((float)$resultXml->AmountSettlement - sprintf("%9.2f",$order->getBaseGrandTotal())) > 0.05) {
|
382 |
Mage::log(
|
383 |
$order->getIncrementId() . " Error in DPS Response Validation: Mismatched totals",
|
384 |
null,
|
485 |
'ResponseText' => (string)$responseXml->ResponseText,
|
486 |
'Cvc2ResultCode' => (string)$responseXml->Cvc2ResultCode
|
487 |
);
|
488 |
+
$expiry = (string)$responseXml->DateExpiry;
|
489 |
+
$payment->setCcExpMonth(substr($expiry, 0, 2));
|
490 |
+
$payment->setCcExpYear(2000 + (int)substr($expiry, -2));
|
491 |
$payment->setAdditionalData(serialize($data));
|
492 |
}
|
493 |
|
521 |
protected function _sendEmails($order, $invoice)
|
522 |
{
|
523 |
switch (Mage::getStoreConfig('payment/' . $this->_code . '/emailstosend', $this->getStore())) {
|
|
|
|
|
|
|
|
|
524 |
case MageBase_DpsPaymentExpress_Model_Method_Common::EMAIL_SEND_INVOICE: // send invoice email only
|
525 |
$invoice->save();
|
526 |
$invoice->sendEmail();
|
533 |
$invoice->sendEmail();
|
534 |
$invoice->setEmailSent(true);
|
535 |
break;
|
536 |
+
case MageBase_DpsPaymentExpress_Model_Method_Common::EMAIL_SEND_ORDER: // default - send order email only
|
537 |
+
default:
|
538 |
+
$order->sendNewOrderEmail();
|
539 |
+
$order->setEmailSent(true);
|
540 |
+
break;
|
541 |
}
|
542 |
}
|
543 |
|
568 |
{
|
569 |
if ($responseXml) {
|
570 |
$order = $this->_getOrder($responseXml);
|
571 |
+
if ($order) {
|
572 |
+
$this->setAdditionalData($responseXml, $order->getPayment());
|
573 |
+
}
|
574 |
} else {
|
575 |
$order = Mage::getModel('sales/order')->load(Mage::getSingleton('checkout/session')->getLastOrderId());
|
576 |
}
|
577 |
+
if ($order && $order->getId() && $order->getState() != Mage_Sales_Model_Order::STATE_CANCELED) {
|
578 |
$order->registerCancellation(
|
579 |
Mage::helper('magebasedps')->__(
|
580 |
'There has been an error processing your payment. Please try later or contact us for help.'
|
581 |
), false
|
582 |
+
)->save();
|
|
|
583 |
}
|
584 |
}
|
585 |
|
603 |
return Mage::getStoreConfig('payment/' . $this->_code . '/debug', $this->getStore());
|
604 |
}
|
605 |
|
606 |
+
/**
|
607 |
+
* Can be used in regular checkout
|
608 |
+
*
|
609 |
+
* @return bool
|
610 |
+
*/
|
611 |
+
public function canUseCheckout()
|
612 |
+
{
|
613 |
+
$this->_canUseCheckout = Mage::getStoreConfigFlag(
|
614 |
+
'payment/' . $this->_code . '/frontend_checkout', $this->getStore()
|
615 |
+
);
|
616 |
+
return $this->_canUseCheckout;
|
617 |
+
}
|
618 |
+
|
619 |
}
|
app/code/community/MageBase/DpsPaymentExpress/Model/Method/Pxpost.php
CHANGED
@@ -128,7 +128,6 @@ class MageBase_DpsPaymentExpress_Model_Method_Pxpost extends Mage_Payment_Model_
|
|
128 |
$payment->setStatus(self::STATUS_APPROVED)
|
129 |
->setLastTransId($dpsTxnRef)
|
130 |
->setTransactionId($dpsTxnRef);
|
131 |
-
$payment->registerAuthorizationNotification($amount);
|
132 |
} else {
|
133 |
$error = $this->getError();
|
134 |
if (isset($error['message'])) {
|
@@ -167,9 +166,8 @@ class MageBase_DpsPaymentExpress_Model_Method_Pxpost extends Mage_Payment_Model_
|
|
167 |
if ($result) {
|
168 |
$dpsTxnRef = Mage::helper('magebasedps')->getAdditionalData($payment, 'DpsTxnRef');
|
169 |
$payment->setStatus(self::STATUS_APPROVED)
|
170 |
-
->setLastTransId($dpsTxnRef)
|
171 |
-
|
172 |
-
|
173 |
} else {
|
174 |
$error = $this->getError();
|
175 |
if (isset($error['message'])) {
|
@@ -196,7 +194,6 @@ class MageBase_DpsPaymentExpress_Model_Method_Pxpost extends Mage_Payment_Model_
|
|
196 |
$payment->setStatus(self::STATUS_APPROVED)
|
197 |
->setLastTransId($dpsTxnRef)
|
198 |
->setTransactionId($dpsTxnRef);
|
199 |
-
$payment->registerRefundNotification($amount);
|
200 |
} else {
|
201 |
$error = $this->getError();
|
202 |
if (isset($error['message'])) {
|
@@ -417,7 +414,7 @@ class MageBase_DpsPaymentExpress_Model_Method_Pxpost extends Mage_Payment_Model_
|
|
417 |
if ($this->getPaymentAction() != MageBase_DpsPaymentExpress_Model_Method_Common::ACTION_COMPLETE
|
418 |
&& $this->getPaymentAction() != MageBase_DpsPaymentExpress_Model_Method_Common::ACTION_REFUND
|
419 |
) {
|
420 |
-
if (abs((float)$resultXml->Transaction[0]->Amount - $order->getBaseGrandTotal()) > 0.0005) {
|
421 |
Mage::log("Error in DPS Response Validation: Mismatched totals", null, self::DPS_LOG_FILENAME);
|
422 |
return false;
|
423 |
}
|
@@ -588,4 +585,16 @@ class MageBase_DpsPaymentExpress_Model_Method_Pxpost extends Mage_Payment_Model_
|
|
588 |
return $store;
|
589 |
}
|
590 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
591 |
}
|
128 |
$payment->setStatus(self::STATUS_APPROVED)
|
129 |
->setLastTransId($dpsTxnRef)
|
130 |
->setTransactionId($dpsTxnRef);
|
|
|
131 |
} else {
|
132 |
$error = $this->getError();
|
133 |
if (isset($error['message'])) {
|
166 |
if ($result) {
|
167 |
$dpsTxnRef = Mage::helper('magebasedps')->getAdditionalData($payment, 'DpsTxnRef');
|
168 |
$payment->setStatus(self::STATUS_APPROVED)
|
169 |
+
->setLastTransId($dpsTxnRef)
|
170 |
+
->setTransactionId($dpsTxnRef);
|
|
|
171 |
} else {
|
172 |
$error = $this->getError();
|
173 |
if (isset($error['message'])) {
|
194 |
$payment->setStatus(self::STATUS_APPROVED)
|
195 |
->setLastTransId($dpsTxnRef)
|
196 |
->setTransactionId($dpsTxnRef);
|
|
|
197 |
} else {
|
198 |
$error = $this->getError();
|
199 |
if (isset($error['message'])) {
|
414 |
if ($this->getPaymentAction() != MageBase_DpsPaymentExpress_Model_Method_Common::ACTION_COMPLETE
|
415 |
&& $this->getPaymentAction() != MageBase_DpsPaymentExpress_Model_Method_Common::ACTION_REFUND
|
416 |
) {
|
417 |
+
if (abs((float)$resultXml->Transaction[0]->Amount - sprintf("%9.2f", $order->getBaseGrandTotal())) > 0.0005) {
|
418 |
Mage::log("Error in DPS Response Validation: Mismatched totals", null, self::DPS_LOG_FILENAME);
|
419 |
return false;
|
420 |
}
|
585 |
return $store;
|
586 |
}
|
587 |
|
588 |
+
/**
|
589 |
+
* Can be used in regular checkout
|
590 |
+
*
|
591 |
+
* @return bool
|
592 |
+
*/
|
593 |
+
public function canUseCheckout()
|
594 |
+
{
|
595 |
+
$this->_canUseCheckout = Mage::getStoreConfigFlag(
|
596 |
+
'payment/' . $this->_code . '/frontend_checkout', $this->getStore()
|
597 |
+
);
|
598 |
+
return $this->_canUseCheckout;
|
599 |
+
}
|
600 |
}
|
app/code/community/MageBase/DpsPaymentExpress/Model/Observer.php
CHANGED
@@ -9,6 +9,18 @@ class MageBase_DpsPaymentExpress_Model_Observer
|
|
9 |
$result->setShouldProceed(false);
|
10 |
}
|
11 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12 |
}
|
13 |
|
14 |
|
9 |
$result->setShouldProceed(false);
|
10 |
}
|
11 |
}
|
12 |
+
|
13 |
+
public function addMageOneFourConfig($observer)
|
14 |
+
{
|
15 |
+
if (version_compare(Mage::getVersion(), '1.5.0.0', '<')) {
|
16 |
+
$file = Mage::getModuleDir('etc', 'MageBase_DpsPaymentExpress') . DS . 'config-1.4.xml';
|
17 |
+
$config = Mage::getConfig();
|
18 |
+
$prototype = new Mage_Core_Model_Config_Base();
|
19 |
+
$prototype->loadFile($file);
|
20 |
+
$config->extend($prototype);
|
21 |
+
$config->saveCache();
|
22 |
+
}
|
23 |
+
}
|
24 |
}
|
25 |
|
26 |
|
app/code/community/MageBase/DpsPaymentExpress/etc/config-1.4.xml
ADDED
@@ -0,0 +1,33 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0"?>
|
2 |
+
<config>
|
3 |
+
<global>
|
4 |
+
<sales>
|
5 |
+
<order>
|
6 |
+
<statuses>
|
7 |
+
<pending_dps translate="label">
|
8 |
+
<label>Pending Payment (DPS)</label>
|
9 |
+
</pending_dps>
|
10 |
+
<processing_dps_auth translate="label">
|
11 |
+
<label>Processing (DPS - Amount authorised)</label>
|
12 |
+
</processing_dps_auth>
|
13 |
+
<processing_dps_paid translate="label">
|
14 |
+
<label>Processing (DPS - Amount paid)</label>
|
15 |
+
</processing_dps_paid>
|
16 |
+
</statuses>
|
17 |
+
<states>
|
18 |
+
<pending_payment>
|
19 |
+
<statuses>
|
20 |
+
<pending_dps/>
|
21 |
+
</statuses>
|
22 |
+
</pending_payment>
|
23 |
+
<processing>
|
24 |
+
<statuses>
|
25 |
+
<processing_dps_auth/>
|
26 |
+
<processing_dps_paid/>
|
27 |
+
</statuses>
|
28 |
+
</processing>
|
29 |
+
</states>
|
30 |
+
</order>
|
31 |
+
</sales>
|
32 |
+
</global>
|
33 |
+
</config>
|
app/code/community/MageBase/DpsPaymentExpress/etc/config.xml
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
<config>
|
3 |
<modules>
|
4 |
<MageBase_DpsPaymentExpress>
|
5 |
-
<version>1.5.
|
6 |
</MageBase_DpsPaymentExpress>
|
7 |
</modules>
|
8 |
<global>
|
@@ -49,28 +49,6 @@
|
|
49 |
</connection>
|
50 |
</magebasedps_read>
|
51 |
</resources>
|
52 |
-
<sales>
|
53 |
-
<order>
|
54 |
-
<statuses>
|
55 |
-
<pending_dps translate="label"><label>Pending Payment (DPS)</label></pending_dps>
|
56 |
-
<processing_dps_auth translate="label"><label>Processing (DPS - Amount authorised)</label></processing_dps_auth>
|
57 |
-
<processing_dps_paid translate="label"><label>Processing (DPS - Amount paid)</label></processing_dps_paid>
|
58 |
-
</statuses>
|
59 |
-
<states>
|
60 |
-
<pending_payment>
|
61 |
-
<statuses>
|
62 |
-
<pending_dps/>
|
63 |
-
</statuses>
|
64 |
-
</pending_payment>
|
65 |
-
<processing>
|
66 |
-
<statuses>
|
67 |
-
<processing_dps_auth/>
|
68 |
-
<processing_dps_paid/>
|
69 |
-
</statuses>
|
70 |
-
</processing>
|
71 |
-
</states>
|
72 |
-
</order>
|
73 |
-
</sales>
|
74 |
<payment>
|
75 |
<cc>
|
76 |
<types>
|
@@ -82,6 +60,18 @@
|
|
82 |
</types>
|
83 |
</cc>
|
84 |
</payment>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
85 |
</global>
|
86 |
<frontend>
|
87 |
<events>
|
@@ -116,6 +106,7 @@
|
|
116 |
<payment>
|
117 |
<magebasedpspxpost>
|
118 |
<active>0</active>
|
|
|
119 |
<postusername/>
|
120 |
<postpassword/>
|
121 |
<cctypes>VI,MC</cctypes>
|
@@ -132,6 +123,7 @@
|
|
132 |
</magebasedpspxpost>
|
133 |
<magebasedpspxpay>
|
134 |
<active>0</active>
|
|
|
135 |
<model>magebasedps/method_pxpay</model>
|
136 |
<pxpayuserid/>
|
137 |
<pxpaykey/>
|
2 |
<config>
|
3 |
<modules>
|
4 |
<MageBase_DpsPaymentExpress>
|
5 |
+
<version>1.5.8</version>
|
6 |
</MageBase_DpsPaymentExpress>
|
7 |
</modules>
|
8 |
<global>
|
49 |
</connection>
|
50 |
</magebasedps_read>
|
51 |
</resources>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
52 |
<payment>
|
53 |
<cc>
|
54 |
<types>
|
60 |
</types>
|
61 |
</cc>
|
62 |
</payment>
|
63 |
+
<events>
|
64 |
+
<controller_front_init_before>
|
65 |
+
<observers>
|
66 |
+
<magebasedpsDynamicRewrite>
|
67 |
+
<!-- on Magento pre 1.5.0.0 adds order statuses -->
|
68 |
+
<type>model</type>
|
69 |
+
<class>MageBase_DpsPaymentExpress_Model_Observer</class>
|
70 |
+
<method>addMageOneFourConfig</method>
|
71 |
+
</magebasedpsDynamicRewrite>
|
72 |
+
</observers>
|
73 |
+
</controller_front_init_before>
|
74 |
+
</events>
|
75 |
</global>
|
76 |
<frontend>
|
77 |
<events>
|
106 |
<payment>
|
107 |
<magebasedpspxpost>
|
108 |
<active>0</active>
|
109 |
+
<frontend_checkout>1</frontend_checkout>
|
110 |
<postusername/>
|
111 |
<postpassword/>
|
112 |
<cctypes>VI,MC</cctypes>
|
123 |
</magebasedpspxpost>
|
124 |
<magebasedpspxpay>
|
125 |
<active>0</active>
|
126 |
+
<frontend_checkout>1</frontend_checkout>
|
127 |
<model>magebasedps/method_pxpay</model>
|
128 |
<pxpayuserid/>
|
129 |
<pxpaykey/>
|
app/code/community/MageBase/DpsPaymentExpress/etc/system.xml
CHANGED
@@ -20,6 +20,15 @@
|
|
20 |
<show_in_website>1</show_in_website>
|
21 |
<show_in_store>0</show_in_store>
|
22 |
</active>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
23 |
<title translate="label">
|
24 |
<label>Title</label>
|
25 |
<frontend_type>text</frontend_type>
|
@@ -156,6 +165,15 @@
|
|
156 |
<show_in_website>1</show_in_website>
|
157 |
<show_in_store>0</show_in_store>
|
158 |
</active>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
159 |
<title translate="label">
|
160 |
<label>Title</label>
|
161 |
<frontend_type>text</frontend_type>
|
20 |
<show_in_website>1</show_in_website>
|
21 |
<show_in_store>0</show_in_store>
|
22 |
</active>
|
23 |
+
<frontend_checkout translate="label">
|
24 |
+
<label>Use in Frontend Checkout</label>
|
25 |
+
<frontend_type>select</frontend_type>
|
26 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
27 |
+
<sort_order>2</sort_order>
|
28 |
+
<show_in_default>1</show_in_default>
|
29 |
+
<show_in_website>1</show_in_website>
|
30 |
+
<show_in_store>0</show_in_store>
|
31 |
+
</frontend_checkout>
|
32 |
<title translate="label">
|
33 |
<label>Title</label>
|
34 |
<frontend_type>text</frontend_type>
|
165 |
<show_in_website>1</show_in_website>
|
166 |
<show_in_store>0</show_in_store>
|
167 |
</active>
|
168 |
+
<frontend_checkout translate="label">
|
169 |
+
<label>Use in Frontend Checkout</label>
|
170 |
+
<frontend_type>select</frontend_type>
|
171 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
172 |
+
<sort_order>2</sort_order>
|
173 |
+
<show_in_default>1</show_in_default>
|
174 |
+
<show_in_website>1</show_in_website>
|
175 |
+
<show_in_store>0</show_in_store>
|
176 |
+
</frontend_checkout>
|
177 |
<title translate="label">
|
178 |
<label>Title</label>
|
179 |
<frontend_type>text</frontend_type>
|
app/code/community/MageBase/DpsPaymentExpress/sql/magebasedps_setup/mysql4-upgrade-1.2.5-1.3.0.php
CHANGED
@@ -20,11 +20,25 @@
|
|
20 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
21 |
*/
|
22 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
23 |
$installer = $this;
|
24 |
/* @var $installer MageBase_DpsPaymentExpress_Model_Mysql4_Setup */
|
25 |
|
26 |
$installer->startSetup();
|
27 |
-
if(version_compare(Mage::getVersion(),'1.5.0.0','>=')){
|
28 |
$newOrderStatusses = array();
|
29 |
$newOrderStatusses[] = array(
|
30 |
'status'=> 'pending_dps',
|
@@ -43,16 +57,7 @@ if(version_compare(Mage::getVersion(),'1.5.0.0','>=')){
|
|
43 |
);
|
44 |
|
45 |
foreach ($newOrderStatusses as $newOrderStatus) {
|
46 |
-
|
47 |
-
if($status->getStatus()) {
|
48 |
-
//skip existing
|
49 |
-
continue;
|
50 |
-
}
|
51 |
-
$status = Mage::getModel('sales/order_status');
|
52 |
-
$status->setStatus($newOrderStatus['status']);
|
53 |
-
$status->setLabel($newOrderStatus['label']);
|
54 |
-
$status->save();
|
55 |
-
$status->assignState($newOrderStatus['state'], 0);
|
56 |
}
|
57 |
}
|
58 |
$installer->endSetup();
|
20 |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
21 |
*/
|
22 |
|
23 |
+
function createNewStatus($newOrderStatus)
|
24 |
+
{
|
25 |
+
$status = Mage::getModel('sales/order_status')->load($newOrderStatus['status']);
|
26 |
+
if ($status->getId()) {
|
27 |
+
//skip existing
|
28 |
+
return;
|
29 |
+
}
|
30 |
+
$status = Mage::getModel('sales/order_status');
|
31 |
+
$status->setStatus($newOrderStatus['status']);
|
32 |
+
$status->setLabel($newOrderStatus['label']);
|
33 |
+
$status->save();
|
34 |
+
$status->assignState($newOrderStatus['state'], 0);
|
35 |
+
}
|
36 |
+
|
37 |
$installer = $this;
|
38 |
/* @var $installer MageBase_DpsPaymentExpress_Model_Mysql4_Setup */
|
39 |
|
40 |
$installer->startSetup();
|
41 |
+
if (version_compare(Mage::getVersion(), '1.5.0.0', '>=')) {
|
42 |
$newOrderStatusses = array();
|
43 |
$newOrderStatusses[] = array(
|
44 |
'status'=> 'pending_dps',
|
57 |
);
|
58 |
|
59 |
foreach ($newOrderStatusses as $newOrderStatus) {
|
60 |
+
createNewStatus($newOrderStatus);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
61 |
}
|
62 |
}
|
63 |
$installer->endSetup();
|
app/design/frontend/base/default/template/magebase/dps/pxpost/form.phtml
CHANGED
@@ -161,6 +161,11 @@
|
|
161 |
<?php foreach($_logos as $_logo): ?>
|
162 |
<img src="<?php echo $this->getSkinUrl('images/magebase/dps/'.$_logo); ?>" alt="" />
|
163 |
<?php endforeach ?>
|
|
|
|
|
|
|
|
|
|
|
164 |
</li>
|
165 |
<?php endif;?>
|
166 |
</ul>
|
161 |
<?php foreach($_logos as $_logo): ?>
|
162 |
<img src="<?php echo $this->getSkinUrl('images/magebase/dps/'.$_logo); ?>" alt="" />
|
163 |
<?php endforeach ?>
|
164 |
+
|
165 |
+
<a href="http://www.paymentexpress.com/About/About_DPS/Privacy_Policy" target="_blank">
|
166 |
+
<img src="<?php echo $this->getSkinUrl('images/magebase/dps/dpspxlogo.png'); ?>" alt="DPS"/><br/>
|
167 |
+
<small>DPS <?php echo $this->__('Privacy Policy') ?></small>
|
168 |
+
</a>
|
169 |
</li>
|
170 |
<?php endif;?>
|
171 |
</ul>
|
package.xml
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>MageBase_DpsPaymentExpress</name>
|
4 |
-
<version>1.5.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://www.opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
|
7 |
<channel>community</channel>
|
@@ -12,9 +12,9 @@
|
|
12 |
configurable if sending invoice or order confirmation email
|
13 |
automatic page reload of success page due to connection error</notes>
|
14 |
<authors><author><name>Kristof Ringleff</name><user>auto-converted</user><email>info@magebase.com</email></author><author><name>Kristof Ringleff</name><user>auto-converted</user><email>info@magebase.com</email></author></authors>
|
15 |
-
<date>2013-
|
16 |
-
<time>
|
17 |
-
<contents><target name="magecommunity"><dir name="MageBase"><dir name="DpsPaymentExpress"><dir name="Block"><dir name="Pxpay"><file name="Form.php" hash="0513bd45150f03dab2c2b08dc0456de8"/><file name="Info.php" hash="dbf4f7b363d04d120199380dc2365a49"/></dir><dir name="Pxpost"><file name="Form.php" hash="fde018518598b03e892c43f636c14fa6"/><file name="Info.php" hash="32fd512cb7ade17f751b9385c90e04fd"/></dir></dir><dir name="Helper"><file name="Data.php" hash="
|
18 |
<compatible/>
|
19 |
<dependencies/>
|
20 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>MageBase_DpsPaymentExpress</name>
|
4 |
+
<version>1.5.8</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://www.opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
|
7 |
<channel>community</channel>
|
12 |
configurable if sending invoice or order confirmation email
|
13 |
automatic page reload of success page due to connection error</notes>
|
14 |
<authors><author><name>Kristof Ringleff</name><user>auto-converted</user><email>info@magebase.com</email></author><author><name>Kristof Ringleff</name><user>auto-converted</user><email>info@magebase.com</email></author></authors>
|
15 |
+
<date>2013-09-20</date>
|
16 |
+
<time>02:12:37</time>
|
17 |
+
<contents><target name="magecommunity"><dir name="MageBase"><dir name="DpsPaymentExpress"><dir name="Block"><dir name="Pxpay"><file name="Form.php" hash="0513bd45150f03dab2c2b08dc0456de8"/><file name="Info.php" hash="dbf4f7b363d04d120199380dc2365a49"/></dir><dir name="Pxpost"><file name="Form.php" hash="fde018518598b03e892c43f636c14fa6"/><file name="Info.php" hash="32fd512cb7ade17f751b9385c90e04fd"/></dir></dir><dir name="Helper"><file name="Data.php" hash="e9f335c708965e76a794b175c29d7299"/></dir><dir name="Model"><dir name="Method"><file name="Common.php" hash="125088f66804fac7c44af8084f60f755"/><file name="Pxpay.php" hash="067bf55c077007f2a7745f16642739f5"/><file name="Pxpost.php" hash="ec5672148dad359dd697e5ad4636f197"/></dir><dir name="Mysql4"><dir name="Debug"><file name="Collection.php" hash="6ef2919222f3dcb32599349245e76214"/></dir><file name="Debug.php" hash="56eb2bc341b9cb4ba8d9ae239169766e"/><file name="Setup.php" hash="8a395090a44fda7530548abd2d87835e"/></dir><dir name="System"><file name="InvoiceConfig.php" hash="1759209b7c34c8d6234894c25384d423"/><file name="Logos.php" hash="bfca463fa7d292fbd2b69a33d332d55a"/><file name="PaymentAction.php" hash="0be4f9a5c602b2d2723203ec56f51a8c"/><file name="PendingOrder.php" hash="31d7bd6f5fad8e1fa4315d32d123be0f"/></dir><file name="Debug.php" hash="dadf96f68c9cf4d09aad73ff0bacab0e"/><file name="Observer.php" hash="839408f7a4cee3ce2fa637e59fd90c23"/></dir><dir name="controllers"><file name="PxpayController.php" hash="0e93ea82b9452070600dec1be9df9aa3"/></dir><dir name="etc"><file name="config-1.4.xml" hash="bf4a7cb912271d30624d53a240f7a612"/><file name="config.xml" hash="fcf0829bbc4a9d449de5f8e2e8d796ba"/><file name="system.xml" hash="2e02e33d383d0fd4838c49d066b05790"/></dir><dir name="sql"><dir name="magebasedps_setup"><file name="mysql4-install-0.5.0.php" hash="c512ded8c0dd63b1dcd8e8cbfb5893e8"/><file name="mysql4-upgrade-0.5.0-1.0.0.php" hash="6dbc67541449a0f2d43460acb9b6bbff"/><file name="mysql4-upgrade-1.2.5-1.3.0.php" hash="0136d93e9b741febf3d1a6802efb82da"/></dir></dir></dir></dir></target><target name="mage"><dir name="app"><dir name="etc"><dir name="modules"><file name="MageBase_DpsPaymentExpress.xml" hash="fae6ba260c006016d14d9a508d17cf14"/></dir></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="images"><dir name="magebase"><dir name="dps"><file name="AmexLogo.png" hash="775a3f26a4b5f7a6201b1331e4fe5579"/><file name="DinersLogo.png" hash="64500fdde86e960ac894f7cf0c44b2d8"/><file name="JCBLogo.png" hash="73f9e8b87c6c2dbf252bbb0de43591bc"/><file name="MCSecureCodeLogo.png" hash="9f31e5ccadd98dc15d0110d0e3b450f7"/><file name="MasterCardLogo.png" hash="801014f81e405cec951076f4080b04f5"/><file name="VisaLogo.png" hash="17173fb8723d34cea61a50c01c4845ed"/><file name="VisaVerifiedLogo.png" hash="af7f6a27a6449a50d1d623d925585c47"/><file name="dpslogo.png" hash="a79b9df3fe45acb4b714cabed162ebda"/><file name="dpspxlogo.png" hash="31b1338586485c872a0f39a41813b248"/></dir></dir></dir></dir></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="template"><dir name="magebase"><dir name="dps"><dir name="pxpay"><file name="form.phtml" hash="d1ec1d94031a875ba2819c5f799899c7"/><file name="info.phtml" hash="c53fb2bf0a1afdc81fac85afc15b35e3"/><file name="successproblem.phtml" hash="3c800184f106995844be8d9fabf6e8bf"/></dir><dir name="pxpost"><file name="form.phtml" hash="a4602fd81ac65be2dc2bd2be4a16142c"/><file name="info.phtml" hash="d2fd0f5603342e235ae8cd6ce1346ce2"/></dir></dir></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="magebase"><dir name="dps"><dir name="pxpay"><dir name="pdf"><file name="pxpay.phtml" hash="30691a7b7eddbf52217c2d8194fe3f52"/></dir><file name="form.phtml" hash="1b6d58c3bde68990b743c93a9be529aa"/><file name="info.phtml" hash="d939e3cf2d98bb2fc4eaa2f61c47d4cb"/></dir><dir name="pxpost"><dir name="pdf"><file name="pxpost.phtml" hash="81e5f3b568e748460a5ca61e42138f8e"/></dir><file name="form.phtml" hash="7d1fa5e90ed0627b93ff7343d4bf019f"/><file name="info.phtml" hash="ab01500bd35ed87210f93c22ac19685a"/></dir></dir></dir></dir></dir></dir></dir></target></contents>
|
18 |
<compatible/>
|
19 |
<dependencies/>
|
20 |
</package>
|