From b15ae9af7f285e326739a7c06508038514fa6892 Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Fri, 29 Jul 2005 09:18:32 +0000 Subject: [PATCH] =?UTF-8?q?Ajout:=20le=20fichier=20png=20de=20preview=20de?= =?UTF-8?q?=20la=20facture=20est=20effa=E7=E9=20si=20on=20r=E9g=E9n=E8re?= =?UTF-8?q?=20le=20pdf=20merci=20=E0=20Christophe?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/facture/modules_facture.php | 51 ++++++++++++++++--- 1 file changed, 43 insertions(+), 8 deletions(-) diff --git a/htdocs/includes/modules/facture/modules_facture.php b/htdocs/includes/modules/facture/modules_facture.php index 6c7aadb7905..2b57f74f104 100644 --- a/htdocs/includes/modules/facture/modules_facture.php +++ b/htdocs/includes/modules/facture/modules_facture.php @@ -2,6 +2,7 @@ /* Copyright (C) 2003-2005 Rodolphe Quiedeville * Copyright (C) 2004 Laurent Destailleur * Copyright (C) 2004 Eric Seigne + * Copyright (C) 2005 Regis Houssin * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -123,6 +124,10 @@ function facture_pdf_create($db, $facid, $message="") { // Succès de la création de la facture. On génère le fichier meta facture_meta_create($db, $facid); + + // et on supprime l'image correspondant au preview + facture_delete_preview($db, $facid); + return 1; } else @@ -225,15 +230,15 @@ function facture_get_num($soc, $prefixe_additionnel='') $numref = $obj->getNumRef($soc, $prefixe_additionnel); if ( $numref != "") - { - return $numref; - } + { + return $numref; + } else - { - dolibarr_syslog("Erreur dans facture_get_num"); - dolibarr_print_error($db,$obj->numreferror()); - return ""; - } + { + dolibarr_syslog("Erreur dans facture_get_num"); + dolibarr_print_error($db,$obj->numreferror()); + return ""; + } } else { @@ -242,4 +247,34 @@ function facture_get_num($soc, $prefixe_additionnel='') } } +/** + \brief Supprime l'image de prévisualitation, pour le cas de régénération de facture + \param db objet base de donnée + \param facid id de la facture à créer +*/ +function facture_delete_preview($db, $facid) +{ + global $langs,$conf; + + $fac = new Facture($db,"",$facid); + $fac->fetch($facid); + $fac->fetch_client(); + + if ($conf->facture->dir_output) + { + $facref = sanitize_string($fac->ref); + $dir = $conf->facture->dir_output . "/" . $facref ; + $file = $dir . "/" . $facref . ".pdf.png"; + + if ( file_exists( $file ) && is_writable( $file ) ) + { + if ( ! unlink($file) ) + { + $this->error=$langs->trans("ErrorFailedToOpenFile",$file); + return 0; + } + } + } +} + ?>