Jump to content

AEUC module and actionCarrierProcess


Recommended Posts

Is anyone facing a similar problem? I was searching forum, googling, but I did not find the answer...

 

The problem looks like actionCarrierProcess called from another module is not processed during order step while AEUC module used and set to advanced order during 5-steps order.

 

I'm using Advanced EU Compliance v2.0.2 and PS 1.6.1.15 (and 1.6.16 tested both versions) the problem is when I hook ActionCarrierProcess function in another module to get and save some user input in the order process, it looks like this action is not processed when the AEUC module is turned on.

 

I tested this situation on both the built-in and the clean installation of PS (1.6.1.15 and 1.6.1.16). (cache and class_index cleared)

 

The point is - when I turn off the AEUC, everything works fine. The function actionCarrierProcess (called by Hook::exec from _processCarrier() in ParentOrderController.php) in other module is processed with some stuff I need to do (later processing ActionValidateOrder which isn't impacted), without any problems.

 

I've tried investigate code and the hooks of AUEC module, but have no idea about how can this AEUC module impact actionCarrierProcess (maybe I wasn't investigate enough to find possible overriding of actionCarrierProcess). I'm not providing code, because everything works fine when AEUC is turned off... anyway it can be tested simply by in some quick testmodule... 

public function hookActionCarrierProcess($params)
{
    var_dump($params);
    die();
}
Edited by PepeLopez (see edit history)
Link to comment
Share on other sites

Oh, after checked more than .php files of AEUC module I found this in fo_aeuc_tnc.js file of AEUC module

$('button[name="processCarrier"]').click(function(event){
    /* Avoid any further action */
    event.preventDefault();
    event.stopPropagation();
...

this definetely causes function processCarrier() in OrderController.php will never be fired

public function postProcess()
{
    // Update carrier selected on preProccess in order to fix a bug of
    // block cart when it's hooked on leftcolumn
    if ($this->step == 3 && Tools::isSubmit('processCarrier')) {
        $this->processCarrier();
    }
}
 

processCarrier() calls _processCarrier() in ParentOrderController.php and _processCarrier() executing hook actionCarrierProcess...

 

I just wonder why AUEC prevents executing _processCarrier(), which handle f.e. validateDeliveryOption? Any experienced users of AEUC module?

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...