From 045cb2cf690aa685ecf37a895fe94bdaa0e150ef Mon Sep 17 00:00:00 2001 From: ccomb Date: Tue, 16 Aug 2005 14:04:36 +0000 Subject: [PATCH] lorsque la date de facture est forcee a la date de validation, la date limite de reglement n'etait pas recalculee et pouvait meme devenir anterieure a la date de facture. --- htdocs/facture.class.php | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/htdocs/facture.class.php b/htdocs/facture.class.php index b51ae1197c2..4fa1c9e9aaf 100644 --- a/htdocs/facture.class.php +++ b/htdocs/facture.class.php @@ -734,6 +734,31 @@ class Facture if (defined("FAC_FORCE_DATE_VALIDATION") && FAC_FORCE_DATE_VALIDATION == "1") { $sql .= ", datef=now()"; + // du coup, il faut aussi recalculer la date limite de règlement + $sqltemp = "SELECT c.fdm,c.nbjour,c.rowid,f.fk_cond_reglement,f.rowid FROM ".MAIN_DB_PREFIX."cond_reglement as c, ".MAIN_DB_PREFIX."facture as f WHERE c.rowid=f.fk_cond_reglement AND f.rowid=$this->id"; + if ($this->db->query($sqltemp)) + { + if ($this->db->num_rows()) + { + $obj = $this->db->fetch_object(); + print_r($obj); + $cdr_nbjour = $obj->nbjour; + $cdr_fdm = $obj->fdm; + } + } + $this->db->free(); + // Definition de la date limite + $datelim = time() + ( $cdr_nbjour * 3600 * 24 ); + if ($cdr_fdm) + { + $mois=date('m', $datelim); + $annee=date('Y', $datelim); + $fins=array(31,28,31,30,31,30,31,31,30,31,30,31); + $datelim=mktime(0,0,0,$mois,$fins[$mois-1],$annee); + } + + $sql .= ", date_lim_reglement=".$this->db->idate($datelim); + } $sql .= " WHERE rowid = $rowid ;";