Iridiumcorp_Tpg - Version 1.9.0

Version Notes

SERVER_PULL delivery method implemented.

Download this release

Release Info

Developer Magento Core Team
Extension Iridiumcorp_Tpg
Version 1.9.0
Comparing to
See all releases


Code changes from version 1.8.2 to 1.9.0

app/code/local/Iridiumcorp/Tpg/Model/Direct.php CHANGED
@@ -398,7 +398,6 @@ class Iridiumcorp_Tpg_Model_Direct extends Mage_Payment_Model_Method_Abstract
398
 
399
  $szMerchantID = $this->getConfigData('merchantid');
400
  $szPassword = $this->getConfigData('password');
401
- $szCallbackURL = Mage::getUrl('tpg/payment/callbackhostedpayment');
402
  $szPreSharedKey = $this->getConfigData('presharedkey');
403
  $hmHashMethod = $this->getConfigData('hashmethod');
404
  $boCV2Mandatory = 'false';
@@ -408,9 +407,23 @@ class Iridiumcorp_Tpg_Model_Direct extends Mage_Payment_Model_Method_Abstract
408
  $boStateMandatory = 'false';
409
  $boCountryMandatory = 'false';
410
  $rdmResultdeliveryMethod = $this->getConfigData('resultdeliverymethod');
411
- $szServerResultURL = Mage::getUrl('tpg/payment/serverresult');
412
- // set to always true to display the result on the Hosted Payment Form
413
- $boPaymentFormDisplaysResult = 'true';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
414
 
415
  $order = $payment->getOrder();
416
  $billingAddress = $order->getBillingAddress();
398
 
399
  $szMerchantID = $this->getConfigData('merchantid');
400
  $szPassword = $this->getConfigData('password');
 
401
  $szPreSharedKey = $this->getConfigData('presharedkey');
402
  $hmHashMethod = $this->getConfigData('hashmethod');
403
  $boCV2Mandatory = 'false';
407
  $boStateMandatory = 'false';
408
  $boCountryMandatory = 'false';
409
  $rdmResultdeliveryMethod = $this->getConfigData('resultdeliverymethod');
410
+ $szServerResultURL = '';
411
+ $boPaymentFormDisplaysResult = '';
412
+
413
+ switch($rdmResultdeliveryMethod)
414
+ {
415
+ case Iridiumcorp_Tpg_Model_Source_ResultDeliveryMethod::RESULT_DELIVERY_METHOD_POST:
416
+ $szCallbackURL = Mage::getUrl('tpg/payment/callbackhostedpayment');
417
+ break;
418
+ case Iridiumcorp_Tpg_Model_Source_ResultDeliveryMethod::RESULT_DELIVERY_METHOD_SERVER:
419
+ $szCallbackURL = Mage::getUrl('tpg/payment/callbackhostedpayment');
420
+ $szServerResultURL = Mage::getUrl('tpg/payment/serverresult');
421
+ $boPaymentFormDisplaysResult = 'true';
422
+ break;
423
+ case Iridiumcorp_Tpg_Model_Source_ResultDeliveryMethod::RESULT_DELIVERY_METHOD_SERVER_PULL:
424
+ $szCallbackURL = Mage::getUrl('tpg/payment/serverpullresult');
425
+ break;
426
+ }
427
 
428
  $order = $payment->getOrder();
429
  $billingAddress = $order->getBillingAddress();
app/code/local/Iridiumcorp/Tpg/Model/Source/ResultDeliveryMethod.php CHANGED
@@ -5,6 +5,7 @@ class Iridiumcorp_Tpg_Model_Source_ResultDeliveryMethod
5
  // public enum for the payment types
6
  const RESULT_DELIVERY_METHOD_POST = 'POST';
7
  const RESULT_DELIVERY_METHOD_SERVER = 'SERVER';
 
8
 
9
  public function toOptionArray()
10
  {
@@ -18,6 +19,10 @@ class Iridiumcorp_Tpg_Model_Source_ResultDeliveryMethod
18
  'value' => self::RESULT_DELIVERY_METHOD_SERVER,
19
  'label' => Mage::helper('tpg')->__('Server')
20
  ),
 
 
 
 
21
  );
22
  }
23
  }
5
  // public enum for the payment types
6
  const RESULT_DELIVERY_METHOD_POST = 'POST';
7
  const RESULT_DELIVERY_METHOD_SERVER = 'SERVER';
8
+ const RESULT_DELIVERY_METHOD_SERVER_PULL = 'SERVER_PULL';
9
 
10
  public function toOptionArray()
11
  {
19
  'value' => self::RESULT_DELIVERY_METHOD_SERVER,
20
  'label' => Mage::helper('tpg')->__('Server')
21
  ),
22
+ array(
23
+ 'value' => self::RESULT_DELIVERY_METHOD_SERVER_PULL,
24
+ 'label' => Mage::helper('tpg')->__('Server Pull')
25
+ ),
26
  );
27
  }
28
  }
app/code/local/Iridiumcorp/Tpg/Model/Tpg/GlobalErrors.php CHANGED
@@ -20,5 +20,17 @@ class Iridiumcorp_Tpg_Model_Tpg_GlobalErrors
20
 
21
  // failure - occurred during the processing of the data in the callback from the 3D Secure Authentication page
22
  const ERROR_7655 = "3D Secure payment was not successfull and checkout was cancelled.<br/>Please check your credit card details and try again.";
 
 
 
 
 
 
 
 
 
 
 
 
23
  }
24
  ?>
20
 
21
  // failure - occurred during the processing of the data in the callback from the 3D Secure Authentication page
22
  const ERROR_7655 = "3D Secure payment was not successfull and checkout was cancelled.<br/>Please check your credit card details and try again.";
23
+
24
+ // failure - server pull result related error: no URL variable present in the payment form to merchant webshop redirection
25
+ const ERROR_309 ="ERROR 309: Missing parameters.";
26
+
27
+ // failure - server pull result related error: OrderID or CrossReference is missing from the URL variable list
28
+ const ERROR_304 = "ERROR 304: The payment was rejected for a SECURITY reason: the incoming payment data was tampered with.";
29
+
30
+ // faulire - server pull result related error: Magento web request to the hosted PaymentFormHandler failed while trying to retrieve the transaction details using the CrossReference
31
+ const ERROR_329 = "ERROR 329: Error happened while trying to validate the transaction result.";
32
+
33
+ // failure - server pull result related error: empty response due to invalid CrossReference
34
+ const ERROR_381 = "ERROR 381: Invalid transaction details.";
35
  }
36
  ?>
app/code/local/Iridiumcorp/Tpg/Model/Tpg/PaymentFormHelper.php CHANGED
@@ -442,6 +442,69 @@
442
  return $boMatch;
443
  }
444
 
445
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
446
  }
447
  ?>
442
  return $boMatch;
443
  }
444
 
445
+ /**
446
+ * Convert a URL string to a name value array collection
447
+ *
448
+ * @param unknown_type $szInputVariableString
449
+ * @return unknown
450
+ */
451
+ public static function getVariableCollectionFromString($szInputVariableString)
452
+ {
453
+ $arVariableCollection = array();
454
+
455
+ $arURLVariableArray = explode('&', $szInputVariableString);
456
+ for($nCount = 0; $nCount < sizeof($arURLVariableArray); $nCount++)
457
+ {
458
+ $szNameValue = $arURLVariableArray[$nCount];
459
+ $arNameValue = explode('=', $szNameValue);
460
+ if(sizeof($arNameValue) == 1)
461
+ {
462
+ $arVariableCollection[$arNameValue[0]] = '';
463
+ }
464
+ else
465
+ {
466
+ $arVariableCollection[$arNameValue[0]] = $arNameValue[1];
467
+ }
468
+ }
469
+
470
+ return ($arVariableCollection);
471
+ }
472
+
473
+ /**
474
+ * Hash validator mechanism for the SERVER and SERVER_PULL methods
475
+ *
476
+ * @param unknown_type $formVariables
477
+ * @param unknown_type $szPassword
478
+ * @param unknown_type $hmHashMethod
479
+ * @param unknown_type $szPreSharedKey
480
+ */
481
+ public static function compareServerHashDigest($formVariables, $szPassword, $hmHashMethod, $szPreSharedKey)
482
+ {
483
+ $boMatch = false;
484
+ $szHashDigest = isset($formVariables['HashDigest']) ? $formVariables['HashDigest'] : false;
485
+ $szMerchantID = isset($formVariables['MerchantID']) ? $formVariables['MerchantID'] : false;
486
+ $szCrossReference = isset($formVariables['CrossReference']) ? $formVariables['CrossReference'] : false;
487
+ $szOrderID = isset($formVariables['OrderID']) ? $formVariables['OrderID'] : false;
488
+
489
+ $szStringBeforeHash = 'MerchantID='.$szMerchantID.'&'.
490
+ 'Password='.$szPassword.'&'.
491
+ 'CrossReference='.$szCrossReference.'&'.
492
+ 'OrderID='.$szOrderID;
493
+
494
+ if ($hmHashMethod == Iridiumcorp_Tpg_Model_Source_HashMethod::HASH_METHOD_MD5 ||
495
+ $hmHashMethod == Iridiumcorp_Tpg_Model_Source_HashMethod::HASH_METHOD_SHA1)
496
+ {
497
+ $szStringBeforeHash = 'PreSharedKey='.$szPreSharedKey.'&'.$szStringBeforeHash;
498
+ }
499
+
500
+ $szCalculatedHashDigest = self::_hashCalculator($hmHashMethod, $szPreSharedKey, $szStringBeforeHash);
501
+
502
+ if(strtoupper($szHashDigest) === strtoupper($szCalculatedHashDigest))
503
+ {
504
+ $boMatch = true;
505
+ }
506
+
507
+ return $boMatch;
508
+ }
509
  }
510
  ?>
app/code/local/Iridiumcorp/Tpg/controllers/PaymentController.php CHANGED
@@ -286,6 +286,144 @@ class Iridiumcorp_Tpg_PaymentController extends Mage_Core_Controller_Front_Actio
286
  }
287
  }
288
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
289
  /**
290
  * Action logic for handling the result set from the Transparent Redirect page
291
  *
286
  }
287
  }
288
 
289
+ /*
290
+ * Action logic to handle the SERVER_PUSH web request to the PaymentFormResultHandler.ashx to get the transaction result details
291
+ */
292
+ public function serverpullresultAction()
293
+ {
294
+ $boError = false;
295
+ $nStartIndex = false;
296
+ //
297
+ $szHashDigest = false;
298
+ $szMerchantID = false;// password, presharedkey, hashmethod
299
+ $szCrossReference = false;
300
+ $szOrderID = false;
301
+ //
302
+ $nErrorNumber = false;
303
+ $szErrorMessage = false;
304
+ $model = Mage::getModel('tpg/direct');
305
+ $checkout = Mage::getSingleton('checkout/type_onepage');
306
+ $szServerPullURL = $model->getConfigData('serverpullresultactionurl');
307
+ $szMerchantID = $model->getConfigData('merchantid');
308
+ $szPassword = $model->getConfigData('password');
309
+ $hmHashMethod = $model->getConfigData('hashmethod');
310
+ $szPreSharedKey = $model->getConfigData('presharedkey');
311
+ $szURLVariableString = $this->getRequest()->getRequestUri();
312
+ $nStartIndex = strpos($szURLVariableString, "?");
313
+
314
+ if(!is_int($nStartIndex))
315
+ {
316
+ $szErrorMessage = Iridiumcorp_Tpg_Model_Tpg_GlobalErrors::ERROR_309;
317
+ Mage::log(Iridiumcorp_Tpg_Model_Tpg_GlobalErrors::ERROR_309." Request URI: ".$szURLVariableString);
318
+ }
319
+ else
320
+ {
321
+ $szURLVariableString = substr($szURLVariableString, $nStartIndex + 1);
322
+ $arFormVariables = IRC_PaymentFormHelper::getVariableCollectionFromString($szURLVariableString);
323
+
324
+ if(!IRC_PaymentFormHelper::compareServerHashDigest($arFormVariables, $szPassword, $hmHashMethod, $szPreSharedKey))
325
+ {
326
+ // report an error message
327
+ $szErrorMessage = Iridiumcorp_Tpg_Model_Tpg_GlobalErrors::ERROR_304;
328
+ }
329
+ else
330
+ {
331
+ $szOrderID = $arFormVariables["OrderID"];
332
+ $szCrossReference = $arFormVariables["CrossReference"];
333
+ $szPostFields = "MerchantID=".$szMerchantID."&Password=".$szPassword."&CrossReference=".$szCrossReference;
334
+
335
+ $cCurl = curl_init();
336
+ curl_setopt($cCurl, CURLOPT_URL, $szServerPullURL);
337
+ curl_setopt($cCurl, CURLOPT_POST, true);
338
+ curl_setopt($cCurl, CURLOPT_POSTFIELDS, $szPostFields);
339
+ curl_setopt($cCurl, CURLOPT_RETURNTRANSFER, 1);
340
+ curl_setopt($cCurl, CURLOPT_ENCODING, "UTF-8");
341
+ curl_setopt($cCurl, CURLOPT_SSL_VERIFYPEER, false);
342
+ curl_setopt($cCurl, CURLOPT_SSL_VERIFYHOST, false);
343
+
344
+ $response = curl_exec($cCurl);
345
+ $nErrorNumber = curl_errno($cCurl);
346
+ $szErrorMessage = curl_error($cCurl);
347
+ curl_close($cCurl);
348
+
349
+ if(is_int($nErrorNumber) &&
350
+ $nErrorNumber > 0)
351
+ {
352
+ Mage::log("Error happened while trying to retrieve the transaction result details for a SERVER_PULL method for CrossReference: ".$szCrossReference.". Error code: ".$nErrorNumber.", message: ".$szErrorMessage);
353
+ // suppress the message and use customer friendly instead
354
+ $szErrorMessage = Iridiumcorp_Tpg_Model_Tpg_GlobalErrors::ERROR_329." Message: ".$szErrorMessage;
355
+ }
356
+ else
357
+ {
358
+ // synchronize of the Magento backend with the transcation result
359
+ try
360
+ {
361
+ // get the response items
362
+ $responseItems = IRC_PaymentFormHelper::getVariableCollectionFromString($response);
363
+
364
+ $szStatusCode = $responseItems["StatusCode"];
365
+ $szMessage = $responseItems["Message"];
366
+ $transactionResult = $responseItems["TransactionResult"];
367
+
368
+ if($szStatusCode !== '0')
369
+ {
370
+ $szErrorMessage = Iridiumcorp_Tpg_Model_Tpg_GlobalErrors::ERROR_381;
371
+ $szErrorMessage .= " Message: ".$szMessage;
372
+ }
373
+ else
374
+ {
375
+ // URL decode the transaction result variable and get the transaction result sub variables
376
+ $transactionResult = urldecode($transactionResult);
377
+ $transactionResult = IRC_PaymentFormHelper::getVariableCollectionFromString($transactionResult);
378
+ // create the order item in the Magento backend
379
+ $szStatusCode = isset($transactionResult["StatusCode"]) ? $transactionResult["StatusCode"] : false;
380
+ $szMessage = isset($transactionResult["Message"]) ? $transactionResult["Message"] : false;
381
+ $szPreviousStatusCode = $szStatusCode;
382
+ $szPreviousMessage = $szMessage;
383
+
384
+ $checkout->saveOrderAfterRedirectedPaymentAction(true,
385
+ $szStatusCode,
386
+ $szMessage,
387
+ $szPreviousStatusCode,
388
+ $szPreviousMessage,
389
+ $szOrderID);
390
+ }
391
+ }
392
+ catch(Exception $exc)
393
+ {
394
+ $boError = true;
395
+ $szErrorMessage = $exc->getMessage();
396
+ Mage::logException($exc);
397
+ }
398
+ }
399
+ }
400
+ }
401
+
402
+ if($szErrorMessage)
403
+ {
404
+ Mage::getSingleton('core/session')->addError($szErrorMessage);
405
+ $this->_redirect('checkout/onepage/failure');
406
+ }
407
+ else
408
+ {
409
+ $order = Mage::getModel('sales/order');
410
+
411
+ // set the quote as inactive after back from paypal
412
+ Mage::getSingleton('checkout/session')->getQuote()->setIsActive(false)->save();
413
+
414
+ // send confirmation email to customer
415
+ $order->load(Mage::getSingleton('checkout/session')->getLastOrderId());
416
+
417
+ if($order->getId())
418
+ {
419
+ $order->sendNewOrderEmail();
420
+ }
421
+
422
+ Mage::getSingleton('core/session')->addSuccess('Payment Processor Response: '.$szMessage);
423
+ $this->_redirect('checkout/onepage/success', array('_secure' => true));
424
+ }
425
+ }
426
+
427
  /**
428
  * Action logic for handling the result set from the Transparent Redirect page
429
  *
app/code/local/Iridiumcorp/Tpg/etc/config.xml CHANGED
@@ -86,6 +86,7 @@
86
  <paymentprocessorport>443</paymentprocessorport>
87
  <hostedpaymentactionurl>https://mms.iridiumcorp.net/Pages/PublicPages/PaymentForm.aspx</hostedpaymentactionurl>
88
  <transparentredirectactionurl>https://mms.iridiumcorp.net/Pages/PublicPages/TransparentRedirect.aspx</transparentredirectactionurl>
 
89
  <payment_action>capture</payment_action>
90
  <mode>direct</mode>
91
  <cv2mandatory>1</cv2mandatory>
86
  <paymentprocessorport>443</paymentprocessorport>
87
  <hostedpaymentactionurl>https://mms.iridiumcorp.net/Pages/PublicPages/PaymentForm.aspx</hostedpaymentactionurl>
88
  <transparentredirectactionurl>https://mms.iridiumcorp.net/Pages/PublicPages/TransparentRedirect.aspx</transparentredirectactionurl>
89
+ <serverpullresultactionurl>https://mms.iridiumcorp.net/Pages/PublicPages/PaymentFormResultHandler.ashx</serverpullresultactionurl>
90
  <payment_action>capture</payment_action>
91
  <mode>direct</mode>
92
  <cv2mandatory>1</cv2mandatory>
app/code/local/Iridiumcorp/Tpg/etc/system.xml CHANGED
@@ -136,6 +136,14 @@
136
  <show_in_website>1</show_in_website>
137
  <show_in_store>0</show_in_store>
138
  </transparentredirectactionurl>
 
 
 
 
 
 
 
 
139
  <cv2mandatory>
140
  <label>CV2 Mandatory <![CDATA[<span style="color:Red;font-weight:bold;font-size:12px;">(ON FORM ONLY)</span>]]></label>
141
  <sort_order>140</sort_order>
136
  <show_in_website>1</show_in_website>
137
  <show_in_store>0</show_in_store>
138
  </transparentredirectactionurl>
139
+ <serverpullresultactionurl>
140
+ <label>Server Pull Result Action URL</label>
141
+ <frontend_type>label</frontend_type>
142
+ <sort_order>133</sort_order>
143
+ <show_in_default>1</show_in_default>
144
+ <show_in_website>1</show_in_website>
145
+ <show_in_store>0</show_in_store>
146
+ </serverpullresultactionurl>
147
  <cv2mandatory>
148
  <label>CV2 Mandatory <![CDATA[<span style="color:Red;font-weight:bold;font-size:12px;">(ON FORM ONLY)</span>]]></label>
149
  <sort_order>140</sort_order>
package.xml CHANGED
@@ -1,18 +1,18 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Iridiumcorp_Tpg</name>
4
- <version>1.8.2</version>
5
  <stability>stable</stability>
6
  <license>OSL v3.0</license>
7
  <channel>community</channel>
8
  <extends/>
9
  <summary>Iridium Payment Extension</summary>
10
  <description>Magento payment extension for the Iridium payment gateway. This extension fully supports the processing of 3D secure (Verified By Visa and Mastercard SecureCode) transactions. It also supports all of the integration methods provided by Iridium.</description>
11
- <notes>ServerResult action exception message included in the Message response variable</notes>
12
  <authors><author><name>Iridium Support</name><user>auto-converted</user><email>support@iridiumcorp.co.uk</email></author><author><name>Benjamin Kovac</name><user>auto-converted</user><email>ben.kovac@iridiumcorp.co.uk</email></author></authors>
13
- <date>2010-08-04</date>
14
- <time>15:46:41</time>
15
- <contents><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="tpg"><file name="form.phtml" hash="9b2afd627d6e9e4f9ad43b0a7153962b"/><file name="info.phtml" hash="a907d4bc506e8d75f5998a42242985f3"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="default"><dir name="default"><dir name="template"><dir name="tpg"><file name="form.phtml" hash="231e39bb2821718eeaec4c1d0ee3233d"/><file name="info.phtml" hash="6ab2a83f89fb6cb66740a505b6b8bc4e"/></dir></dir></dir></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="default"><dir name="default"><dir name="images"><file name="iridium_corporation.jpg" hash="589faaa1b7e80b32a425175ecfc3b455"/></dir></dir></dir></dir></target><target name="magelocal"><dir name="Iridiumcorp"><dir name="Checkout"><dir name="Block"><dir name="Onepage"><dir name="Payment"><file name="Methods.php" hash="a10e1c19ad7bb8718dcb3adf9d3e4de0"/></dir></dir></dir><dir name="etc"><file name="config.xml" hash="aaa95b6e1d6e145940bf9ba9bbe1dc0f"/></dir><dir name="Model"><dir name="Type"><file name="Onepage.php" hash="913717a50f7cf02f5668f698d39add35"/></dir></dir></dir><dir name="Sales"><dir name="etc"><file name="config.xml" hash="5def01c2198f4033cd647dc40fb8e297"/></dir><dir name="Model"><file name="Order.php" hash="f4040067afcda49f8a6d747a434786be"/><dir name="Order"><file name="Invoice.php" hash="0da517143d8c83606fb51721043e7be1"/></dir></dir></dir><dir name="Tpg"><dir name="Block"><file name="Error.php" hash="905367210beb53a0bc68dc6033e24127"/><file name="Form.php" hash="4b1d51aa84982486f3139510c41a221a"/><file name="Info.php" hash="f88445c4880bfe14914252bc76b6fc28"/><file name="Redirect.php" hash="a91a8a8f8b5ad887ed2cdd8d52732b8b"/><file name="Threedsecure.php" hash="6143c058d311287ff189cd149062e73b"/></dir><dir name="controllers"><file name="PaymentController.php" hash="d487efb67f47a34c8ab3b6f1b0e3f5a1"/></dir><dir name="etc"><file name="config.xml" hash="a0314d2981c25496ed0621db3e6090c9"/><file name="system.xml" hash="ab9ecc936a422ddb4ea5c6551655f217"/></dir><dir name="Helper"><file name="Data.php" hash="a72fba87e718c94d993a57199e20ca96"/></dir><dir name="Model"><file name="Direct.php" hash="e685f376832e618fc5e3e2ce2be5181f"/><file name="Request.php" hash="a96e462ed3c1882048ea45f2c3a6662c"/><dir name="Source"><file name="HashMethod.php" hash="36d7fb4fc762feae459f0e67d51006f4"/><file name="OrderStatus.php" hash="95eb926db39d4afeb26784a9396f7b18"/><file name="PaymentAction.php" hash="bd8dc40852b9ff8c80c08fc01f35a988"/><file name="PaymentMode.php" hash="6849defade8a7da4cfaeff3227ae5b83"/><file name="ResultDeliveryMethod.php" hash="b79d6fc714a25aba26cdb0ab572ae06f"/></dir><dir name="Tpg"><file name="GlobalErrors.php" hash="b85f17ff01e26bf89c04c1d60ed52f2f"/><file name="ISOCountries.php" hash="fc63d76fbe25458ba351f114782074cb"/><file name="ISOCurrencies.php" hash="89ac1e124e89c0713ef43a0cf6dd0e2b"/><file name="PaymentFormHelper.php" hash="0011b3f7693bbbe9b1bd965a2245e1e8"/><dir name="ThePaymentGateway"><file name="PaymentSystem.php" hash="4ad38bdb85f865e967153d9f253390cd"/><file name="SOAP.php" hash="504dcb0cb7c60c134b25652881349cc3"/><file name="TPG_Common.php" hash="df1033ef855c7e0e715076a105acb84a"/></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Iridiumcorp_All.xml" hash="f1a85eaa7631af1906f461b662519732"/></dir></target></contents>
16
  <compatible/>
17
  <dependencies/>
18
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Iridiumcorp_Tpg</name>
4
+ <version>1.9.0</version>
5
  <stability>stable</stability>
6
  <license>OSL v3.0</license>
7
  <channel>community</channel>
8
  <extends/>
9
  <summary>Iridium Payment Extension</summary>
10
  <description>Magento payment extension for the Iridium payment gateway. This extension fully supports the processing of 3D secure (Verified By Visa and Mastercard SecureCode) transactions. It also supports all of the integration methods provided by Iridium.</description>
11
+ <notes>SERVER_PULL delivery method implemented.</notes>
12
  <authors><author><name>Iridium Support</name><user>auto-converted</user><email>support@iridiumcorp.co.uk</email></author><author><name>Benjamin Kovac</name><user>auto-converted</user><email>ben.kovac@iridiumcorp.co.uk</email></author></authors>
13
+ <date>2010-08-19</date>
14
+ <time>15:28:17</time>
15
+ <contents><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="tpg"><file name="form.phtml" hash="9b2afd627d6e9e4f9ad43b0a7153962b"/><file name="info.phtml" hash="a907d4bc506e8d75f5998a42242985f3"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="default"><dir name="default"><dir name="template"><dir name="tpg"><file name="form.phtml" hash="231e39bb2821718eeaec4c1d0ee3233d"/><file name="info.phtml" hash="6ab2a83f89fb6cb66740a505b6b8bc4e"/></dir></dir></dir></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="default"><dir name="default"><dir name="images"><file name="iridium_corporation.jpg" hash="589faaa1b7e80b32a425175ecfc3b455"/></dir></dir></dir></dir></target><target name="magelocal"><dir name="Iridiumcorp"><dir name="Checkout"><dir name="Block"><dir name="Onepage"><dir name="Payment"><file name="Methods.php" hash="a10e1c19ad7bb8718dcb3adf9d3e4de0"/></dir></dir></dir><dir name="etc"><file name="config.xml" hash="aaa95b6e1d6e145940bf9ba9bbe1dc0f"/></dir><dir name="Model"><dir name="Type"><file name="Onepage.php" hash="913717a50f7cf02f5668f698d39add35"/></dir></dir></dir><dir name="Sales"><dir name="etc"><file name="config.xml" hash="5def01c2198f4033cd647dc40fb8e297"/></dir><dir name="Model"><file name="Order.php" hash="f4040067afcda49f8a6d747a434786be"/><dir name="Order"><file name="Invoice.php" hash="0da517143d8c83606fb51721043e7be1"/></dir></dir></dir><dir name="Tpg"><dir name="Block"><file name="Error.php" hash="905367210beb53a0bc68dc6033e24127"/><file name="Form.php" hash="4b1d51aa84982486f3139510c41a221a"/><file name="Info.php" hash="f88445c4880bfe14914252bc76b6fc28"/><file name="Redirect.php" hash="a91a8a8f8b5ad887ed2cdd8d52732b8b"/><file name="Threedsecure.php" hash="6143c058d311287ff189cd149062e73b"/></dir><dir name="controllers"><file name="PaymentController.php" hash="f658c87da531ee5f90451206c67accfc"/></dir><dir name="etc"><file name="config.xml" hash="9aad6d5193fb4173bbc581ea604ae1cb"/><file name="system.xml" hash="830378cd97437a8c3a16ee3d8f53c143"/></dir><dir name="Helper"><file name="Data.php" hash="a72fba87e718c94d993a57199e20ca96"/></dir><dir name="Model"><file name="Direct.php" hash="91f1202fb862fed3fe767c57b7880bf9"/><file name="Request.php" hash="a96e462ed3c1882048ea45f2c3a6662c"/><dir name="Source"><file name="HashMethod.php" hash="36d7fb4fc762feae459f0e67d51006f4"/><file name="OrderStatus.php" hash="95eb926db39d4afeb26784a9396f7b18"/><file name="PaymentAction.php" hash="bd8dc40852b9ff8c80c08fc01f35a988"/><file name="PaymentMode.php" hash="6849defade8a7da4cfaeff3227ae5b83"/><file name="ResultDeliveryMethod.php" hash="a818e8553ccf053e76f4395356262f06"/></dir><dir name="Tpg"><file name="GlobalErrors.php" hash="10c6f98eefbabbf297a0dae68836be7f"/><file name="ISOCountries.php" hash="fc63d76fbe25458ba351f114782074cb"/><file name="ISOCurrencies.php" hash="89ac1e124e89c0713ef43a0cf6dd0e2b"/><file name="PaymentFormHelper.php" hash="f75b9bcc9c09bd359a24f8e8b2702a07"/><dir name="ThePaymentGateway"><file name="PaymentSystem.php" hash="4ad38bdb85f865e967153d9f253390cd"/><file name="SOAP.php" hash="504dcb0cb7c60c134b25652881349cc3"/><file name="TPG_Common.php" hash="df1033ef855c7e0e715076a105acb84a"/></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Iridiumcorp_All.xml" hash="f1a85eaa7631af1906f461b662519732"/></dir></target></contents>
16
  <compatible/>
17
  <dependencies/>
18
  </package>