Jump to content

Edit History

MrSoulPC915

MrSoulPC915

Bon, en fait, non, ce $&#@ de module ne fonctionne pas !

Je viens de réinstaller une copie du site de prod en local pour faire les derniers test, installé la dernière version de RockPOS qui est sensé corriger le problème et ça plante toujours lamentablement.

La seule différence entre la version local et la version du serveur de test qu'ils ont corrigé (et qui semble fonctionner) est l'ajout du try&catch :

// Order is reloaded because the status just changed
$order = new PosOrder((int)$order->id);
// Send an e-mail to customer (one order = one email)
if ($id_order_state != Configuration::get('PS_OS_ERROR') && $id_order_state != Configuration::get('PS_OS_CANCELED') && $this->context->customer->id) {
    $default_customer = PosCustomer::getDefaultCustomer($order->id_shop);
    if (($order->id_customer == $default_customer->id && configuration::get('POS_EMAILING_ORDER_COMPLETION_GUEST_CHECKOUT')) || ($order->id_customer != $default_customer->id && configuration::get('POS_EMAILING_ORDER_COMPLETION_STANDARD'))) {
       try{
        $this->sendEmailToCustomer(
            $order,
            $products_list,
            $cart_rules_list,
            $extra_vars,
            $order_state
        );} catch(Exception $e) {}
    }
}
// Order is reloaded because the status just changed
$order = new PosOrder((int)$order->id);
// Send an e-mail to customer (one order = one email)
if ($id_order_state != Configuration::get('PS_OS_ERROR') && $id_order_state != Configuration::get('PS_OS_CANCELED') && $this->context->customer->id) {
    $default_customer = PosCustomer::getDefaultCustomer($order->id_shop);
    if (($order->id_customer == $default_customer->id && configuration::get('POS_EMAILING_ORDER_COMPLETION_GUEST_CHECKOUT')) || ($order->id_customer != $default_customer->id && configuration::get('POS_EMAILING_ORDER_COMPLETION_STANDARD'))) {
        $this->sendEmailToCustomer(
            $order,
            $products_list,
            $cart_rules_list,
            $extra_vars,
            $order_state
        );
    }
}

Je ne suis pas érudit des exceptions, ça semble corriger le problème, mais pensez vous que ce soit une rustine bancale ?

MrSoulPC915

MrSoulPC915

Bon, en fait, non, ce $&#@ de module ne fonctionne pas !

Je viens de réinstaller une copie du site de prod en local pour faire les derniers test, installé la dernière version de RockPOS qui est sensé corriger le problème et ça plante toujours lamentablement.

La seule différence entre la version local et la version du serveur de test qu'ils ont corrigé (et qui semble fonctionner) est l'ajout du try&catch :

// Order is reloaded because the status just changed
$order = new PosOrder((int)$order->id);
// Send an e-mail to customer (one order = one email)
if ($id_order_state != Configuration::get('PS_OS_ERROR') && $id_order_state != Configuration::get('PS_OS_CANCELED') && $this->context->customer->id) {
    $default_customer = PosCustomer::getDefaultCustomer($order->id_shop);
    if (($order->id_customer == $default_customer->id && configuration::get('POS_EMAILING_ORDER_COMPLETION_GUEST_CHECKOUT')) || ($order->id_customer != $default_customer->id && configuration::get('POS_EMAILING_ORDER_COMPLETION_STANDARD'))) {
       try{
        $this->sendEmailToCustomer(
            $order,
            $products_list,
            $cart_rules_list,
            $extra_vars,
            $order_state
        );} catch(Exception $e) {}
    }
}
// Order is reloaded because the status just changed
$order = new PosOrder((int)$order->id);
// Send an e-mail to customer (one order = one email)
if ($id_order_state != Configuration::get('PS_OS_ERROR') && $id_order_state != Configuration::get('PS_OS_CANCELED') && $this->context->customer->id) {
    $default_customer = PosCustomer::getDefaultCustomer($order->id_shop);
    if (($order->id_customer == $default_customer->id && configuration::get('POS_EMAILING_ORDER_COMPLETION_GUEST_CHECKOUT')) || ($order->id_customer != $default_customer->id && configuration::get('POS_EMAILING_ORDER_COMPLETION_STANDARD'))) {
        $this->sendEmailToCustomer(
            $order,
            $products_list,
            $cart_rules_list,
            $extra_vars,
            $order_state
        );
    }
}

Je ne suis pas érudit des exceptions, ça semble corriger le problème, mais pensez vous que ce soit une rustine foireuse ?

MrSoulPC915

MrSoulPC915

Bon, en fait, non, ce putain de module ne fonctionne pas !

Je viens de réinstaller une copie du site de prod en local pour faire les derniers test, installé la dernière version de RockPOS qui est sensé corriger le problème et ça plante toujours lamentablement.

La seule différence entre la version local et la version du serveur de test qu'ils ont corrigé (et qui semble fonctionner) est l'ajout du try&catch :

// Order is reloaded because the status just changed
$order = new PosOrder((int)$order->id);
// Send an e-mail to customer (one order = one email)
if ($id_order_state != Configuration::get('PS_OS_ERROR') && $id_order_state != Configuration::get('PS_OS_CANCELED') && $this->context->customer->id) {
    $default_customer = PosCustomer::getDefaultCustomer($order->id_shop);
    if (($order->id_customer == $default_customer->id && configuration::get('POS_EMAILING_ORDER_COMPLETION_GUEST_CHECKOUT')) || ($order->id_customer != $default_customer->id && configuration::get('POS_EMAILING_ORDER_COMPLETION_STANDARD'))) {
       try{
        $this->sendEmailToCustomer(
            $order,
            $products_list,
            $cart_rules_list,
            $extra_vars,
            $order_state
        );} catch(Exception $e) {}
    }
}
// Order is reloaded because the status just changed
$order = new PosOrder((int)$order->id);
// Send an e-mail to customer (one order = one email)
if ($id_order_state != Configuration::get('PS_OS_ERROR') && $id_order_state != Configuration::get('PS_OS_CANCELED') && $this->context->customer->id) {
    $default_customer = PosCustomer::getDefaultCustomer($order->id_shop);
    if (($order->id_customer == $default_customer->id && configuration::get('POS_EMAILING_ORDER_COMPLETION_GUEST_CHECKOUT')) || ($order->id_customer != $default_customer->id && configuration::get('POS_EMAILING_ORDER_COMPLETION_STANDARD'))) {
        $this->sendEmailToCustomer(
            $order,
            $products_list,
            $cart_rules_list,
            $extra_vars,
            $order_state
        );
    }
}

Je ne suis pas érudit des exceptions, ça semble corriger le problème, mais pensez vous que ce soit une rustine foireuse ?

×
×
  • Create New...