Eupago_MB - Version 1.1.8

Version Notes

[EN] - callback update
[PT] - update de callback

Download this release

Release Info

Developer Eupago
Extension Eupago_MB
Version 1.1.8
Comparing to
See all releases


Code changes from version 1.1.7 to 1.1.8

app/code/community/Eupago/Multibanco/Model/Multibanco.php CHANGED
@@ -98,15 +98,20 @@ class Eupago_Multibanco_Model_Multibanco extends Mage_Payment_Model_Method_Abstr
98
  if($result == false) {
99
  $errorMsg = $this->_getHelper()->__('Error Processing the request');
100
  } else {
101
- if($result->estado_referencia == 'paga' || $result->estado_referencia == 'transferida'){
 
102
  // neste sistema altera logo para pago
103
  $payment->setTransactionId($referencia."-capture");
104
  $payment->setParentTransactionId($referencia);
105
  $payment->setTransactionAdditionalInfo(Mage_Sales_Model_Order_Payment_Transaction::RAW_DETAILS,array('referencia'=>$referencia,'resposta'=>$result->resposta,'method'=>'MULTIBANCO', "data de pagamento"=>$result->data_pagamento, "hora de pagamento"=>$result->hora_pagamento));
106
  $payment->setIsTransactionClosed(true);
107
  }else{
108
- $errorMsg = "a referencia não se encontra paga";
109
- Mage::log("pedido com erro: ".$errorMsg, null, 'eupago_multibanco.log');
 
 
 
 
110
  }
111
  }
112
 
98
  if($result == false) {
99
  $errorMsg = $this->_getHelper()->__('Error Processing the request');
100
  } else {
101
+ if(($result->estado_referencia == 'paga' || $result->estado_referencia == 'transferida')
102
+ && $payment->getOrder()->getBaseTotalDue() == $result->valor){
103
  // neste sistema altera logo para pago
104
  $payment->setTransactionId($referencia."-capture");
105
  $payment->setParentTransactionId($referencia);
106
  $payment->setTransactionAdditionalInfo(Mage_Sales_Model_Order_Payment_Transaction::RAW_DETAILS,array('referencia'=>$referencia,'resposta'=>$result->resposta,'method'=>'MULTIBANCO', "data de pagamento"=>$result->data_pagamento, "hora de pagamento"=>$result->hora_pagamento));
107
  $payment->setIsTransactionClosed(true);
108
  }else{
109
+ if($payment->getOrder()->getBaseTotalDue() != $result->valor)
110
+ $errorMsg ="o valor pago não corresponde ao valor da encomenda";
111
+ else
112
+ $errorMsg = "a referência não se encontra paga";
113
+
114
+ Mage::log("\nincrementId: ".$payment->getOrder()->getIncrementId()."\nentidade: ".$entidade."\nreferencia: ".$referencia."\nerro: ". $errorMsg , null, 'eupago_multibanco.log');
115
  }
116
  }
117
 
app/code/community/Eupago/Multibanco/Model/Observer.php ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Eupago_Multibanco_Model_Observer
4
+ {
5
+ public function pendingPaymentState($observer)
6
+ {
7
+ $order = $observer->getOrder();
8
+ $method = $order->getPayment()->getMethodInstance();
9
+ if ($method->getCode() == 'multibanco')
10
+ $order->setState(Mage_Sales_Model_Order::STATE_PENDING_PAYMENT, true, 'A aguardar pagamento por multibanco');
11
+ }
12
+
13
+ public function sendInvoiceEmail($observer)
14
+ {
15
+ $invoice = $observer->getEvent()->getInvoice();
16
+ $order = $invoice->getOrder();
17
+ $method = $order->getPayment()->getMethodInstance();
18
+ $sendEmail = Mage::getStoreConfig('payment/multibanco/send_invoice_email');
19
+ if ($method->getCode() == 'multibanco' && $sendEmail){
20
+ $invoice->sendEmail();
21
+ }
22
+ }
23
+ }
app/code/community/Eupago/Multibanco/controllers/CallbackController.php CHANGED
@@ -165,7 +165,6 @@ class Eupago_Multibanco_CallbackController extends Mage_Core_Controller_Front_Ac
165
  $CallBack_referencia = $CallBack['referencia'];
166
  $CallBack_chave_api = $CallBack['chave_api'];
167
  $CallBack_orderId = $CallBack['identificador'];
168
- $CallBack_autorizacao = $CallBack['autorizacao'];
169
 
170
  ////// dados de encomenda
171
  $OrderNumber = $CallBack_orderId; //$CallBack_orderId vaem da api Eupago[order-id]
@@ -237,11 +236,9 @@ class Eupago_Multibanco_CallbackController extends Mage_Core_Controller_Front_Ac
237
 
238
  /////// gera autorizacao
239
  $chave_api = Mage::getStoreConfig('payment/multibanco/chave');
240
- $autorizacao = md5(date('Y-m-d').$chave_api);
241
 
242
  //////// Confere dados
243
  $confere_montantes = (($valor_encomenda == $valor_gerado) == $CallBack_valor ? true : false);
244
- $confere_autorizacao = ($autorizacao == $CallBack_autorizacao ? true : false);
245
  $confere_referencia = ($referencia == $CallBack_referencia ? true : false);
246
  $confere_chave_api = ($CallBack_chave_api == $chave_api ? true : false);
247
 
165
  $CallBack_referencia = $CallBack['referencia'];
166
  $CallBack_chave_api = $CallBack['chave_api'];
167
  $CallBack_orderId = $CallBack['identificador'];
 
168
 
169
  ////// dados de encomenda
170
  $OrderNumber = $CallBack_orderId; //$CallBack_orderId vaem da api Eupago[order-id]
236
 
237
  /////// gera autorizacao
238
  $chave_api = Mage::getStoreConfig('payment/multibanco/chave');
 
239
 
240
  //////// Confere dados
241
  $confere_montantes = (($valor_encomenda == $valor_gerado) == $CallBack_valor ? true : false);
 
242
  $confere_referencia = ($referencia == $CallBack_referencia ? true : false);
243
  $confere_chave_api = ($CallBack_chave_api == $chave_api ? true : false);
244
 
app/code/community/Eupago/Multibanco/etc/config.xml CHANGED
@@ -21,6 +21,26 @@
21
  <class>Eupago_Multibanco_Model</class>
22
  </multibanco>
23
  </models>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
24
  </global>
25
  <frontend>
26
  <routers>
21
  <class>Eupago_Multibanco_Model</class>
22
  </multibanco>
23
  </models>
24
+ <events>
25
+ <sales_order_place_after>
26
+ <observers>
27
+ <namespace_module_order_observer>
28
+ <type>singleton</type>
29
+ <class>multibanco/observer</class>
30
+ <method>pendingPaymentState</method>
31
+ </namespace_module_order_observer>
32
+ </observers>
33
+ </sales_order_place_after>
34
+ <sales_order_invoice_save_after>
35
+ <observers>
36
+ <namespace_module_order_observer>
37
+ <type>singleton</type>
38
+ <class>multibanco/observer</class>
39
+ <method>sendInvoiceEmail</method>
40
+ </namespace_module_order_observer>
41
+ </observers>
42
+ </sales_order_invoice_save_after>
43
+ </events>
44
  </global>
45
  <frontend>
46
  <routers>
app/code/community/Eupago/Multibanco/etc/system.xml CHANGED
@@ -36,15 +36,16 @@
36
  <show_in_website>0</show_in_website>
37
  <show_in_store>0</show_in_store>
38
  </chave>
39
- <order_status translate="label">
40
- <label>New order status</label>
 
41
  <frontend_type>select</frontend_type>
42
- <source_model>adminhtml/system_config_source_order_status_new</source_model>
43
  <sort_order>4</sort_order>
44
  <show_in_default>1</show_in_default>
45
  <show_in_website>1</show_in_website>
46
  <show_in_store>0</show_in_store>
47
- </order_status>
48
  <mostra_icon translate="label">
49
  <label>Show icon</label>
50
  <comment>Mostra icon do multibanco na listagem de metodos de pagamento antes do titulo</comment>
36
  <show_in_website>0</show_in_website>
37
  <show_in_store>0</show_in_store>
38
  </chave>
39
+ <send_invoice_email translate="label">
40
+ <label>Send Invoice email</label>
41
+ <comment>Envia o email de confirmação de pagamento (invoice email)</comment>
42
  <frontend_type>select</frontend_type>
43
+ <source_model>adminhtml/system_config_source_yesno</source_model>
44
  <sort_order>4</sort_order>
45
  <show_in_default>1</show_in_default>
46
  <show_in_website>1</show_in_website>
47
  <show_in_store>0</show_in_store>
48
+ </send_invoice_email>
49
  <mostra_icon translate="label">
50
  <label>Show icon</label>
51
  <comment>Mostra icon do multibanco na listagem de metodos de pagamento antes do titulo</comment>
package.xml CHANGED
@@ -1,7 +1,7 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Eupago_MB</name>
4
- <version>1.1.7</version>
5
  <stability>stable</stability>
6
  <license>GNU General Public License (GPL)</license>
7
  <channel>community</channel>
@@ -11,9 +11,9 @@
11
  <notes>[EN] - callback update&#xD;
12
  [PT] - update de callback</notes>
13
  <authors><author><name>Eupago</name><user>eupago</user><email>suporte@eupago.pt</email></author></authors>
14
- <date>2016-12-19</date>
15
- <time>14:55:06</time>
16
- <contents><target name="magecommunity"><dir name="Eupago"><dir name="Multibanco"><dir name="Block"><dir name="Form"><file name="Multibanco.php" hash="a526f756cd407a159a5438efefa0d66f"/></dir><dir name="Info"><file name="Multibanco.php" hash="7cec344b458fb7f5b0eb49b488434e7a"/></dir><dir name="Onepage"><file name="Success.php" hash="9da0851f53a89abeb25602d3c94a2612"/></dir></dir><dir name="Model"><file name="Multibanco.php" hash="d9f2858be6fe35eeffd9eaa8f9a884f1"/><dir name="System"><dir name="Config"><file name="Template.php" hash="fd636ddfc0a57d9e904ceb913415398d"/></dir></dir></dir><dir name="controllers"><file name="CallbackController.php" hash="d98230353a1e96c1ddb395fdc6aa63a6"/></dir><dir name="etc"><file name="config.xml" hash="179d01bf0777fd0c2e4e49e86282abce"/><file name="system.xml" hash="f25b77b36ec9b9cddbbd4131b861bcd7"/></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Eupago_Multibanco.xml" hash="87ee673b7cd7ec1dbc44cf2a0ef0f0c3"/></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="template"><dir name="eupago"><dir name="multibanco"><dir name="checkout"><file name="success.phtml" hash="65c0fbce628ecdb41855475826cbbc2b"/></dir><dir name="info"><file name="default.phtml" hash="587ea28be59d4ac1c18c857e429382da"/><file name="multibanco.phtml" hash="f53da809c80956f983751d67a4a037ba"/></dir></dir></dir></dir><dir name="layout"><file name="eupago_multibanco.xml" hash="e3fbf5f655164991b363b305e09b0953"/></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="eupago"><dir name="multibanco"><dir name="info"><file name="multibanco.phtml" hash="47d133c69fb6121b648037995c868740"/></dir></dir></dir></dir></dir></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="images"><dir name="eupago"><dir name="multibanco"><file name="eupago_mb_p.png" hash="6db08f88f1f4770337db63105a4f0f08"/><file name="multibanco_icon.png" hash="87425d6e05c42ae6780b16ca8379d97a"/></dir></dir></dir></dir></dir></dir></target></contents>
17
  <compatible/>
18
  <dependencies><required><php><min>5.2.0</min><max>7.0.0</max></php></required></dependencies>
19
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Eupago_MB</name>
4
+ <version>1.1.8</version>
5
  <stability>stable</stability>
6
  <license>GNU General Public License (GPL)</license>
7
  <channel>community</channel>
11
  <notes>[EN] - callback update&#xD;
12
  [PT] - update de callback</notes>
13
  <authors><author><name>Eupago</name><user>eupago</user><email>suporte@eupago.pt</email></author></authors>
14
+ <date>2016-12-22</date>
15
+ <time>18:14:24</time>
16
+ <contents><target name="magecommunity"><dir name="Eupago"><dir name="Multibanco"><dir name="Block"><dir name="Form"><file name="Multibanco.php" hash="a526f756cd407a159a5438efefa0d66f"/></dir><dir name="Info"><file name="Multibanco.php" hash="7cec344b458fb7f5b0eb49b488434e7a"/></dir><dir name="Onepage"><file name="Success.php" hash="9da0851f53a89abeb25602d3c94a2612"/></dir></dir><dir name="Model"><file name="Multibanco.php" hash="a895caf1316c5a7f5e6a37d4133b6909"/><file name="Observer.php" hash="e2d025bab8e439827612ce09f65030b7"/><dir name="System"><dir name="Config"><file name="Template.php" hash="fd636ddfc0a57d9e904ceb913415398d"/></dir></dir></dir><dir name="controllers"><file name="CallbackController.php" hash="942d0b1ceaa5d08a08350ba5b595c454"/></dir><dir name="etc"><file name="config.xml" hash="a9ed46d49a7020a0f8e78ab3dfc7b351"/><file name="system.xml" hash="13d06d18f927ed9f43b47f34d6a8c399"/></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Eupago_Multibanco.xml" hash="87ee673b7cd7ec1dbc44cf2a0ef0f0c3"/></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="template"><dir name="eupago"><dir name="multibanco"><dir name="checkout"><file name="success.phtml" hash="65c0fbce628ecdb41855475826cbbc2b"/></dir><dir name="info"><file name="default.phtml" hash="587ea28be59d4ac1c18c857e429382da"/><file name="multibanco.phtml" hash="f53da809c80956f983751d67a4a037ba"/></dir></dir></dir></dir><dir name="layout"><file name="eupago_multibanco.xml" hash="e3fbf5f655164991b363b305e09b0953"/></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="eupago"><dir name="multibanco"><dir name="info"><file name="multibanco.phtml" hash="47d133c69fb6121b648037995c868740"/></dir></dir></dir></dir></dir></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="images"><dir name="eupago"><dir name="multibanco"><file name="eupago_mb_p.png" hash="6db08f88f1f4770337db63105a4f0f08"/><file name="multibanco_icon.png" hash="87425d6e05c42ae6780b16ca8379d97a"/></dir></dir></dir></dir></dir></dir></target></contents>
17
  <compatible/>
18
  <dependencies><required><php><min>5.2.0</min><max>7.0.0</max></php></required></dependencies>
19
  </package>