I recently moved my website to another server and it appears that we have broke our Authorize.net payment gateway in our VirtueMart store. When you try to check out from the store I'm getting this error message.
Fatal error: Call to undefined method plgVmpaymentAuthorizenet::setInConfirmOrder() in /home/MYSITE/public_html/plugins/vmpayment/authorizenet/authorizenet.php on line 516
It was working fine on the other server and I haven't changed any of the settings in the payment gateway so I'm not sure what is going on here. Any help you might have here would be helpful.
As I understand it setInConfirmOrder() is new recently (2.6.7?) in the payment plugins ( to do with the double order problems)
Have a check that you have the latest plugs, versions and AOI maybe?
vmpsplugin.php
/**
* setInConfirmOrder
* In VM 2.6.7, we introduced a double order checking.
* Now plugin itself can define if it should be possible to use the same trigger more than one time.
* this should be done at the begin of the trigger
* @author Valérie Isaksen
* @param $cart
*/
function setInConfirmOrder($cart) {
$cart->_inConfirm = true;
$cart->setCartIntoSession();
session_write_close();
session_start();
}
I updated the AIO and plugin tables, but still getting this error on checkout...not sure what to do at this point, my customers can't check out. I have the latest version of VM 2.6.8
have you got on line 1155 of administrator/com_virtuemart/plugins/vmpsplugin.php
function setInConfirmOrder($cart) {
$cart->_inConfirm = true;
$cart->setCartIntoSession();
session_write_close();
session_start();
}
Quote from: GJC Web Design on September 02, 2014, 15:36:51 PM
As I understand it setInConfirmOrder() is new recently (2.6.7?) in the payment plugins ( to do with the double order problems)
Not to hijack this thread, but where is setInConfirmOrder() documented, aside from me having to generate my own local Doxygen output of the sources? Relatedly, "what double order problems"?
hardly needs doc'ing -- just sets $cart->_inConfirm = true;
call it in the payment plugin $this->setInConfirmOrder($cart);
in the function function plgVmConfirmedOrder($cart, $order)
http://forum.virtuemart.net/index.php?topic=123644
Thanks. As you probably saw, I am currently trying to piece together the payment system docs (my thread's still at 0 replies, so I'm latching onto whatever I can find) so I can successfully write a payment plugin. So I greatly appreciate this bit of info (and the link). :)
Again, I apologize for the tangent... :-X
authorizenet is probably the easiest to use as an example code to base your new one on - paypal has too many views and stuff