From a66bba8746b9ccdd363c8af4b61771a70d9e87aa Mon Sep 17 00:00:00 2001 From: hekep <1901788+hekep@users.noreply.github.com> Date: Thu, 28 Feb 2019 15:11:44 +0200 Subject: [PATCH] Avoid duplicate orders in google analytics Avoid duplicate orders in google analytics --- ganalytics.php | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/ganalytics.php b/ganalytics.php index 8ebcbd0..8083945 100755 --- a/ganalytics.php +++ b/ganalytics.php @@ -732,9 +732,16 @@ public function hookBackOfficeHeader() $transaction = $this->wrapOrder($row['id_order']); if (!empty($transaction)) { - Db::getInstance()->execute('UPDATE `'._DB_PREFIX_.'ganalytics` SET date_add = NOW(), sent = 1 WHERE id_order = '.(int)$row['id_order'].' AND id_shop = \''.(int)$this->context->shop->id.'\''); - $transaction = Tools::jsonEncode($transaction); - $ga_scripts .= 'MBG.addTransaction('.$transaction.');'; + Db::getInstance()->execute('UPDATE `'._DB_PREFIX_.'ganalytics` SET date_add = NOW(), sent = 1 ' + . ' WHERE id_order = ' .(int)$row['id_order'] + .' AND id_shop = \''.(int)$this->context->shop->id.'\' ' + .' AND sent = 0 ' + . ' '); + $affectedRows = Db::getInstance()->Affected_Rows(); + if ( $affectedRows == 1) { + $transaction = Tools::jsonEncode($transaction); + $ga_scripts .= 'MBG.addTransaction('.$transaction.');'; + } } }