windsurfer Posted December 2, 2020 Share Posted December 2, 2020 After the upgrade from 6.2.9 to 6.4.2 the interac gateway invoice now show this weird line under the product description. That line does not show in the admin or customer email. Quote Link to comment Share on other sites More sharing options...
bsmither Posted December 2, 2020 Share Posted December 2, 2020 I will have a fix for you shortly. Quote Link to comment Share on other sites More sharing options...
bsmither Posted December 2, 2020 Share Posted December 2, 2020 (edited) In the file /modules/gateway/ e_Payments_Interac/gateway.class.php: Find near line 173: if (!empty($item['product_options'])) $product['product_options'] = implode(' ',unserialize($item['product_options'])); Change to: $list = array(); if (!empty($item['product_options'])) { if (($list = unserialize($item['product_options'])) !== false) { } else { if(method_exists($order,'unSerializeOptions')) { $list = $order->unSerializeOptions($item['product_options']); } else { if(($list = cc_unserialize($item['product_options'])) !== false) { } else if (($list = cc_unserialize(base64_decode($item['product_options']))) !== false) { } else { $list = explode("\n", $item['product_options']); } } } } $product['product_options'] = implode(' ', $list); Find near line 69: $options = explode("\n", $item['product_options']); Change to: if(method_exists($order,'unSerializeOptions')) { $options = $order->unSerializeOptions($item['product_options']); } else { if(empty($item['product_options'])) { $options = array(); } else if(($options = cc_unserialize($item['product_options'])) !== false) { } else if (($options = cc_unserialize(base64_decode($item['product_options']))) !== false) { } else { $options = explode("\n", $item['product_options']); } } Edited December 2, 2020 by bsmither Quote Link to comment Share on other sites More sharing options...
windsurfer Posted December 2, 2020 Author Share Posted December 2, 2020 Ya that pretty much took care of that thank you. Quote Link to comment Share on other sites More sharing options...
bsmither Posted December 2, 2020 Share Posted December 2, 2020 I added another edit that fixes the same problem in the courtesy email contents. Quote Link to comment Share on other sites More sharing options...
windsurfer Posted December 2, 2020 Author Share Posted December 2, 2020 Another issue Before the upgrade i pasted code in the email template to show the interac information in the customer email for their reference. And it did show that information in the customer email but now after the upgrade it doesn't. <p>{if $BANK}</p> <div class="payment_method"><strong>Pay by e-Payment Bank Transfer - Interac</strong><br /> <div><strong>{$LANG.gateway.bank_name}:</strong> {$MODULE.bankName}</div> <div><strong>{$LANG.gateway.bank_account_name}:</strong> {$MODULE.accName}</div> <div><strong>e-Payment Email Address:</strong> {$MODULE.addressCode}</div> <div><strong>e-Payment Secret Question ?</strong> {$MODULE.secretCode}</div> <div><strong>Answer to Secret Question ?</strong> {$MODULE.answerCode}</div> </div> <p>{/if}</p> Quote Link to comment Share on other sites More sharing options...
bsmither Posted December 2, 2020 Share Posted December 2, 2020 Which email template? Quote Link to comment Share on other sites More sharing options...
windsurfer Posted December 2, 2020 Author Share Posted December 2, 2020 Cart:Order Confirmed. And that showed the information. I also had it in Admin:Order Received but that didn't show the information in the admin email. Quote Link to comment Share on other sites More sharing options...
bsmither Posted December 2, 2020 Share Posted December 2, 2020 The Interac module does send, as a courtesy, the Cart:Order Confirmed email. This action is a setting in the module. Making BANK info available is also a setting in the module. So, if the BANK info appears on the printable payment form, then it should appear in the email -- assuming the added code is still part of the email contents. Quote Link to comment Share on other sites More sharing options...
windsurfer Posted December 2, 2020 Author Share Posted December 2, 2020 I don't see a setting in the interac settings to send an email I had to change the setting in the store settings to pending in order for the customer and admin email to be sent, if that setting is Processing the email won't get sent to admin or the customer. I am sure this is a shortcoming in the module and i have had communication with the creator and he doesn't think it is important for anybody to get an email regarding the purchase to which i strongly disagree. The email template hasn't changed and the BANK info appears on the printable form but not in the email anymore and the added code is still in the email template. Quote Link to comment Share on other sites More sharing options...
bsmither Posted December 2, 2020 Share Posted December 2, 2020 (edited) This conversation mentions that the Interac module is missing the courtesy email setting, and what to edit to restore it: https://forums.cubecart.com/topic/55868-interac-payment-extension There is an open issue on the Github. Edited December 2, 2020 by bsmither Quote Link to comment Share on other sites More sharing options...
windsurfer Posted December 2, 2020 Author Share Posted December 2, 2020 Yes that is correct but i am not talking about a Bank transfer i am talking about email interac payment which is different. I also did the modification in the file mentioned. My point is that first of all the module doesn't have the means to send an email to admin or the customer unless the status is set to pending and also after the upgrade to 6.4.2 the information i talked about as below doesn't show up in the email anymore. Quote Link to comment Share on other sites More sharing options...
bsmither Posted December 2, 2020 Share Posted December 2, 2020 You have verified that the following is in the email content template: <p>{if $BANK}</p> <div class="payment_method"><strong>Pay by e-Payment Bank Transfer - Interac</strong><br /> <div><strong>{$LANG.gateway.bank_name}:</strong> {$MODULE.bankName}</div> <div><strong>{$LANG.gateway.bank_account_name}:</strong> {$MODULE.accName}</div> <div><strong>e-Payment Email Address:</strong> {$MODULE.addressCode}</div> <div><strong>e-Payment Secret Question ?</strong> {$MODULE.secretCode}</div> <div><strong>Answer to Secret Question ?</strong> {$MODULE.answerCode}</div> </div> <p>{/if}</p> Please make this change and test: From: <p>{/if}</p> To: {else}BANK is empty. <p>{/if}</p> Let us know if you see "BANK is empty" or nothing at all. Quote Link to comment Share on other sites More sharing options...
windsurfer Posted December 3, 2020 Author Share Posted December 3, 2020 Hi Bsmither I deleted the interac from the site. Much to unpredictable and not really working the way it should. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.