From 23c4e93fe87b91b9a7eb6067b1dfbf269c12ef5f Mon Sep 17 00:00:00 2001 From: Marion Muszynski Date: Fri, 9 Sep 2016 12:18:58 +0200 Subject: [PATCH] addition of double checking on valid order --- modules/paybox/paybox.php | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/modules/paybox/paybox.php b/modules/paybox/paybox.php index 799fbfc8..dc3581a2 100755 --- a/modules/paybox/paybox.php +++ b/modules/paybox/paybox.php @@ -244,10 +244,17 @@ class Paybox extends PaymentModule // verif if there's at least one order with this delivery address $orders_with_delivery_address = Db::getInstance()->getValue(' - SELECT COUNT(`id_order`) - FROM `'._DB_PREFIX_.'orders` - WHERE `id_address_delivery` = '.(int)$cart->id_address_delivery.' - AND `id_customer` = '.(int)$cart->id_customer.' + SELECT COUNT(o.`id_order`) + FROM `'._DB_PREFIX_.'orders` o + WHERE o.`id_address_delivery` = '.(int)$cart->id_address_delivery.' + AND o.`id_customer` = '.(int)$cart->id_customer.' + AND ( + o.valid = 1 + OR ( + o.valid = 0 + AND (SELECT h.id_order_state FROM `'._DB_PREFIX_.'order_history` h WHERE h.id_order = o.id_order ORDER BY h.date_add DESC LIMIT 1) NOT IN (6,8,15,16,18) + ) + ) '); if ($orders_with_delivery_address == 0){ $paybox_cards = array();