diff --git a/htdocs/comm/mailing/class/mailing.class.php b/htdocs/comm/mailing/class/mailing.class.php index 873dae1464a..482a0968cbf 100644 --- a/htdocs/comm/mailing/class/mailing.class.php +++ b/htdocs/comm/mailing/class/mailing.class.php @@ -480,19 +480,44 @@ class Mailing extends CommonObject * @param int $rowid id du mailing a supprimer * @return int 1 en cas de succes */ - public function delete($rowid) + public function delete($rowid, $notrigger = 0) { + global $user; + + $this->db->begin(); + $sql = "DELETE FROM ".MAIN_DB_PREFIX."mailing"; $sql .= " WHERE rowid = ".$rowid; dol_syslog("Mailing::delete", LOG_DEBUG); $resql = $this->db->query($sql); - if ($resql) { - return $this->delete_targets(); - } else { + if ($resql) + { + $res = $this->delete_targets(); + if ($res <= 0) { + $this->db->rollback(); + $this->error = $this->db->lasterror(); + return -1; + } + } + else + { + $this->db->rollback(); $this->error = $this->db->lasterror(); return -1; } + + if (!$notrigger) { + $result = $this->call_trigger('MAILING_DELETE', $user); + if ($result < 0) + { + $this->db->rollback(); + return -1; + } + } + + $this->db->commit(); + return 1; } // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps diff --git a/htdocs/product/stock/replenish.php b/htdocs/product/stock/replenish.php index 21f943ee127..c925d7f0f62 100644 --- a/htdocs/product/stock/replenish.php +++ b/htdocs/product/stock/replenish.php @@ -368,6 +368,11 @@ if (!empty($conf->variants->eabled) && empty($conf->global->VARIANT_ALLOW_STOCK_ if ($fk_supplier > 0) { $sql .= ' AND EXISTS (SELECT pfp.rowid FROM '.MAIN_DB_PREFIX.'product_fournisseur_price as pfp WHERE pfp.fk_product = p.rowid AND pfp.fk_soc = '.((int) $fk_supplier).' AND pfp.entity IN ('.getEntity('product_fournisseur_price').'))'; } +// Add where from hooks +$parameters = array(); +$reshook = $hookmanager->executeHooks('printFieldListWhere', $parameters); // Note that $action and $object may have been modified by hook +$sql .= $hookmanager->resPrint; + $sql .= ' GROUP BY p.rowid, p.ref, p.label, p.description, p.price'; $sql .= ', p.price_ttc, p.price_base_type,p.fk_product_type, p.tms'; $sql .= ', p.duration, p.tobuy';