Phoenix_Worldpay - Version 1.3.0

Version Notes

- support for new signature hash
- save fraud information in database
- hide language switch option
- debug option

Download this release

Release Info

Developer Magento Core Team
Extension Phoenix_Worldpay
Version 1.3.0
Comparing to
See all releases


Code changes from version 1.2.4 to 1.3.0

app/code/community/Phoenix/Worldpay/controllers/ProcessingController.php CHANGED
@@ -191,7 +191,7 @@ class Phoenix_Worldpay_ProcessingController extends Mage_Core_Controller_Front_A
191
  */
192
  protected function _processSale($request)
193
  {
194
- // check transaction amount and currency
195
  if ($this->_paymentInst->getConfigData('use_store_currency')) {
196
  $price = number_format($this->_order->getGrandTotal(),2,'.','');
197
  $currency = $this->_order->getOrderCurrencyCode();
@@ -200,18 +200,20 @@ class Phoenix_Worldpay_ProcessingController extends Mage_Core_Controller_Front_A
200
  $currency = $this->_order->getBaseCurrencyCode();
201
  }
202
 
203
- // check transaction amount
204
  if ($price != $request['authAmount'])
205
  Mage::throwException('Transaction currency doesn\'t match.');
206
 
207
- // check transaction currency
208
  if ($currency != $request['authCurrency'])
209
  Mage::throwException('Transaction currency doesn\'t match.');
210
 
211
- // save transaction ID and AVS info
212
- $this->_order->getPayment()->setTransactionId($request['transId']);
213
- $this->_order->getPayment()->setLastTransId($request['transId']);
214
- $this->_order->getPayment()->setCcAvsStatus($request['AVS']);
 
 
215
 
216
  switch($request['authMode']) {
217
  case 'A':
@@ -248,9 +250,12 @@ class Phoenix_Worldpay_ProcessingController extends Mage_Core_Controller_Front_A
248
  */
249
  protected function _processCancel($request)
250
  {
251
- $this->_order->cancel();
252
- $this->_order->addStatusToHistory(Mage_Sales_Model_Order::STATE_CANCELED, Mage::helper('worldpay')->__('Payment was canceled'));
253
- $this->_order->save();
 
 
 
254
 
255
  $this->getResponse()->setBody(
256
  $this->getLayout()
@@ -262,6 +267,6 @@ class Phoenix_Worldpay_ProcessingController extends Mage_Core_Controller_Front_A
262
 
263
  protected function _getPendingPaymentStatus()
264
  {
265
- return Mage::helper('payone')->getPendingPaymentStatus();
266
  }
267
  }
191
  */
192
  protected function _processSale($request)
193
  {
194
+ // check transaction amount and currency
195
  if ($this->_paymentInst->getConfigData('use_store_currency')) {
196
  $price = number_format($this->_order->getGrandTotal(),2,'.','');
197
  $currency = $this->_order->getOrderCurrencyCode();
200
  $currency = $this->_order->getBaseCurrencyCode();
201
  }
202
 
203
+ // check transaction amount
204
  if ($price != $request['authAmount'])
205
  Mage::throwException('Transaction currency doesn\'t match.');
206
 
207
+ // check transaction currency
208
  if ($currency != $request['authCurrency'])
209
  Mage::throwException('Transaction currency doesn\'t match.');
210
 
211
+ // save transaction information
212
+ $this->_order->getPayment()
213
+ ->setTransactionId($request['transId'])
214
+ ->setLastTransId($request['transId'])
215
+ ->setCcAvsStatus($request['AVS'])
216
+ ->setCcType($request['cardType']);
217
 
218
  switch($request['authMode']) {
219
  case 'A':
250
  */
251
  protected function _processCancel($request)
252
  {
253
+ // cancel order
254
+ if ($this->_order->canCancel()) {
255
+ $this->_order->cancel();
256
+ $this->_order->addStatusToHistory(Mage_Sales_Model_Order::STATE_CANCELED, Mage::helper('worldpay')->__('Payment was canceled'));
257
+ $this->_order->save();
258
+ }
259
 
260
  $this->getResponse()->setBody(
261
  $this->getLayout()
267
 
268
  protected function _getPendingPaymentStatus()
269
  {
270
+ return Mage::helper('worldpay')->getPendingPaymentStatus();
271
  }
272
  }
app/code/community/Phoenix/Worldpay/etc/config.xml CHANGED
@@ -21,7 +21,7 @@
21
  <config>
22
  <modules>
23
  <Phoenix_Worldpay>
24
- <version>1.2.4</version>
25
  </Phoenix_Worldpay>
26
  </modules>
27
  <global>
21
  <config>
22
  <modules>
23
  <Phoenix_Worldpay>
24
+ <version>1.2.6</version>
25
  </Phoenix_Worldpay>
26
  </modules>
27
  <global>
app/code/community/Phoenix/Worldpay/etc/system.xml CHANGED
@@ -82,7 +82,7 @@
82
  <show_in_website>1</show_in_website>
83
  <show_in_store>1</show_in_store>
84
  </specificcountry>
85
- <use_store_currency translate="label">
86
  <label>Pay in store currency</label>
87
  <comment>Choose "Yes" to use store view currency instead of base currency.</comment>
88
  <frontend_type>select</frontend_type>
@@ -92,7 +92,7 @@
92
  <show_in_website>1</show_in_website>
93
  <show_in_store>1</show_in_store>
94
  </use_store_currency>
95
- <inst_id>
96
  <label>Installation ID</label>
97
  <frontend_type>text</frontend_type>
98
  <backend_model>worldpay/config_backend_instid</backend_model>
@@ -101,7 +101,7 @@
101
  <show_in_website>1</show_in_website>
102
  <show_in_store>0</show_in_store>
103
  </inst_id>
104
- <transaction_password>
105
  <label>Payment Response password</label>
106
  <frontend_type>text</frontend_type>
107
  <sort_order>8</sort_order>
@@ -109,7 +109,7 @@
109
  <show_in_website>1</show_in_website>
110
  <show_in_store>0</show_in_store>
111
  </transaction_password>
112
- <security_key>
113
  <label>MD5 secret</label>
114
  <comment>Should be between 8-16 characters.</comment>
115
  <frontend_type>text</frontend_type>
@@ -118,7 +118,7 @@
118
  <show_in_website>1</show_in_website>
119
  <show_in_store>0</show_in_store>
120
  </security_key>
121
- <request_type>
122
  <label>Request Type</label>
123
  <frontend_type>select</frontend_type>
124
  <source_model>worldpay/source_requestType</source_model>
@@ -127,7 +127,7 @@
127
  <show_in_website>1</show_in_website>
128
  <show_in_store>0</show_in_store>
129
  </request_type>
130
- <transaction_mode>
131
  <label>Transaction Mode</label>
132
  <frontend_type>select</frontend_type>
133
  <source_model>worldpay/source_transactionMode</source_model>
@@ -136,7 +136,7 @@
136
  <show_in_website>1</show_in_website>
137
  <show_in_store>0</show_in_store>
138
  </transaction_mode>
139
- <fix_contact>
140
  <label>Fix contact</label>
141
  <frontend_type>select</frontend_type>
142
  <source_model>adminhtml/system_config_source_yesno</source_model>
@@ -145,7 +145,7 @@
145
  <show_in_website>1</show_in_website>
146
  <show_in_store>0</show_in_store>
147
  </fix_contact>
148
- <hide_contact>
149
  <label>Hide contact</label>
150
  <frontend_type>select</frontend_type>
151
  <source_model>adminhtml/system_config_source_yesno</source_model>
@@ -154,7 +154,7 @@
154
  <show_in_website>1</show_in_website>
155
  <show_in_store>0</show_in_store>
156
  </hide_contact>
157
- <enable_online_operations>
158
  <label>Enable online operations</label>
159
  <comment>Remote admin installation is needed to perform online refund</comment>
160
  <frontend_type>select</frontend_type>
@@ -164,7 +164,7 @@
164
  <show_in_website>1</show_in_website>
165
  <show_in_store>0</show_in_store>
166
  </enable_online_operations>
167
- <admin_inst_id>
168
  <label>Remote Admin Installation ID</label>
169
  <frontend_type>text</frontend_type>
170
  <comment>Required for Remote Admin</comment>
@@ -174,7 +174,7 @@
174
  <show_in_website>1</show_in_website>
175
  <show_in_store>0</show_in_store>
176
  </admin_inst_id>
177
- <auth_password>
178
  <label>Authorisation password</label>
179
  <comment>Required for Remote Admin</comment>
180
  <frontend_type>text</frontend_type>
82
  <show_in_website>1</show_in_website>
83
  <show_in_store>1</show_in_store>
84
  </specificcountry>
85
+ <use_store_currency translate="label,comment">
86
  <label>Pay in store currency</label>
87
  <comment>Choose "Yes" to use store view currency instead of base currency.</comment>
88
  <frontend_type>select</frontend_type>
92
  <show_in_website>1</show_in_website>
93
  <show_in_store>1</show_in_store>
94
  </use_store_currency>
95
+ <inst_id translate="label">
96
  <label>Installation ID</label>
97
  <frontend_type>text</frontend_type>
98
  <backend_model>worldpay/config_backend_instid</backend_model>
101
  <show_in_website>1</show_in_website>
102
  <show_in_store>0</show_in_store>
103
  </inst_id>
104
+ <transaction_password translate="label">
105
  <label>Payment Response password</label>
106
  <frontend_type>text</frontend_type>
107
  <sort_order>8</sort_order>
109
  <show_in_website>1</show_in_website>
110
  <show_in_store>0</show_in_store>
111
  </transaction_password>
112
+ <security_key translate="label,comment">
113
  <label>MD5 secret</label>
114
  <comment>Should be between 8-16 characters.</comment>
115
  <frontend_type>text</frontend_type>
118
  <show_in_website>1</show_in_website>
119
  <show_in_store>0</show_in_store>
120
  </security_key>
121
+ <request_type translate="label">
122
  <label>Request Type</label>
123
  <frontend_type>select</frontend_type>
124
  <source_model>worldpay/source_requestType</source_model>
127
  <show_in_website>1</show_in_website>
128
  <show_in_store>0</show_in_store>
129
  </request_type>
130
+ <transaction_mode translate="label">
131
  <label>Transaction Mode</label>
132
  <frontend_type>select</frontend_type>
133
  <source_model>worldpay/source_transactionMode</source_model>
136
  <show_in_website>1</show_in_website>
137
  <show_in_store>0</show_in_store>
138
  </transaction_mode>
139
+ <fix_contact translate="label">
140
  <label>Fix contact</label>
141
  <frontend_type>select</frontend_type>
142
  <source_model>adminhtml/system_config_source_yesno</source_model>
145
  <show_in_website>1</show_in_website>
146
  <show_in_store>0</show_in_store>
147
  </fix_contact>
148
+ <hide_contact translate="label">
149
  <label>Hide contact</label>
150
  <frontend_type>select</frontend_type>
151
  <source_model>adminhtml/system_config_source_yesno</source_model>
154
  <show_in_website>1</show_in_website>
155
  <show_in_store>0</show_in_store>
156
  </hide_contact>
157
+ <enable_online_operations translate="label,comment">
158
  <label>Enable online operations</label>
159
  <comment>Remote admin installation is needed to perform online refund</comment>
160
  <frontend_type>select</frontend_type>
164
  <show_in_website>1</show_in_website>
165
  <show_in_store>0</show_in_store>
166
  </enable_online_operations>
167
+ <admin_inst_id translate="label,comment">
168
  <label>Remote Admin Installation ID</label>
169
  <frontend_type>text</frontend_type>
170
  <comment>Required for Remote Admin</comment>
174
  <show_in_website>1</show_in_website>
175
  <show_in_store>0</show_in_store>
176
  </admin_inst_id>
177
+ <auth_password translate="label,comment">
178
  <label>Authorisation password</label>
179
  <comment>Required for Remote Admin</comment>
180
  <frontend_type>text</frontend_type>
app/design/adminhtml/default/default/template/worldpay/info.phtml CHANGED
@@ -22,6 +22,7 @@
22
  if ($this->getInfo()->getLastTransId() == '') {
23
  echo Mage::helper('worldpay')->__('Payment has not been processed yet.') . '<br/>';
24
  } else {
 
25
  echo Mage::helper('worldpay')->__('Worldpay Transaction ID: %s', $this->htmlEscape($this->getInfo()->getLastTransId())) . '<br/>';
26
  echo Mage::helper('worldpay')->__('AVS status: %s', $this->htmlEscape($this->getInfo()->getCcAvsStatus())) . '<br/>';
27
  }
22
  if ($this->getInfo()->getLastTransId() == '') {
23
  echo Mage::helper('worldpay')->__('Payment has not been processed yet.') . '<br/>';
24
  } else {
25
+ echo Mage::helper('worldpay')->__('Credit Card Type: %s', $this->htmlEscape($this->getInfo()->getCcType())) . '<br/>';
26
  echo Mage::helper('worldpay')->__('Worldpay Transaction ID: %s', $this->htmlEscape($this->getInfo()->getLastTransId())) . '<br/>';
27
  echo Mage::helper('worldpay')->__('AVS status: %s', $this->htmlEscape($this->getInfo()->getCcAvsStatus())) . '<br/>';
28
  }
app/design/frontend/default/default/template/worldpay/info.phtml CHANGED
@@ -22,6 +22,7 @@
22
  if ($this->getInfo()->getLastTransId() == '') {
23
  echo '<em>' . Mage::helper('worldpay')->__($this->getMethodCode().':You will be redirected to Worldpay website when you place an order.') . '</em>';
24
  } else {
 
25
  echo Mage::helper('worldpay')->__('Worldpay Transaction ID: %s', $this->htmlEscape($this->getInfo()->getLastTransId())) . '<br/>';
26
  }
27
  ?>
22
  if ($this->getInfo()->getLastTransId() == '') {
23
  echo '<em>' . Mage::helper('worldpay')->__($this->getMethodCode().':You will be redirected to Worldpay website when you place an order.') . '</em>';
24
  } else {
25
+ echo Mage::helper('worldpay')->__('Credit Card Type: %s', $this->htmlEscape($this->getInfo()->getCcType())) . '<br/>';
26
  echo Mage::helper('worldpay')->__('Worldpay Transaction ID: %s', $this->htmlEscape($this->getInfo()->getLastTransId())) . '<br/>';
27
  }
28
  ?>
app/locale/de_DE/Phoenix_Worldpay.csv CHANGED
@@ -17,4 +17,5 @@
17
  "Your purchase at","Ihr Einkauf bei"
18
  "Error during refunding online. Server response: %s","Fehler während der Gutschrift-Erteilung. Server-Antwort: %s"
19
  "Worldpay transaction has been captured.","Worldpay Transaktion wurde abgebucht."
20
- "The order has been canceled.,"Der Bestellvorgang wurde abgebrochen."
 
17
  "Your purchase at","Ihr Einkauf bei"
18
  "Error during refunding online. Server response: %s","Fehler während der Gutschrift-Erteilung. Server-Antwort: %s"
19
  "Worldpay transaction has been captured.","Worldpay Transaktion wurde abgebucht."
20
+ "The order has been canceled.,"Der Bestellvorgang wurde abgebrochen."
21
+ "Credit Card Type: %s","Kreditkarte: %s"
app/locale/en_US/Phoenix_Worldpay.csv CHANGED
@@ -17,4 +17,5 @@
17
  "Your purchase at","Your purchase at"
18
  "Error during refunding online. Server response: %s","Error during refunding online. Server response: %s"
19
  "Worldpay transaction has been captured.","Worldpay transaction has been captured."
20
- "The order has been canceled.","The order has been canceled."
 
17
  "Your purchase at","Your purchase at"
18
  "Error during refunding online. Server response: %s","Error during refunding online. Server response: %s"
19
  "Worldpay transaction has been captured.","Worldpay transaction has been captured."
20
+ "The order has been canceled.","The order has been canceled."
21
+ "Credit Card Type: %s","Credit Card Type: %s"
package.xml CHANGED
@@ -1,7 +1,7 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Phoenix_Worldpay</name>
4
- <version>1.2.4</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL)</license>
7
  <channel>community</channel>
@@ -19,11 +19,14 @@ Notice: This extension is still beta. We recommend to test all transactions in y
19
  The extension is developed and maintained by the German Magento Silver Partner Phoenix Medien (http://www.phoenix-medien.de).
20
 
21
  The development was sponsored by liaison dangereuse (http://www.liaison-dangereuse.de).</description>
22
- <notes>- fixed issue with shopping card reload on cancelation (Magento 1.4.1)</notes>
 
 
 
23
  <authors><author><name>Phoenix Medien</name><user>auto-converted</user><email>info@phoenix-medien.de</email></author></authors>
24
- <date>2010-07-08</date>
25
- <time>15:23:56</time>
26
- <contents><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="worldpay"><dir name="pdf"><file name="info.phtml" hash="3a92c60f5c05a3e51df366cee651edd6"/></dir><file name="info.phtml" hash="d70ad71aa960ce0c6d4ec8609dadf7e3"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="default"><dir name="default"><dir name="layout"><file name="worldpay.xml" hash="ac4191773623ae2ad6170f363866ed43"/></dir><dir name="template"><dir name="worldpay"><file name="blank.phtml" hash="8b7d8aa0521878b2dd796acfd4d655b6"/><file name="cancel.phtml" hash="350348b8fecb9b7c2b1045d1a8edd9c7"/><file name="failure.phtml" hash="77b202de38902c9e6458218bdce07de8"/><file name="form.phtml" hash="8c7184cbaffc115349de415d12273528"/><file name="info.phtml" hash="d33c7ffde885e4953a975201562cba8e"/><file name="redirect.phtml" hash="84d38770a43262c890094c132dc2bd5c"/></dir></dir></dir></dir></dir></target><target name="magelocale"><dir name="de_DE"><file name="Phoenix_Worldpay.csv" hash="8fb586663ea9f3ae7022bf7e2ee81fd8"/></dir><dir name="en_US"><file name="Phoenix_Worldpay.csv" hash="9058fb3d52918ff4a1b85ae32fa87d3f"/></dir></target><target name="mageetc"><dir name="modules"><file name="Phoenix_Worldpay.xml" hash="52b9dc5cd0d94ab43d8691438f090617"/></dir></target><target name="magecommunity"><dir name="Phoenix"><dir name="Worldpay"><dir name="Block"><file name="Cancel.php" hash="b0f213ee8e45d0b8b48a6fad48f05017"/><file name="Failure.php" hash="5add6ed9890109ba624b7a16bc0504f5"/><file name="Form.php" hash="d279b2d502e875e155101007eef7ebc5"/><file name="Info.php" hash="845d37c36ea2973599324f9e294969a4"/><file name="Redirect.php" hash="ee8eb2b8cdabaf9ae0dea66fd7362777"/><file name="Success.php" hash="0c072e272d53a0b24e5157201cd65877"/></dir><dir name="controllers"><file name="ProcessingController.php" hash="575b20d29df23f75394eabfb6c007f71"/></dir><dir name="etc"><file name="config.xml" hash="280c560e1aa553e260fab16828ea8519"/><file name="system.xml" hash="5361e90063e729e4c01ae95a074d0fc4"/></dir><dir name="Helper"><file name="Data.php" hash="954555e22d7867b2eb2b698b86405d63"/></dir><dir name="Model"><dir name="Config"><dir name="Backend"><file name="Instid.php" hash="07147ceac69c3c19593b4a24873f15cc"/></dir></dir><dir name="Source"><file name="RequestType.php" hash="795d51b4c3f04bb00cf6cca5a3180cd7"/><file name="TransactionMode.php" hash="da4cadb5df1213edc34f22b67235d374"/></dir><file name="Cc.php" hash="cf6b3bff52b5aedd85ff94cc59a0fc8e"/><file name="Config.php" hash="9098369b245a824396354e1b64cd47ab"/></dir></dir></dir></target></contents>
27
  <compatible/>
28
  <dependencies/>
29
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Phoenix_Worldpay</name>
4
+ <version>1.3.0</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL)</license>
7
  <channel>community</channel>
19
  The extension is developed and maintained by the German Magento Silver Partner Phoenix Medien (http://www.phoenix-medien.de).
20
 
21
  The development was sponsored by liaison dangereuse (http://www.liaison-dangereuse.de).</description>
22
+ <notes>- support for new signature hash
23
+ - save fraud information in database
24
+ - hide language switch option
25
+ - debug option</notes>
26
  <authors><author><name>Phoenix Medien</name><user>auto-converted</user><email>info@phoenix-medien.de</email></author></authors>
27
+ <date>2011-04-01</date>
28
+ <time>14:40:37</time>
29
+ <contents><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="worldpay"><dir name="pdf"><file name="info.phtml" hash="3a92c60f5c05a3e51df366cee651edd6"/></dir><file name="info.phtml" hash="1790560a09702bdbe3f6a2074e03144b"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="default"><dir name="default"><dir name="layout"><file name="worldpay.xml" hash="ac4191773623ae2ad6170f363866ed43"/></dir><dir name="template"><dir name="worldpay"><file name="blank.phtml" hash="8b7d8aa0521878b2dd796acfd4d655b6"/><file name="cancel.phtml" hash="350348b8fecb9b7c2b1045d1a8edd9c7"/><file name="failure.phtml" hash="77b202de38902c9e6458218bdce07de8"/><file name="form.phtml" hash="8c7184cbaffc115349de415d12273528"/><file name="info.phtml" hash="9c17afe371e23674979aad7e6ce82fe3"/><file name="redirect.phtml" hash="84d38770a43262c890094c132dc2bd5c"/></dir></dir></dir></dir></dir></target><target name="magelocale"><dir name="de_DE"><file name="Phoenix_Worldpay.csv" hash="f1120c2e8a91f142440b200863e691e9"/></dir><dir name="en_US"><file name="Phoenix_Worldpay.csv" hash="fed1c35eeb4d0bbc7edc275b63b2f0e0"/></dir></target><target name="mageetc"><dir name="modules"><file name="Phoenix_Worldpay.xml" hash="52b9dc5cd0d94ab43d8691438f090617"/></dir></target><target name="magecommunity"><dir name="Phoenix"><dir name="Worldpay"><dir name="Block"><file name="Cancel.php" hash="b0f213ee8e45d0b8b48a6fad48f05017"/><file name="Failure.php" hash="5add6ed9890109ba624b7a16bc0504f5"/><file name="Form.php" hash="d279b2d502e875e155101007eef7ebc5"/><file name="Info.php" hash="845d37c36ea2973599324f9e294969a4"/><file name="Redirect.php" hash="ee8eb2b8cdabaf9ae0dea66fd7362777"/><file name="Success.php" hash="0c072e272d53a0b24e5157201cd65877"/></dir><dir name="controllers"><file name="ProcessingController.php" hash="2735aded2e552488c8d4e4e7361a28ba"/></dir><dir name="etc"><file name="config.xml" hash="787177b04b26dd6317f901ae3459bcf7"/><file name="system.xml" hash="ceb5a05ac462091280d3dda7649d3376"/></dir><dir name="Helper"><file name="Data.php" hash="954555e22d7867b2eb2b698b86405d63"/></dir><dir name="Model"><dir name="Config"><dir name="Backend"><file name="Instid.php" hash="07147ceac69c3c19593b4a24873f15cc"/></dir></dir><dir name="Source"><file name="RequestType.php" hash="795d51b4c3f04bb00cf6cca5a3180cd7"/><file name="TransactionMode.php" hash="da4cadb5df1213edc34f22b67235d374"/></dir><file name="Cc.php" hash="cf6b3bff52b5aedd85ff94cc59a0fc8e"/><file name="Config.php" hash="9098369b245a824396354e1b64cd47ab"/></dir></dir></dir></target></contents>
30
  <compatible/>
31
  <dependencies/>
32
  </package>