Version Notes
stable release
Download this release
Release Info
| Developer | Magento Core Team |
| Extension | ET_PaymentRobokassa |
| Version | 1.0.10 |
| Comparing to | |
| See all releases | |
Code changes from version 1.0.7 to 1.0.10
- app/code/community/ET/PaymentRobokassa/Block/Adminhtml/System/Config/Form/Field/CallbackUrls.php +1 -1
- app/code/community/ET/PaymentRobokassa/Helper/Data.php +2 -2
- app/code/community/ET/PaymentRobokassa/controllers/GateController.php +19 -7
- app/code/community/ET/PaymentRobokassa/etc/config.xml +1 -1
- package.xml +4 -4
app/code/community/ET/PaymentRobokassa/Block/Adminhtml/System/Config/Form/Field/CallbackUrls.php
CHANGED
|
@@ -26,7 +26,7 @@ class ET_PaymentRobokassa_Block_Adminhtml_System_Config_Form_Field_CallbackUrls
|
|
| 26 |
return sprintf(
|
| 27 |
'<tr class="system-fieldset-sub-head" id="row_%s"><td colspan="5"><h4 id="%s">%s</h4></td></tr>' .
|
| 28 |
'<tr><td colspan="5"><span>' . $this->__("You have to set callback links for your shop in your account on Robokassa website to make extension work.") . '</span></td></tr>' .
|
| 29 |
-
'<tr><td class="label"><label>' . $this->__("Result URL") . '</label></td><td class="value">' . $baseUrl . 'etrobokassa/
|
| 30 |
'<tr><td class="label"><label>' . $this->__("Success URL") . '</label></td><td class="value">' . $baseUrl . 'etrobokassa/success<p class="note"><span>' . $this->__("POST or GET data transfer method") . '</span></p></td></tr>' .
|
| 31 |
'<tr><td class="label"><label>' . $this->__("Failure URL") . '</label></td><td class="value">' . $baseUrl . 'etrobokassa/failure<p class="note"><span>' . $this->__("POST or GET data transfer method") . '</span></p></td></tr>' .
|
| 32 |
'<tr><td class="label"><label>' . $this->__("Documentation") . '</label></td><td class="value"><a href="http://shop.etwebsolutions.com/eng/et-payment-robokassa.html#documentation">http://shop.etwebsolutions.com/eng/et-payment-robokassa.html#documentation</a></td></tr>',
|
| 26 |
return sprintf(
|
| 27 |
'<tr class="system-fieldset-sub-head" id="row_%s"><td colspan="5"><h4 id="%s">%s</h4></td></tr>' .
|
| 28 |
'<tr><td colspan="5"><span>' . $this->__("You have to set callback links for your shop in your account on Robokassa website to make extension work.") . '</span></td></tr>' .
|
| 29 |
+
'<tr><td class="label"><label>' . $this->__("Result URL") . '</label></td><td class="value">' . $baseUrl . 'etrobokassa/status<p class="note"><span>' . $this->__("POST or GET data transfer method") . '</span></p></td></tr>' .
|
| 30 |
'<tr><td class="label"><label>' . $this->__("Success URL") . '</label></td><td class="value">' . $baseUrl . 'etrobokassa/success<p class="note"><span>' . $this->__("POST or GET data transfer method") . '</span></p></td></tr>' .
|
| 31 |
'<tr><td class="label"><label>' . $this->__("Failure URL") . '</label></td><td class="value">' . $baseUrl . 'etrobokassa/failure<p class="note"><span>' . $this->__("POST or GET data transfer method") . '</span></p></td></tr>' .
|
| 32 |
'<tr><td class="label"><label>' . $this->__("Documentation") . '</label></td><td class="value"><a href="http://shop.etwebsolutions.com/eng/et-payment-robokassa.html#documentation">http://shop.etwebsolutions.com/eng/et-payment-robokassa.html#documentation</a></td></tr>',
|
app/code/community/ET/PaymentRobokassa/Helper/Data.php
CHANGED
|
@@ -1,4 +1,5 @@
|
|
| 1 |
<?php
|
|
|
|
| 2 |
/**
|
| 3 |
* NOTICE OF LICENSE
|
| 4 |
*
|
|
@@ -16,7 +17,6 @@
|
|
| 16 |
* @contacts support@etwebsolutions.com
|
| 17 |
* @license http://shop.etwebsolutions.com/etws-license-free-v1/ ETWS Free License (EFL1)
|
| 18 |
*/
|
| 19 |
-
|
| 20 |
class ET_PaymentRobokassa_Helper_Data extends Mage_Core_Helper_Abstract
|
| 21 |
{
|
| 22 |
|
|
@@ -59,7 +59,7 @@ class ET_PaymentRobokassa_Helper_Data extends Mage_Core_Helper_Abstract
|
|
| 59 |
Mage::dispatchEvent('robokassa_log_file_write_before', $message);
|
| 60 |
$forLog = array();
|
| 61 |
foreach ($message as $answerKey => $answerValue) {
|
| 62 |
-
$forLog[] = $answerKey . ": " . $answerValue;
|
| 63 |
}
|
| 64 |
$forLog[] = '***************************';
|
| 65 |
$message = implode("\r\n", $forLog);
|
| 1 |
<?php
|
| 2 |
+
|
| 3 |
/**
|
| 4 |
* NOTICE OF LICENSE
|
| 5 |
*
|
| 17 |
* @contacts support@etwebsolutions.com
|
| 18 |
* @license http://shop.etwebsolutions.com/etws-license-free-v1/ ETWS Free License (EFL1)
|
| 19 |
*/
|
|
|
|
| 20 |
class ET_PaymentRobokassa_Helper_Data extends Mage_Core_Helper_Abstract
|
| 21 |
{
|
| 22 |
|
| 59 |
Mage::dispatchEvent('robokassa_log_file_write_before', $message);
|
| 60 |
$forLog = array();
|
| 61 |
foreach ($message as $answerKey => $answerValue) {
|
| 62 |
+
$forLog[] = $answerKey . ": " . (is_array($answerValue) ? print_r($answerValue, true) : $answerValue);
|
| 63 |
}
|
| 64 |
$forLog[] = '***************************';
|
| 65 |
$message = implode("\r\n", $forLog);
|
app/code/community/ET/PaymentRobokassa/controllers/GateController.php
CHANGED
|
@@ -1,4 +1,5 @@
|
|
| 1 |
<?php
|
|
|
|
| 2 |
/**
|
| 3 |
* NOTICE OF LICENSE
|
| 4 |
*
|
|
@@ -16,7 +17,6 @@
|
|
| 16 |
* @contacts support@etwebsolutions.com
|
| 17 |
* @license http://shop.etwebsolutions.com/etws-license-free-v1/ ETWS Free License (EFL1)
|
| 18 |
*/
|
| 19 |
-
|
| 20 |
class ET_PaymentRobokassa_GateController extends Mage_Core_Controller_Front_Action
|
| 21 |
{
|
| 22 |
const MODULENAME = "etpaymentrobokassa";
|
|
@@ -40,6 +40,8 @@ class ET_PaymentRobokassa_GateController extends Mage_Core_Controller_Front_Acti
|
|
| 40 |
$helper = Mage::helper("etpaymentrobokassa");
|
| 41 |
$session = Mage::getSingleton('checkout/session');
|
| 42 |
$state = Mage_Sales_Model_Order::STATE_NEW;
|
|
|
|
|
|
|
| 43 |
$status = Mage::getStoreConfig('payment/etrobokassa/order_status');
|
| 44 |
if (strlen($status) == 0) {
|
| 45 |
//$status = 'pending';
|
|
@@ -66,8 +68,8 @@ class ET_PaymentRobokassa_GateController extends Mage_Core_Controller_Front_Acti
|
|
| 66 |
if (!$payment) {
|
| 67 |
$payment = Mage::getSingleton("etpaymentrobokassa/method_etrobokassa");
|
| 68 |
}
|
| 69 |
-
|
| 70 |
$dataForSending = $payment->preparePaymentData($order);
|
|
|
|
| 71 |
$dataForSending = array_merge(array('Data transfer' => 'To Robokassa'), $dataForSending);
|
| 72 |
$helper->log($dataForSending);
|
| 73 |
$this->getResponse()->setHeader('Content-type', 'text/html; charset=UTF8');
|
|
@@ -82,7 +84,6 @@ class ET_PaymentRobokassa_GateController extends Mage_Core_Controller_Front_Acti
|
|
| 82 |
/** @var $helper ET_PaymentRobokassa_Helper_Data */
|
| 83 |
$helper = Mage::helper("etpaymentrobokassa");
|
| 84 |
$state = Mage_Sales_Model_Order::STATE_PROCESSING;
|
| 85 |
-
$paidStatus = 'paid_robokassa';
|
| 86 |
$errorStatus = 'error_robokassa';
|
| 87 |
$answer = $this->getRequest()->getParams();
|
| 88 |
$payment = Mage::getSingleton(self::MODULENAME . "/method_" . self::PAYMENTNAME);
|
|
@@ -92,7 +93,9 @@ class ET_PaymentRobokassa_GateController extends Mage_Core_Controller_Front_Acti
|
|
| 92 |
$order = Mage::getModel('sales/order')->loadByIncrementId($payment->getOrderId($answer));
|
| 93 |
//true un success, false on fail or array of text on error
|
| 94 |
|
| 95 |
-
$
|
|
|
|
|
|
|
| 96 |
|
| 97 |
if (is_array($checkedAnswer)) {
|
| 98 |
$answer['Errors'] = $helper->arrayToRawData($checkedAnswer);
|
|
@@ -111,18 +114,27 @@ class ET_PaymentRobokassa_GateController extends Mage_Core_Controller_Front_Acti
|
|
| 111 |
Mage::dispatchEvent('robokassa_success_answer_without_error', $result);
|
| 112 |
if ($order->getState() == Mage_Sales_Model_Order::STATE_NEW) {
|
| 113 |
if ($order->canInvoice()) {
|
| 114 |
-
|
| 115 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 116 |
$order->addRelatedObject($invoice);
|
| 117 |
}
|
|
|
|
|
|
|
|
|
|
| 118 |
$result = $this->_sendEmailAfterPaymentSuccess($order);
|
|
|
|
| 119 |
$order->setState($state,
|
| 120 |
$paidStatus,
|
| 121 |
$this->__($helper->__('The amount has been authorized and captured by Robokassa.')),
|
| 122 |
$result);
|
| 123 |
$order->save();
|
| 124 |
}
|
| 125 |
-
print 'OK' . $
|
| 126 |
} else {
|
| 127 |
if ($order->getId()) {
|
| 128 |
$order->addStatusToHistory($errorStatus, implode(" / ", $checkedAnswer), false);
|
| 1 |
<?php
|
| 2 |
+
|
| 3 |
/**
|
| 4 |
* NOTICE OF LICENSE
|
| 5 |
*
|
| 17 |
* @contacts support@etwebsolutions.com
|
| 18 |
* @license http://shop.etwebsolutions.com/etws-license-free-v1/ ETWS Free License (EFL1)
|
| 19 |
*/
|
|
|
|
| 20 |
class ET_PaymentRobokassa_GateController extends Mage_Core_Controller_Front_Action
|
| 21 |
{
|
| 22 |
const MODULENAME = "etpaymentrobokassa";
|
| 40 |
$helper = Mage::helper("etpaymentrobokassa");
|
| 41 |
$session = Mage::getSingleton('checkout/session');
|
| 42 |
$state = Mage_Sales_Model_Order::STATE_NEW;
|
| 43 |
+
|
| 44 |
+
//todo брать $status из настроек подмодулей
|
| 45 |
$status = Mage::getStoreConfig('payment/etrobokassa/order_status');
|
| 46 |
if (strlen($status) == 0) {
|
| 47 |
//$status = 'pending';
|
| 68 |
if (!$payment) {
|
| 69 |
$payment = Mage::getSingleton("etpaymentrobokassa/method_etrobokassa");
|
| 70 |
}
|
|
|
|
| 71 |
$dataForSending = $payment->preparePaymentData($order);
|
| 72 |
+
|
| 73 |
$dataForSending = array_merge(array('Data transfer' => 'To Robokassa'), $dataForSending);
|
| 74 |
$helper->log($dataForSending);
|
| 75 |
$this->getResponse()->setHeader('Content-type', 'text/html; charset=UTF8');
|
| 84 |
/** @var $helper ET_PaymentRobokassa_Helper_Data */
|
| 85 |
$helper = Mage::helper("etpaymentrobokassa");
|
| 86 |
$state = Mage_Sales_Model_Order::STATE_PROCESSING;
|
|
|
|
| 87 |
$errorStatus = 'error_robokassa';
|
| 88 |
$answer = $this->getRequest()->getParams();
|
| 89 |
$payment = Mage::getSingleton(self::MODULENAME . "/method_" . self::PAYMENTNAME);
|
| 93 |
$order = Mage::getModel('sales/order')->loadByIncrementId($payment->getOrderId($answer));
|
| 94 |
//true un success, false on fail or array of text on error
|
| 95 |
|
| 96 |
+
$orderPaymentMethod = $order->getPayment()->getMethodInstance();
|
| 97 |
+
|
| 98 |
+
$checkedAnswer = $orderPaymentMethod->checkAnswerData($answer);
|
| 99 |
|
| 100 |
if (is_array($checkedAnswer)) {
|
| 101 |
$answer['Errors'] = $helper->arrayToRawData($checkedAnswer);
|
| 114 |
Mage::dispatchEvent('robokassa_success_answer_without_error', $result);
|
| 115 |
if ($order->getState() == Mage_Sales_Model_Order::STATE_NEW) {
|
| 116 |
if ($order->canInvoice()) {
|
| 117 |
+
//for partial invoice
|
| 118 |
+
if (!($qtys = $orderPaymentMethod->getInvoiceQtys($order))) {
|
| 119 |
+
$qtys = array();
|
| 120 |
+
}
|
| 121 |
+
$invoice = $order->prepareInvoice($qtys);
|
| 122 |
+
$invoice->register();
|
| 123 |
+
$invoice->capture();
|
| 124 |
$order->addRelatedObject($invoice);
|
| 125 |
}
|
| 126 |
+
if (!($paidStatus = $orderPaymentMethod->getPaidStatus())) {
|
| 127 |
+
$paidStatus = 'paid_robokassa';
|
| 128 |
+
}
|
| 129 |
$result = $this->_sendEmailAfterPaymentSuccess($order);
|
| 130 |
+
|
| 131 |
$order->setState($state,
|
| 132 |
$paidStatus,
|
| 133 |
$this->__($helper->__('The amount has been authorized and captured by Robokassa.')),
|
| 134 |
$result);
|
| 135 |
$order->save();
|
| 136 |
}
|
| 137 |
+
print 'OK' . $orderPaymentMethod->getOrderId($answer);
|
| 138 |
} else {
|
| 139 |
if ($order->getId()) {
|
| 140 |
$order->addStatusToHistory($errorStatus, implode(" / ", $checkedAnswer), false);
|
app/code/community/ET/PaymentRobokassa/etc/config.xml
CHANGED
|
@@ -22,7 +22,7 @@
|
|
| 22 |
<modules>
|
| 23 |
<ET_PaymentRobokassa>
|
| 24 |
<name>ET Payment Robokassa</name>
|
| 25 |
-
<version>1.0.
|
| 26 |
<descr>
|
| 27 |
<ru_RU><![CDATA[Платёжный модуль Robokassa. Позволяет использовать сервис приёма платежей Robokassa (robokassa.ru) на вашем Magento сайте.]]>
|
| 28 |
</ru_RU>
|
| 22 |
<modules>
|
| 23 |
<ET_PaymentRobokassa>
|
| 24 |
<name>ET Payment Robokassa</name>
|
| 25 |
+
<version>1.0.10</version>
|
| 26 |
<descr>
|
| 27 |
<ru_RU><![CDATA[Платёжный модуль Robokassa. Позволяет использовать сервис приёма платежей Robokassa (robokassa.ru) на вашем Magento сайте.]]>
|
| 28 |
</ru_RU>
|
package.xml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>ET_PaymentRobokassa</name>
|
| 4 |
-
<version>1.0.
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license uri="http://shop.etwebsolutions.com/eng/etws-license-free-v1">ETWS Free License (EFL1)</license>
|
| 7 |
<channel>community</channel>
|
|
@@ -10,9 +10,9 @@
|
|
| 10 |
<description>_Free payment extension ET Payment Robokassa allows you to use payment gateway Robokassa (robokassa.ru) on your website._</description>
|
| 11 |
<notes>stable release</notes>
|
| 12 |
<authors><author><name>Jurij</name><user>auto-converted</user><email>support@etwebsolutions.com</email></author><author><name>Andrej</name><user>auto-converted</user><email>support@etwebsolutions.com</email></author></authors>
|
| 13 |
-
<date>2015-03
|
| 14 |
-
<time>
|
| 15 |
-
<contents><target name="magecommunity"><dir name="ET"><dir name="PaymentRobokassa"><dir name="Block"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Form"><dir name="Field"><file name="CallbackUrls.php" hash="
|
| 16 |
<compatible/>
|
| 17 |
<dependencies/>
|
| 18 |
</package>
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>ET_PaymentRobokassa</name>
|
| 4 |
+
<version>1.0.10</version>
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license uri="http://shop.etwebsolutions.com/eng/etws-license-free-v1">ETWS Free License (EFL1)</license>
|
| 7 |
<channel>community</channel>
|
| 10 |
<description>_Free payment extension ET Payment Robokassa allows you to use payment gateway Robokassa (robokassa.ru) on your website._</description>
|
| 11 |
<notes>stable release</notes>
|
| 12 |
<authors><author><name>Jurij</name><user>auto-converted</user><email>support@etwebsolutions.com</email></author><author><name>Andrej</name><user>auto-converted</user><email>support@etwebsolutions.com</email></author></authors>
|
| 13 |
+
<date>2015-08-03</date>
|
| 14 |
+
<time>09:31:34</time>
|
| 15 |
+
<contents><target name="magecommunity"><dir name="ET"><dir name="PaymentRobokassa"><dir name="Block"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Form"><dir name="Field"><file name="CallbackUrls.php" hash="6be5442c8ce4351462596606713ed92f"/><file name="Heading.php" hash="71c419849070047ca9f024b08ea2cd1e"/><file name="Linktoinfo.php" hash="c4dc4b21897d093dbd9736c3079ce03b"/><file name="Linktooptions.php" hash="687813f8551ed509486fc7da6dc60540"/></dir></dir></dir></dir><file name="Support.php" hash="1e98b88c9d5a482c9f698637f3db0c21"/></dir><dir name="Single"><file name="Form.php" hash="748fa65742a34d66a80209dad81f23ea"/><file name="Info.php" hash="6ca2b3f7f318164f520144419ac3720e"/></dir><file name="Error.php" hash="9915cfd47f14285dcacbfc5f82442e78"/><file name="Form.php" hash="3f3773311e029601aa6755fd2fc6a7f2"/><file name="Info.php" hash="3fc0ac20cd14002acdf8deff3359c68e"/><file name="Redirect.php" hash="45e05f5cc2869584eb90bd0a05e8fbc1"/></dir><dir name="Controller"><file name="Router.php" hash="8271139fa6af2cd57d6a5f45d767d4a1"/></dir><dir name="Helper"><file name="Data.php" hash="303e7391671a4b289e86d02f4b432063"/></dir><dir name="Model"><dir name="Method"><file name="Etrobokassa.php" hash="d33e1721a9bb54ea821574771dcc4543"/></dir><file name="Culture.php" hash="1f549bdc0bcb2dcf53b656bcf2bc4677"/><file name="Paysystem.php" hash="7c081594dc111b4698da9c55be70ecca"/></dir><dir name="controllers"><file name="GateController.php" hash="3c08792fd618b60d5c4aff0d9bd6bb5b"/></dir><dir name="etc"><file name="config.xml" hash="2bff920d346a47f282f42b6c4756e585"/><file name="system.xml" hash="0883de56d65e4732dfe588fda8378338"/></dir><dir name="sql"><dir name="etpaymentrobokassa_setup"><file name="mysql4-install-1.0.0.php" hash="550cabe108b7453b09d2de7e8720459d"/></dir></dir></dir></dir></target><target name="magelocale"><dir name="ru_RU"><file name="ET_PaymentRobokassa.csv" hash="d01d3b5d7c66f80b02053293b3a06ce6"/></dir><dir name="en_US"><file name="ET_PaymentRobokassa.csv" hash="d41d8cd98f00b204e9800998ecf8427e"/></dir></target><target name="mageetc"><dir name="modules"><file name="ET_PaymentRobokassa.xml" hash="29a6a6d442729714e93aded22ce4b1b2"/></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="template"><dir name="et_paymentrobokassa"><dir name="single"><file name="form.phtml" hash="ffdb96cd7677d5b256a49bb8fe5d9145"/><file name="info.phtml" hash="460b5111ae8b9d78e0a320c5878cc30d"/></dir></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="et_paymentrobokassa"><dir name="single"><file name="form.phtml" hash="594645a04acfd21185ba89fbc3752f60"/><file name="info.phtml" hash="460b5111ae8b9d78e0a320c5878cc30d"/></dir></dir></dir></dir></dir></dir></target></contents>
|
| 16 |
<compatible/>
|
| 17 |
<dependencies/>
|
| 18 |
</package>
|
