From d793f8d25056cb4741646d9b7d01f6457af3e1c7 Mon Sep 17 00:00:00 2001
From: Juanjo Menent <jmenent@2byte.es>
Date: Wed, 29 Sep 2010 13:59:17 +0000
Subject: [PATCH] task #8618: reverse improved supplier directory structure

---
 htdocs/admin/fournisseur.php                  |   8 +-
 htdocs/core/class/html.formfile.class.php     |   2 +-
 .../class/fournisseur.commande.class.php      |   2 +-
 htdocs/fourn/commande/dispatch.php            |   2 +-
 htdocs/fourn/commande/fiche.php               |   2 +-
 .../order/mod_commande_fournisseur_muguet.php | 138 ----
 .../mod_commande_fournisseur_orchidee.php     | 139 ----
 .../order/modules_commandefournisseur.php     | 233 ------
 .../supplier/order/pdf_muscadet.modules.php   | 718 ------------------
 9 files changed, 8 insertions(+), 1236 deletions(-)
 delete mode 100755 htdocs/includes/modules/supplier/order/mod_commande_fournisseur_muguet.php
 delete mode 100755 htdocs/includes/modules/supplier/order/mod_commande_fournisseur_orchidee.php
 delete mode 100755 htdocs/includes/modules/supplier/order/modules_commandefournisseur.php
 delete mode 100755 htdocs/includes/modules/supplier/order/pdf_muscadet.modules.php

diff --git a/htdocs/admin/fournisseur.php b/htdocs/admin/fournisseur.php
index d7670bb434e..4c5f7941248 100644
--- a/htdocs/admin/fournisseur.php
+++ b/htdocs/admin/fournisseur.php
@@ -61,7 +61,7 @@ if ($_GET["action"] == 'specimen')
 	$commande->initAsSpecimen();
 
 	// Charge le modele
-	$dir = DOL_DOCUMENT_ROOT . "/includes/modules/supplier/order/";
+	$dir = DOL_DOCUMENT_ROOT . "/includes/modules/supplier_order/pdf/";
 	$file = "pdf_".$modele.".modules.php";
 	if (file_exists($dir.$file))
 	{
@@ -169,7 +169,7 @@ print "<br>";
 
 // Supplier order numbering module
 
-$dir = DOL_DOCUMENT_ROOT."/includes/modules/supplier/order/";
+$dir = DOL_DOCUMENT_ROOT."/includes/modules/supplier_order/";
 
 print_titre($langs->trans("OrdersNumberingModules"));
 
@@ -195,7 +195,7 @@ if ($handle)
 		{
 			$file = substr($file, 0, dol_strlen($file)-4);
 
-			require_once(DOL_DOCUMENT_ROOT ."/includes/modules/supplier/order/".$file.".php");
+			require_once(DOL_DOCUMENT_ROOT ."/includes/modules/supplier_order/".$file.".php");
 
 			$module = new $file;
 
@@ -263,7 +263,7 @@ print '</table><br>';
  * Modeles documents for supplier orders
  */
 
-$dir = DOL_DOCUMENT_ROOT.'/includes/modules/supplier/order/';
+$dir = DOL_DOCUMENT_ROOT.'/includes/modules/supplier_order/pdf/';
 
 print_titre($langs->trans("OrdersModelModule"));
 
diff --git a/htdocs/core/class/html.formfile.class.php b/htdocs/core/class/html.formfile.class.php
index d93d305599b..9cad5a7383f 100644
--- a/htdocs/core/class/html.formfile.class.php
+++ b/htdocs/core/class/html.formfile.class.php
@@ -267,7 +267,7 @@ class FormFile
 				if (is_array($genallowed)) $modellist=$genallowed;
 				else
 				{
-					include_once(DOL_DOCUMENT_ROOT.'/includes/modules/supplier/order/modules_commandefournisseur.php');
+					include_once(DOL_DOCUMENT_ROOT.'/includes/modules/supplier_order/modules_commandefournisseur.php');
 					$model=new ModelePDFSuppliersOrders();
 					$modellist=$model->liste_modeles($this->db);
 				}
diff --git a/htdocs/fourn/class/fournisseur.commande.class.php b/htdocs/fourn/class/fournisseur.commande.class.php
index 7fc0d65766a..5783ca1bb01 100644
--- a/htdocs/fourn/class/fournisseur.commande.class.php
+++ b/htdocs/fourn/class/fournisseur.commande.class.php
@@ -442,7 +442,7 @@ class CommandeFournisseur extends Commande
 		global $db, $langs, $conf;
 		$langs->load("orders");
 
-		$dir = DOL_DOCUMENT_ROOT .'/includes/modules/supplier/order/';
+		$dir = DOL_DOCUMENT_ROOT .'/includes/modules/supplier_order/';
 		$modelisok=0;
 		$liste=array();
 
diff --git a/htdocs/fourn/commande/dispatch.php b/htdocs/fourn/commande/dispatch.php
index f910cb80f77..9e7c72052c8 100644
--- a/htdocs/fourn/commande/dispatch.php
+++ b/htdocs/fourn/commande/dispatch.php
@@ -28,7 +28,7 @@
  */
 
 require("../../main.inc.php");
-require_once(DOL_DOCUMENT_ROOT.'/includes/modules/supplier/order/modules_commandefournisseur.php');
+require_once(DOL_DOCUMENT_ROOT.'/includes/modules/supplier_order/modules_commandefournisseur.php');
 require_once(DOL_DOCUMENT_ROOT."/product/stock/class/entrepot.class.php");
 require_once(DOL_DOCUMENT_ROOT."/lib/fourn.lib.php");
 require_once(DOL_DOCUMENT_ROOT."/fourn/class/fournisseur.commande.class.php");
diff --git a/htdocs/fourn/commande/fiche.php b/htdocs/fourn/commande/fiche.php
index 842ede959f3..0406926fdc5 100644
--- a/htdocs/fourn/commande/fiche.php
+++ b/htdocs/fourn/commande/fiche.php
@@ -30,7 +30,7 @@
 require("../../main.inc.php");
 require_once(DOL_DOCUMENT_ROOT."/core/class/html.formfile.class.php");
 require_once(DOL_DOCUMENT_ROOT."/core/class/html.formorder.class.php");
-require_once(DOL_DOCUMENT_ROOT.'/includes/modules/supplier/order/modules_commandefournisseur.php');
+require_once(DOL_DOCUMENT_ROOT.'/includes/modules/supplier_order/modules_commandefournisseur.php');
 require_once DOL_DOCUMENT_ROOT."/fourn/class/fournisseur.commande.class.php";
 require_once DOL_DOCUMENT_ROOT."/fourn/class/fournisseur.product.class.php";
 require_once DOL_DOCUMENT_ROOT."/product/class/product.class.php";
diff --git a/htdocs/includes/modules/supplier/order/mod_commande_fournisseur_muguet.php b/htdocs/includes/modules/supplier/order/mod_commande_fournisseur_muguet.php
deleted file mode 100755
index f8604ffbb6f..00000000000
--- a/htdocs/includes/modules/supplier/order/mod_commande_fournisseur_muguet.php
+++ /dev/null
@@ -1,138 +0,0 @@
-<?php
-/* Copyright (C) 2005-2008 Laurent Destailleur  <eldy@users.sourceforge.net>
- * Copyright (C) 2005-2009 Regis Houssin        <regis@dolibarr.fr>
- * Copyright (C) 2010	   Juanjo Menent        <jmenent@2byte.es>
- * 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
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * or see http://www.gnu.org/
- */
-
-/**
- *    	\file       htdocs/includes/modules/supplier/order/mod_commande_fournisseur_muguet.php
- *		\ingroup    commande
- *		\brief      Fichier contenant la classe du modele de numerotation de reference de commande fournisseur Muguet
- *		\version    $Id$
- */
-
-require_once(DOL_DOCUMENT_ROOT ."/includes/modules/supplier/order/modules_commandefournisseur.php");
-
-
-/**	    \class      mod_commande_fournisseur_muguet
- *		\brief      Classe du modele de numerotation de reference de commande fournisseur Muguet
- */
-class mod_commande_fournisseur_muguet extends ModeleNumRefSuppliersOrders
-{
-	var $version='dolibarr';		// 'development', 'experimental', 'dolibarr'
-	var $error = '';
-	var $nom = 'Muguet';
-	var $prefix='CF';
-
-
-    /**     \brief      Return description of numbering module
-     *      \return     string      Text with description
-     */
-    function info()
-    {
-    	global $langs;
-      	return $langs->trans("SimpleNumRefModelDesc",$this->prefix);
-    }
-
-
-    /**     \brief      Renvoi un exemple de numerotation
-     *      \return     string      Example
-     */
-    function getExample()
-    {
-        return $this->prefix."0501-0001";
-    }
-
-
-    /**     \brief      Test si les numeros deja en vigueur dans la base ne provoquent pas de
-     *                  de conflits qui empechera cette numerotation de fonctionner.
-     *      \return     boolean     false si conflit, true si ok
-     */
-    function canBeActivated()
-    {
-    	global $conf,$langs;
-
-        $coyymm=''; $max='';
-
-		$posindice=8;
-		$sql = "SELECT MAX(SUBSTRING(ref FROM ".$posindice.")) as max";
-        $sql.= " FROM ".MAIN_DB_PREFIX."commande_fournisseur";
-		$sql.= " WHERE ref LIKE '".$this->prefix."____-%'";
-        $sql.= " AND entity = ".$conf->entity;
-        $resql=$db->query($sql);
-        if ($resql)
-        {
-            $row = $db->fetch_row($resql);
-            if ($row) { $coyymm = substr($row[0],0,6); $max=$row[0]; }
-        }
-        if (! $coyymm || preg_match('/'.$this->prefix.'[0-9][0-9][0-9][0-9]/i',$coyymm))
-        {
-            return true;
-        }
-        else
-        {
-			$langs->load("errors");
-			$this->error=$langs->trans('ErrorNumRefModel',$max);
-            return false;
-        }
-    }
-
-    /**     \brief      Return next value
-	*      	\param      objsoc      Object third party
-	*      	\param      object		Object
-	*       \return     string      Valeur
-    */
-    function getNextValue($objsoc=0,$object='')
-    {
-        global $db,$conf;
-
-        // D'abord on recupere la valeur max
-        $posindice=8;
-        $sql = "SELECT MAX(SUBSTRING(ref FROM ".$posindice.")) as max";
-        $sql.= " FROM ".MAIN_DB_PREFIX."commande_fournisseur";
-		$sql.= " WHERE ref like '".$this->prefix."____-%'";
-        $sql.= " AND entity = ".$conf->entity;
-
-        $resql=$db->query($sql);
-        if ($resql)
-        {
-            $obj = $db->fetch_object($resql);
-            if ($obj) $max = intval($obj->max);
-            else $max=0;
-        }
-
-		//$date=time();
-        $date=$object->date_commande;
-        $yymm = strftime("%y%m",$date);
-        $num = sprintf("%04s",$max+1);
-
-        return $this->prefix.$yymm."-".$num;
-    }
-
-
-    /**     \brief      Renvoie la reference de commande suivante non utilisee
-	*      	\param      objsoc      Object third party
-	*      	\param      object		Object
-    *      	\return     string      Texte descripif
-    */
-    function commande_get_num($objsoc=0,$object='')
-    {
-        return $this->getNextValue($objsoc,$object);
-    }
-}
-
-?>
diff --git a/htdocs/includes/modules/supplier/order/mod_commande_fournisseur_orchidee.php b/htdocs/includes/modules/supplier/order/mod_commande_fournisseur_orchidee.php
deleted file mode 100755
index 4ad4fdba195..00000000000
--- a/htdocs/includes/modules/supplier/order/mod_commande_fournisseur_orchidee.php
+++ /dev/null
@@ -1,139 +0,0 @@
-<?php
-/* Copyright (C) 2003-2007 Rodolphe Quiedeville <rodolphe@quiedeville.org>
- * Copyright (C) 2004-2008 Laurent Destailleur  <eldy@users.sourceforge.net>
- * Copyright (C) 2005-2009 Regis Houssin        <regis@dolibarr.fr>
- * Copyright (C) 2010      Juanjo Menent        <jmenent@2byte.es>
- *
- * 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
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * or see http://www.gnu.org/
- */
-
-/**
- *	\file       htdocs/includes/modules/supplier/order/mod_commande_fournisseur_orchidee.php
- *	\ingroup    commande
- *	\brief      Fichier contenant la classe du modele de numerotation de reference de commande fournisseur Orchidee
- *	\version    $Id$
- */
-
-require_once(DOL_DOCUMENT_ROOT ."/includes/modules/supplier/order/modules_commandefournisseur.php");
-
-
-/**
-	\class      mod_commande_fournisseur_orchidee
-	\brief      Classe du modele de numerotation de reference de commande fournisseur Orchidee
-*/
-class mod_commande_fournisseur_orchidee extends ModeleNumRefSuppliersOrders
-{
-	var $version='dolibarr';		// 'development', 'experimental', 'dolibarr'
-	var $error = '';
-	var $nom = 'Orchidee';
-
-
-    /**     \brief      Renvoi la description du modele de numerotation
-     *      \return     string      Texte descripif
-     */
-	function info()
-    {
-    	global $conf,$langs;
-
-		$langs->load("bills");
-		$langs->load("admin");
-
-		$form = new Form($db);
-
-		$texte = $langs->trans('GenericNumRefModelDesc')."<br>\n";
-		$texte.= '<form action="'.$_SERVER["PHP_SELF"].'" method="POST">';
-		$texte.= '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
-		$texte.= '<input type="hidden" name="action" value="updateMask">';
-		$texte.= '<input type="hidden" name="maskconstorder" value="COMMANDE_FOURNISSEUR_ORCHIDEE_MASK">';
-		$texte.= '<table class="nobordernopadding" width="100%">';
-
-		$tooltip=$langs->trans("GenericMaskCodes",$langs->transnoentities("Order"));
-		$tooltip.=$langs->trans("GenericMaskCodes2");
-		$tooltip.=$langs->trans("GenericMaskCodes3");
-		$tooltip.=$langs->trans("GenericMaskCodes4a",$langs->transnoentities("Order"),$langs->transnoentities("Order"));
-		$tooltip.=$langs->trans("GenericMaskCodes5");
-
-		// Parametrage du prefix
-		$texte.= '<tr><td>'.$langs->trans("Mask").':</td>';
-		$texte.= '<td align="right">'.$form->textwithpicto('<input type="text" class="flat" size="24" name="maskorder" value="'.$conf->global->COMMANDE_FOURNISSEUR_ORCHIDEE_MASK.'">',$tooltip,1,1).'</td>';
-
-		$texte.= '<td align="left" rowspan="2">&nbsp; <input type="submit" class="button" value="'.$langs->trans("Modify").'" name="Button"></td>';
-
-		$texte.= '</tr>';
-
-		$texte.= '</table>';
-		$texte.= '</form>';
-
-		return $texte;
-    }
-
-    /**     \brief      Renvoi un exemple de numerotation
-     *      \return     string      Example
-     */
-    function getExample()
-    {
-    	global $conf,$langs,$mysoc;
-
-    	$old_code_client=$mysoc->code_client;
-    	$mysoc->code_client='CCCCCCCCCC';
-    	$numExample = $this->getNextValue($mysoc,'');
-		$mysoc->code_client=$old_code_client;
-
-		if (! $numExample)
-		{
-			$numExample = $langs->trans('NotConfigured');
-		}
-		return $numExample;
-    }
-
-	/**		\brief      Return next value
-	*      	\param      objsoc      Object third party
-	*      	\param      commande	Object supplier order
-	*      	\return     string      Value if OK, 0 if KO
-	*/
-    function getNextValue($objsoc=0,$commande='')
-    {
-		global $db,$conf;
-
-		require_once(DOL_DOCUMENT_ROOT ."/lib/functions2.lib.php");
-
-		// On defini critere recherche compteur
-		$mask=$conf->global->COMMANDE_FOURNISSEUR_ORCHIDEE_MASK;
-
-		if (! $mask)
-		{
-			$this->error='NotConfigured';
-			return 0;
-		}
-
-		$numFinal=get_next_value($db,$mask,'commande_fournisseur','ref','',$objsoc->code_fournisseur,$commande->date_commande);
-
-		return  $numFinal;
-	}
-
-
-    /**     \brief      Renvoie la reference de commande suivante non utilisee
-     *      \param      objsoc      Objet societe
-     *      \param      commande		Objet commande
-     *      \return     string      Texte descripif
-     */
-    function commande_get_num($objsoc=0,$commande='')
-    {
-        return $this->getNextValue($objsoc,$commande);
-    }
-}
-
-?>
\ No newline at end of file
diff --git a/htdocs/includes/modules/supplier/order/modules_commandefournisseur.php b/htdocs/includes/modules/supplier/order/modules_commandefournisseur.php
deleted file mode 100755
index 6cdc33a5edc..00000000000
--- a/htdocs/includes/modules/supplier/order/modules_commandefournisseur.php
+++ /dev/null
@@ -1,233 +0,0 @@
-<?php
-/* Copyright (C) 2003-2004 Rodolphe Quiedeville <rodolphe@quiedeville.org>
- * Copyright (C) 2004-2005 Laurent Destailleur  <eldy@users.sourceforge.net>
- * Copyright (C) 2004      Eric Seigne          <eric.seigne@ryxeo.com>
- * Copyright (C) 2005-2010 Regis Houssin        <regis@dolibarr.fr>
- * Copyright (C) 2006      Andre Cianfarani     <acianfa@free.fr>
- * Copyright (C) 2010      Juanjo Menent        <jmenent@2byte.es>
- *
- * 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
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * or see http://www.gnu.org/
- */
-
-/**
- *		\file       htdocs/includes/modules/supplier/order/modules_commandefournisseur.php
- *      \ingroup    commande
- *      \brief      File that contain parent class for supplier orders models
- *                  and parent class for supplier orders numbering models
- *      \version    $Id$
- */
-require_once(DOL_DOCUMENT_ROOT.'/lib/pdf.lib.php');
-require_once(DOL_DOCUMENT_ROOT.'/includes/fpdf/fpdfi/fpdi_protection.php');
-
-
-/**
- *	\class      ModelePDFSuppliersOrders
- *	\brief      Parent class for supplier orders models
- */
-class ModelePDFSuppliersOrders
-{
-	var $error='';
-
-
-	/**
-	 *      \brief      Return list of active generation modules
-	 * 		\param		$db		Database handler
-	 */
-	function liste_modeles($db)
-	{
-		global $conf;
-
-		$type='supplier_order';
-		$liste=array();
-
-		include_once(DOL_DOCUMENT_ROOT.'/lib/functions2.lib.php');
-		$liste=getListOfModels($db,$type,'');
-
-		return $liste;
-	}
-
-}
-
-
-
-/**
- *	\class      ModeleNumRefSuppliersOrders
- *	\brief      Classe mere des modeles de numerotation des references de commandes fournisseurs
- */
-class ModeleNumRefSuppliersOrders
-{
-	var $error='';
-
-	/**     \brief     	Return if a module can be used or not
-	 *      	\return		boolean     true if module can be used
-	 */
-	function isEnabled()
-	{
-		return true;
-	}
-
-	/**     \brief      Renvoi la description par defaut du modele de numerotation
-	 *      \return     string      Texte descripif
-	 */
-	function info()
-	{
-		global $langs;
-		$langs->load("orders");
-		return $langs->trans("NoDescription");
-	}
-
-	/**     \brief      Renvoi un exemple de num�rotation
-	 *      \return     string      Example
-	 */
-	function getExample()
-	{
-		global $langs;
-		$langs->load("orders");
-		return $langs->trans("NoExample");
-	}
-
-	/**     \brief      Test si les numeros deja en vigueur dans la base ne provoquent pas de
-	 *                  de conflits qui empechera cette numerotation de fonctionner.
-	 *      \return     boolean     false si conflit, true si ok
-	 */
-	function canBeActivated()
-	{
-		return true;
-	}
-
-	/**     \brief      Renvoi prochaine valeur attribuee
-	 *      \return     string      Valeur
-	 */
-	function getNextValue()
-	{
-		global $langs;
-		return $langs->trans("NotAvailable");
-	}
-
-	/**     \brief      Renvoi version du module numerotation
-	 *      	\return     string      Valeur
-	 */
-	function getVersion()
-	{
-		global $langs;
-		$langs->load("admin");
-
-		if ($this->version == 'development') return $langs->trans("VersionDevelopment");
-		if ($this->version == 'experimental') return $langs->trans("VersionExperimental");
-		if ($this->version == 'dolibarr') return DOL_VERSION;
-		return $langs->trans("NotAvailable");
-	}
-}
-
-
-/**
- *		Create object on disk
- *		@param	    db  			objet base de donnee
- *		@param	    object			object supplier order
- *		@param	    model			force le modele a utiliser ('' to not force)
- *		@param		outputlangs		objet lang a utiliser pour traduction
- *      @return     int         	0 si KO, 1 si OK
- */
-function supplier_order_pdf_create($db, $object, $model, $outputlangs)
-{
-	global $langs;
-	$langs->load("suppliers");
-
-	$dir = DOL_DOCUMENT_ROOT."/includes/modules/supplier/order/";
-
-	// Positionne modele sur le nom du modele de commande fournisseur a utiliser
-	if (! dol_strlen($model))
-	{
-		if (! empty($conf->global->COMMANDE_SUPPLIER_ADDON_PDF))
-		{
-			$model = $conf->global->COMMANDE_SUPPLIER_ADDON_PDF;
-		}
-		else
-		{
-			print $langs->trans("Error")." ".$langs->trans("Error_COMMANDE_SUPPLIER_ADDON_PDF_NotDefined");
-			return 0;
-		}
-	}
-	// Charge le modele
-	$file = "pdf_".$model.".modules.php";
-	if (file_exists($dir.$file))
-	{
-		$classname = "pdf_".$model;
-		require_once($dir.$file);
-
-		$obj = new $classname($db);
-
-		// We save charset_output to restore it because write_file can change it if needed for
-		// output format that does not support UTF8.
-		$sav_charset_output=$outputlangs->charset_output;
-		if ($obj->write_file($object,$outputlangs) > 0)
-		{
-			// on supprime l'image correspondant au preview
-			supplier_order_delete_preview($db, $object->id);
-
-			$outputlangs->charset_output=$sav_charset_output;
-			return 1;
-		}
-		else
-		{
-			$outputlangs->charset_output=$sav_charset_output;
-			dol_syslog("Erreur dans supplier_order_pdf_create");
-			dol_print_error($db,$obj->error);
-			return 0;
-		}
-	}
-	else
-	{
-		print $langs->trans("Error")." ".$langs->trans("ErrorFileDoesNotExists",$dir.$file);
-		return 0;
-	}
-}
-
-/**
- * Enter description here...
- *
- * @param   $db
- * @param   $propalid
- * @return  int
- */
-function supplier_order_delete_preview($db, $objectid)
-{
-	global $langs,$conf;
-
-	$comfourn = new CommandeFournisseur($db,"",$objectid);
-	$comfourn->fetch($objectid);
-	$client = new Societe($db);
-	$client->fetch($comfourn->socid);
-
-	if ($conf->fournisseur->dir_output.'/commande')
-	{
-		$comfournref = dol_sanitizeFileName($comfourn->ref);
-		$dir = $conf->commande->dir_output . "/" . $comfournref ;
-		$file = $dir . "/" . $comfournref . ".pdf.png";
-
-		if ( file_exists( $file ) && is_writable( $file ) )
-		{
-			if ( ! dol_delete_file($file) )
-			{
-				$this->error=$langs->trans("ErrorFailedToOpenFile",$file);
-				return 0;
-			}
-		}
-	}
-
-	return 1;
-}
-?>
diff --git a/htdocs/includes/modules/supplier/order/pdf_muscadet.modules.php b/htdocs/includes/modules/supplier/order/pdf_muscadet.modules.php
deleted file mode 100755
index 5e7d58a731f..00000000000
--- a/htdocs/includes/modules/supplier/order/pdf_muscadet.modules.php
+++ /dev/null
@@ -1,718 +0,0 @@
-<?php
-/* Copyright (C) 2004-2009 Laurent Destailleur  <eldy@users.sourceforge.net>
- * Copyright (C) 2005-2009 Regis Houssin        <regis@dolibarr.fr>
- * Copyright (C) 2007      Franky Van Liedekerke <franky.van.liedekerke@telenet.be>
- * Copyright (C) 2010	   Juanjo Menent        <jmenent@2byte.es>
- *
- * 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
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * or see http://www.gnu.org/
- */
-
-/**
- *	\file       htdocs/includes/modules/supplier/order/pdf_muscadet.modules.php
- *	\ingroup    fournisseur
- *	\brief      Fichier de la classe permettant de generer les commandes fournisseurs au modele Muscadet
- *	\version    $Id$
- */
-
-require_once(DOL_DOCUMENT_ROOT."/includes/modules/supplier/order/modules_commandefournisseur.php");
-require_once(DOL_DOCUMENT_ROOT."/fourn/class/fournisseur.commande.class.php");
-require_once(DOL_DOCUMENT_ROOT."/product/class/product.class.php");
-require_once(DOL_DOCUMENT_ROOT."/lib/company.lib.php");
-
-
-/**
- *	\class      pdf_muscadet
- *	\brief      Classe permettant de generer les commandes fournisseurs au modele Muscadet
- */
-class pdf_muscadet extends ModelePDFSuppliersOrders
-{
-
-	/**
-	 *	\brief      Constructeur
-	 *	\param	    db		Handler acces base de donnee
-	 */
-	function pdf_muscadet($db)
-	{
-		global $conf,$langs,$mysoc;
-
-		$langs->load("main");
-		$langs->load("bills");
-
-		$this->db = $db;
-		$this->name = "muscadet";
-		$this->description = $langs->trans('SuppliersCommandModel');
-
-		// Dimension page pour format A4
-		$this->type = 'pdf';
-		$this->page_largeur = 210;
-		$this->page_hauteur = 297;
-		$this->format = array($this->page_largeur,$this->page_hauteur);
-		$this->marge_gauche=10;
-		$this->marge_droite=10;
-		$this->marge_haute=10;
-		$this->marge_basse=10;
-
-		$this->option_logo = 1;                    // Affiche logo
-		$this->option_tva = 1;                     // Gere option tva FACTURE_TVAOPTION
-		$this->option_modereg = 1;                 // Affiche mode reglement
-		$this->option_condreg = 1;                 // Affiche conditions reglement
-		$this->option_codeproduitservice = 1;      // Affiche code produit-service
-		$this->option_multilang = 1;               // Dispo en plusieurs langues
-
-		$this->franchise=!$mysoc->tva_assuj;
-
-		// Recupere emmetteur
-		$this->emetteur=$mysoc;
-		if (! $this->emetteur->pays_code) $this->emetteur->pays_code=substr($langs->defaultlang,-2);    // Par defaut, si n'etait pas defini
-
-		// Defini position des colonnes
-		$this->posxdesc=$this->marge_gauche+1;
-		$this->posxtva=121;
-		$this->posxup=132;
-		$this->posxqty=151;
-		$this->posxdiscount=162;
-		$this->postotalht=177;
-
-		$this->tva=array();
-		$this->atleastoneratenotnull=0;
-		$this->atleastonediscount=0;
-	}
-
-
-	/**
-	 * 	\brief      Fonction generant la commande sur le disque
-	 * 	\param	    id	        	Id de la commande a generer
-	 *	\param		outputlangs		Lang output object
-	 *	\return	    int         	1=ok, 0=ko
-	 */
-	function write_file($object,$outputlangs='')
-	{
-		global $user,$langs,$conf;
-
-		if (! is_object($outputlangs)) $outputlangs=$langs;
-		// Force output charset to ISO, because, FPDF expect text encoded in ISO
-		$outputlangs->charset_output='ISO-8859-1';
-
-		$outputlangs->load("main");
-		$outputlangs->load("dict");
-		$outputlangs->load("companies");
-		$outputlangs->load("bills");
-		$outputlangs->load("products");
-		$outputlangs->load("orders");
-
-		if ($conf->fournisseur->dir_output.'/commande')
-		{
-			$deja_regle = "";
-
-			// Definition de $dir et $file
-			if ($object->specimen)
-			{
-				$dir = $conf->fournisseur->dir_output.'/commande';
-				$file = $dir . "/SPECIMEN.pdf";
-			}
-			else
-			{
-				$objectref = dol_sanitizeFileName($object->ref);
-				$dir = $conf->fournisseur->dir_output . "/commande/" . $objectref;
-				$file = $dir . "/" . $objectref . ".pdf";
-			}
-
-			if (! file_exists($dir))
-			{
-				if (create_exdir($dir) < 0)
-				{
-					$this->error=$langs->trans("ErrorCanNotCreateDir",$dir);
-					return 0;
-				}
-
-			}
-
-			if (file_exists($dir))
-			{
-				$nblignes = sizeof($object->lines);
-
-				// Protection et encryption du pdf
-				if ($conf->global->PDF_SECURITY_ENCRYPTION)
-				{
-					$pdf=new FPDI_Protection('P','mm',$this->format);
-					$pdfrights = array('print'); // Ne permet que l'impression du document
-					$pdfuserpass = ''; // Mot de passe pour l'utilisateur final
-					$pdfownerpass = NULL; // Mot de passe du proprietaire, cree aleatoirement si pas defini
-					$pdf->SetProtection($pdfrights,$pdfuserpass,$pdfownerpass);
-				}
-				else
-				{
-					$pdf=new FPDI('P','mm',$this->format);
-				}
-
-                if (class_exists('TCPDF'))
-                {
-                    $pdf->setPrintHeader(false);
-                    $pdf->setPrintFooter(false);
-                }
-				$pdf->SetFont('Helvetica');
-
-				$pdf->Open();
-				$pagenb=0;
-				$pdf->SetDrawColor(128,128,128);
-
-				$pdf->SetTitle($outputlangs->convToOutputCharset($object->ref));
-				$pdf->SetSubject($outputlangs->transnoentities("Order"));
-				$pdf->SetCreator("Dolibarr ".DOL_VERSION);
-				$pdf->SetAuthor($outputlangs->convToOutputCharset($user->getFullName($outputlangs)));
-				$pdf->SetKeyWords($outputlangs->convToOutputCharset($object->ref)." ".$outputlangs->transnoentities("Order"));
-				if ($conf->global->MAIN_DISABLE_PDF_COMPRESSION) $pdf->SetCompression(false);
-
-				$pdf->SetMargins($this->marge_gauche, $this->marge_haute, $this->marge_droite);   // Left, Top, Right
-				$pdf->SetAutoPageBreak(1,0);
-
-				// Positionne $this->atleastonediscount si on a au moins une remise
-				for ($i = 0 ; $i < $nblignes ; $i++)
-				{
-					if ($object->lines[$i]->remise_percent)
-					{
-						$this->atleastonediscount++;
-					}
-				}
-
-				// New page
-				$pdf->AddPage();
-				$pagenb++;
-				$this->_pagehead($pdf, $object, 1, $outputlangs);
-				$pdf->SetFont('','', 9);
-				$pdf->MultiCell(0, 3, '', 0, 'J');		// Set interline to 3
-				$pdf->SetTextColor(0,0,0);
-
-				$tab_top = 90;
-				$tab_top_newpage = 50;
-				$tab_height = 110;
-				$tab_height_newpage = 150;
-
-				// Affiche notes
-				if (! empty($object->note_public))
-				{
-					$tab_top = 88;
-
-					$pdf->SetFont('','', 9);   // Dans boucle pour gerer multi-page
-					$pdf->SetXY ($this->posxdesc-1, $tab_top);
-					$pdf->MultiCell(190, 3, $outputlangs->convToOutputCharset($object->note_public), 0, 'J');
-					$nexY = $pdf->GetY();
-					$height_note=$nexY-$tab_top;
-
-					// Rect prend une longueur en 3eme param
-					$pdf->SetDrawColor(192,192,192);
-					$pdf->Rect($this->marge_gauche, $tab_top-1, $this->page_largeur-$this->marge_gauche-$this->marge_droite, $height_note+1);
-
-					$tab_height = $tab_height - $height_note;
-					$tab_top = $nexY+6;
-				}
-				else
-				{
-					$height_note=0;
-				}
-
-				$iniY = $tab_top + 7;
-				$curY = $tab_top + 7;
-				$nexY = $tab_top + 7;
-
-				// Boucle sur les lignes
-				for ($i = 0 ; $i < $nblignes ; $i++)
-				{
-					$curY = $nexY;
-
-					// Description de la ligne produit
-					//$libelleproduitservice=pdf_getlinedesc($object,$i,$outputlangs,0,0,1);
-
-					$pdf->SetFont('','', 9);   // Dans boucle pour gerer multi-page
-					
-					pdf_getlinedesc($pdf,$object,$i,$outputlangs,108,3,$this->posxdesc-1,$curY,0,0,1);
-
-					//$pdf->writeHTMLCell(108, 3, $this->posxdesc-1, $curY, $outputlangs->convToOutputCharset($libelleproduitservice), 0, 1);
-
-					$pdf->SetFont('','', 9);   // On repositionne la police par defaut
-
-					$nexY = $pdf->GetY();
-
-					// TVA
-					$pdf->SetXY ($this->posxtva, $curY);
-					$pdf->MultiCell(10, 3, ($object->lines[$i]->tva_tx < 0 ? '*':'').abs($object->lines[$i]->tva_tx), 0, 'R');
-
-					// Unit price before discount
-					$pdf->SetXY ($this->posxup, $curY);
-					$pdf->MultiCell(18, 3, price($object->lines[$i]->subprice), 0, 'R', 0);
-
-					// Quantity
-					$pdf->SetXY ($this->posxqty, $curY);
-					$pdf->MultiCell(10, 3, $object->lines[$i]->qty, 0, 'R');
-
-					// Discount on line
-					$pdf->SetXY ($this->posxdiscount, $curY);
-					if ($object->lines[$i]->remise_percent)
-					{
-						$pdf->MultiCell(14, 3, $object->lines[$i]->remise_percent."%", 0, 'R');
-					}
-
-					// Total HT line
-					$pdf->SetXY ($this->postotalht, $curY);
-					$total = price($object->lines[$i]->total_ht);
-					$pdf->MultiCell(23, 3, $total, 0, 'R', 0);
-
-					// Collecte des totaux par valeur de tva dans $this->tva["taux"]=total_tva
-					$tvaligne=$object->lines[$i]->total_tva;
-					if ($object->remise_percent) $tvaligne-=($tvaligne*$object->remise_percent)/100;
-					$vatrate=(string) $object->lines[$i]->tva_tx;
-					if (($object->lines[$i]->info_bits & 0x01) == 0x01) $vatrate.='*';
-					$this->tva[$vatrate] += $tvaligne;
-
-					$nexY+=2;    // Passe espace entre les lignes
-
-					// Test if a new page is required
-					if ($pagenb == 1)
-					{
-						$tab_top_in_current_page=$tab_top;
-						$tab_height_in_current_page=$tab_height;
-					}
-					else
-					{
-						$tab_top_in_current_page=$tab_top_newpage;
-						$tab_height_in_current_page=$tab_height_newpage;
-					}
-					if (($nexY+$nblineFollowDesc) > ($tab_top_in_current_page+$tab_height_in_current_page) && $i < ($nblignes - 1))
-					{
-						if ($pagenb == 1)
-						{
-							$this->_tableau($pdf, $tab_top, $tab_height + 20, $nexY, $outputlangs);
-						}
-						else
-						{
-							$this->_tableau($pdf, $tab_top_newpage, $tab_height_newpage, $nexY, $outputlangs);
-						}
-
-						$this->_pagefoot($pdf, $object, $outputlangs);
-
-						// New page
-						$pdf->AddPage();
-						$pagenb++;
-						$this->_pagehead($pdf, $object, 0, $outputlangs);
-						$pdf->SetFont('','', 9);
-						$pdf->MultiCell(0, 3, '', 0, 'J');		// Set interline to 3
-						$pdf->SetTextColor(0,0,0);
-
-						$nexY = $tab_top_newpage + 7;
-					}
-
-				}
-
-				// Show square
-				if ($pagenb == 1)
-				{
-					$this->_tableau($pdf, $tab_top, $tab_height, $nexY, $outputlangs);
-					$bottomlasttab=$tab_top + $tab_height + 1;
-				}
-				else
-				{
-					$this->_tableau($pdf, $tab_top_newpage, $tab_height_newpage, $nexY, $outputlangs);
-					$bottomlasttab=$tab_top_newpage + $tab_height_newpage + 1;
-				}
-
-				$posy=$this->_tableau_tot($pdf, $object, $deja_regle, $bottomlasttab, $outputlangs);
-
-				if ($deja_regle)
-				{
-					$this->_tableau_versements($pdf, $fac, $posy);
-				}
-
-				/*
-				 * Mode de reglement
-				 */
-				if ((! defined("FACTURE_CHQ_NUMBER") || ! FACTURE_CHQ_NUMBER) && (! defined("FACTURE_RIB_NUMBER") || ! FACTURE_RIB_NUMBER))
-				{
-					$pdf->SetXY ($this->marge_gauche, 228);
-					$pdf->SetTextColor(200,0,0);
-					$pdf->SetFont('','B',8);
-					$pdf->MultiCell(90, 3, $outputlangs->transnoentities("ErrorNoPaiementModeConfigured"),0,'L',0);
-					$pdf->MultiCell(90, 3, $outputlangs->transnoentities("ErrorCreateBankAccount"),0,'L',0);
-					$pdf->SetTextColor(0,0,0);
-				}
-
-				/*
-				 * Pied de page
-				 */
-				$this->_pagefoot($pdf, $object, $outputlangs);
-				$pdf->AliasNbPages();
-
-				$pdf->Close();
-
-				$pdf->Output($file,'F');
-				if (! empty($conf->global->MAIN_UMASK))
-				@chmod($file, octdec($conf->global->MAIN_UMASK));
-
-				return 1;   // Pas d'erreur
-			}
-			else
-			{
-				$this->error=$langs->trans("ErrorCanNotCreateDir",$dir);
-				return 0;
-			}
-		}
-		else
-		{
-			$this->error=$langs->trans("ErrorConstantNotDefined","SUPPLIER_OUTPUTDIR");
-			return 0;
-		}
-		$this->error=$langs->trans("ErrorUnknown");
-		return 0;   // Erreur par defaut
-	}
-
-	/**
-	 *   \brief      Affiche le total a payer
-	 *   \param      pdf         	Objet PDF
-	 *   \param      object        	Objet order
-	 *   \param      deja_regle  	Montant deja regle
-	 *   \return     y              Position pour suite
-	 */
-	function _tableau_tot(&$pdf, $object, $deja_regle, $posy, $outputlangs)
-	{
-		$tab2_top = $posy;
-		$tab2_hl = 5;
-		$tab2_height = $tab2_hl * 4;
-		$pdf->SetFont('','', 9);
-
-		$pdf->SetXY ($this->marge_gauche, $tab2_top + 0);
-
-		// If France, show VAT mention if not applicable
-		if ($this->emetteur->pays_code == 'FR' && $this->franchise == 1)
-		{
-			$pdf->MultiCell(100, $tab2_hl, "* TVA non applicable art-293B du CGI", 0, 'L', 0);
-		}
-
-		// Tableau total
-		$lltot = 200; $col1x = 120; $col2x = 182; $largcol2 = $lltot - $col2x;
-
-		// Total HT
-		$pdf->SetFillColor(255,255,255);
-		$pdf->SetXY ($col1x, $tab2_top + 0);
-		$pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("TotalHT"), 0, 'L', 1);
-
-		$pdf->SetXY ($col2x, $tab2_top + 0);
-		$pdf->MultiCell($largcol2, $tab2_hl, price($object->total_ht + $object->remise), 0, 'R', 1);
-
-		// Remise globale
-		if ($object->remise > 0)
-		{
-			$pdf->SetXY ($col1x, $tab2_top + $tab2_hl);
-			$pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("GlobalDiscount"), 0, 'L', 1);
-
-			$pdf->SetXY ($col2x, $tab2_top + $tab2_hl);
-			$pdf->MultiCell($largcol2, $tab2_hl, "-".$object->remise_percent."%", 0, 'R', 1);
-
-			$pdf->SetXY ($col1x, $tab2_top + $tab2_hl * 2);
-			$pdf->MultiCell($col2x-$col1x, $tab2_hl, "Total HT apres remise", 0, 'L', 1);
-
-			$pdf->SetXY ($col2x, $tab2_top + $tab2_hl * 2);
-			$pdf->MultiCell($largcol2, $tab2_hl, price($object->total_ht), 0, 'R', 0);
-
-			$index = 2;
-		}
-		else
-		{
-			$index = 0;
-		}
-
-		// Affichage des totaux de TVA par taux (conformement a reglementation)
-		$pdf->SetFillColor(248,248,248);
-
-		foreach( $this->tva as $tvakey => $tvaval )
-		{
-			if ($tvakey)    // On affiche pas taux 0
-			{
-				$this->atleastoneratenotnull++;
-
-				$index++;
-				$pdf->SetXY ($col1x, $tab2_top + $tab2_hl * $index);
-
-				$tvacompl='';
-
-				if (preg_match('/\*/',$tvakey))
-				{
-					$tvakey=str_replace('*','',$tvakey);
-					$tvacompl = " (".$outputlangs->transnoentities("NonPercuRecuperable").")";
-				}
-
-				$totalvat =$outputlangs->transnoentities("TotalVAT").' ';
-				$totalvat.=vatrate($tvakey,1).$tvacompl;
-				$pdf->MultiCell($col2x-$col1x, $tab2_hl, $totalvat, 0, 'L', 1);
-
-				$pdf->SetXY ($col2x, $tab2_top + $tab2_hl * $index);
-				$pdf->MultiCell($largcol2, $tab2_hl, price($tvaval), 0, 'R', 1);
-			}
-		}
-		if (! $this->atleastoneratenotnull) // If not vat at all
-		{
-			$index++;
-			$pdf->SetXY ($col1x, $tab2_top + $tab2_hl * $index);
-			$pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("TotalVAT"), 0, 'L', 1);
-			$pdf->SetXY ($col2x, $tab2_top + $tab2_hl * $index);
-			$pdf->MultiCell($largcol2, $tab2_hl, price($object->total_tva), 0, 'R', 1);
-		}
-
-		$useborder=0;
-
-		$index++;
-		$pdf->SetXY ($col1x, $tab2_top + $tab2_hl * $index);
-		$pdf->SetTextColor(0,0,60);
-		$pdf->SetFillColor(224,224,224);
-		$pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("TotalTTC"), $useborder, 'L', 1);
-
-		$pdf->SetXY ($col2x, $tab2_top + $tab2_hl * $index);
-		$pdf->MultiCell($largcol2, $tab2_hl, price($object->total_ttc), $useborder, 'R', 1);
-		$pdf->SetFont('','', 9);
-		$pdf->SetTextColor(0,0,0);
-
-		if ($deja_regle > 0)
-		{
-			$index++;
-
-			$pdf->SetXY ($col1x, $tab2_top + $tab2_hl * $index);
-			$pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("AlreadyPaid"), 0, 'L', 0);
-
-			$pdf->SetXY ($col2x, $tab2_top + $tab2_hl * $index);
-			$pdf->MultiCell($largcol2, $tab2_hl, price($deja_regle), 0, 'R', 0);
-
-			$index++;
-			$pdf->SetTextColor(0,0,60);
-			//$pdf->SetFont('','B', 9);
-			$pdf->SetXY ($col1x, $tab2_top + $tab2_hl * $index);
-			$pdf->MultiCell($col2x-$col1x, $tab2_hl, $outputlangs->transnoentities("RemainderToPay"), $useborder, 'L', 1);
-
-			$pdf->SetXY ($col2x, $tab2_top + $tab2_hl * $index);
-			$pdf->MultiCell($largcol2, $tab2_hl, price($object->total_ttc - $deja_regle), $useborder, 'R', 1);
-			$pdf->SetFont('','', 9);
-			$pdf->SetTextColor(0,0,0);
-		}
-
-		$index++;
-		return ($tab2_top + ($tab2_hl * $index));
-	}
-
-	/**
-	 *   \brief      Affiche la grille des lignes de propales
-	 *   \param      pdf     objet PDF
-	 */
-	function _tableau(&$pdf, $tab_top, $tab_height, $nexY, $outputlangs)
-	{
-		global $conf;
-
-		// Montants exprimes en     (en tab_top - 1
-		$pdf->SetTextColor(0,0,0);
-		$pdf->SetFont('','',8);
-		$titre = $outputlangs->transnoentities("AmountInCurrency",$outputlangs->transnoentitiesnoconv("Currency".$conf->monnaie));
-		$pdf->Text($this->page_largeur - $this->marge_droite - $pdf->GetStringWidth($titre), $tab_top-1, $titre);
-
-		$pdf->SetDrawColor(128,128,128);
-
-		// Rect prend une longueur en 3eme param
-		$pdf->Rect($this->marge_gauche, $tab_top, $this->page_largeur-$this->marge_gauche-$this->marge_droite, $tab_height);
-		// line prend une position y en 3eme param
-		$pdf->line($this->marge_gauche, $tab_top+6, $this->page_largeur-$this->marge_droite, $tab_top+6);
-
-		$pdf->SetFont('','',10);
-
-		$pdf->SetXY ($this->posxdesc-1, $tab_top+2);
-		$pdf->MultiCell(108,2, $outputlangs->transnoentities("Designation"),'','L');
-
-		$pdf->line($this->posxtva-1, $tab_top, $this->posxtva-1, $tab_top + $tab_height);
-		$pdf->SetXY ($this->posxtva-1, $tab_top+2);
-		$pdf->MultiCell(12,2, $outputlangs->transnoentities("VAT"),'','C');
-
-		$pdf->line($this->posxup-1, $tab_top, $this->posxup-1, $tab_top + $tab_height);
-		$pdf->SetXY ($this->posxup-1, $tab_top+2);
-		$pdf->MultiCell(18,2, $outputlangs->transnoentities("PriceUHT"),'','C');
-
-		$pdf->line($this->posxqty-1, $tab_top, $this->posxqty-1, $tab_top + $tab_height);
-		$pdf->SetXY ($this->posxqty-1, $tab_top+2);
-		$pdf->MultiCell(11,2, $outputlangs->transnoentities("Qty"),'','C');
-
-		$pdf->line($this->posxdiscount-1, $tab_top, $this->posxdiscount-1, $tab_top + $tab_height);
-		if ($this->atleastonediscount)
-		{
-			$pdf->SetXY ($this->posxdiscount-1, $tab_top+2);
-			$pdf->MultiCell(16,2, $outputlangs->transnoentities("ReductionShort"),'','C');
-		}
-
-		if ($this->atleastonediscount)
-		{
-			$pdf->line($this->postotalht, $tab_top, $this->postotalht, $tab_top + $tab_height);
-		}
-		$pdf->SetXY ($this->postotalht-1, $tab_top+2);
-		$pdf->MultiCell(23,2, $outputlangs->transnoentities("TotalHTShort"),'','C');
-
-	}
-
-	/**
-	 *   	\brief      Show header of page
-	 *    	\param      pdf     		Object PDF
-	 *      \param      object          Object invoice
-	 *      \param      showadress      0=no, 1=yes
-	 *      \param      outputlangs		Object lang for output
-	 */
-	function _pagehead(&$pdf, $object, $showadress=1, $outputlangs)
-	{
-		global $langs,$conf,$mysoc;
-
-		$outputlangs->load("main");
-		$outputlangs->load("bills");
-		$outputlangs->load("orders");
-		$outputlangs->load("companies");
-
-		// Do not add the BACKGROUND as this is for suppliers
-		//pdf_pagehead($pdf,$outputlangs,$this->page_hauteur);
-
-		$pdf->SetTextColor(0,0,60);
-		$pdf->SetFont('','B',13);
-
-		$posy=$this->marge_haute;
-
-		$pdf->SetXY($this->marge_gauche,$posy);
-
-		// Logo
-		$logo=$conf->mycompany->dir_output.'/logos/'.$mysoc->logo;
-		if ($mysoc->logo)
-		{
-			if (is_readable($logo))
-			{
-				$pdf->Image($logo, $this->marge_gauche, $posy, 0, 24);
-			}
-			else
-			{
-				$pdf->SetTextColor(200,0,0);
-				$pdf->SetFont('','B',8);
-				$pdf->MultiCell(100, 3, $outputlangs->transnoentities("ErrorLogoFileNotFound",$logo), 0, 'L');
-				$pdf->MultiCell(100, 3, $outputlangs->transnoentities("ErrorGoToModuleSetup"), 0, 'L');
-			}
-		}
-		else
-		{
-			$text=$this->emetteur->nom;
-			$pdf->MultiCell(100, 4, $outputlangs->convToOutputCharset($text), 0, 'L');
-		}
-
-		$pdf->SetFont('','B',13);
-		$pdf->SetXY(100,$posy);
-		$pdf->SetTextColor(0,0,60);
-		$pdf->MultiCell(100, 4, $outputlangs->transnoentities("SupplierOrder")." ".$outputlangs->convToOutputCharset($object->ref), '' , 'R');
-		$pdf->SetFont('','',12);
-
-		$posy+=6;
-		$pdf->SetXY(100,$posy);
-		if ($object->date_commande)
-		{
-			$pdf->SetTextColor(0,0,60);
-			$pdf->MultiCell(100, 4, $outputlangs->transnoentities("Date")." : " . dol_print_date($object->date_commande,"day",false,$outputlangs,true), '', 'R');
-		}
-		else
-		{
-			$pdf->SetTextColor(255,0,0);
-			$pdf->MultiCell(100, 4, strtolower($outputlangs->transnoentities("OrderToProcess")), '', 'R');
-		}
-
-		if ($showadress)
-		{
-			// Receive email
-			$posy=42;
-			$hautcadre=40;
-			$pdf->SetTextColor(0,0,0);
-			$pdf->SetFont('','',8);
-			$pdf->SetXY($this->marge_gauche,$posy-5);
-			$pdf->MultiCell(66,5, $outputlangs->transnoentities("BillTo").":");
-
-
-			$pdf->SetXY($this->marge_gauche,$posy);
-			$pdf->SetFillColor(230,230,230);
-			$pdf->MultiCell(82, $hautcadre, "", 0, 'R', 1);
-
-
-
-			// Nom emetteur
-			$carac_emetteur_name=$outputlangs->convToOutputCharset($mysoc->nom);
-			$pdf->SetTextColor(0,0,60);
-			$pdf->SetFont('','B',10);
-			$pdf->SetXY($this->marge_gauche+2,$posy+3);
-			$pdf->MultiCell(80, 4, $carac_emetteur_name, 0, 'L');
-
-			// Sender properties
-			$carac_emetteur = pdf_build_address($outputlangs,$mysoc);
-
-			$pdf->SetFont('','',9);
-			$pdf->SetXY($this->marge_gauche+2,$posy+8);
-			$pdf->MultiCell(80, 4, $carac_emetteur);
-
-			// Client destinataire
-			$posy=42;
-			$pdf->SetTextColor(0,0,0);
-			$pdf->SetFont('','',8);
-			$pdf->SetXY(100,$posy-5);
-			$pdf->MultiCell(96, 4, $outputlangs->transnoentities("Supplier").":");
-			//
-			$client = new Societe($this->db);
-			$client->fetch($object->socid);
-			$object->client = $client;
-			//
-
-			// Cadre client destinataire
-			$pdf->rect(100, $posy, 100, $hautcadre);
-
-			// Recipient name
-			if (! empty($usecontact))
-			{
-				// On peut utiliser le nom de la societe du contact
-				if ($conf->global->MAIN_USE_COMPANY_NAME_OF_CONTACT) $socname = $object->contact->socname;
-				else $socname = $object->client->nom;
-				$carac_client_name=$outputlangs->convToOutputCharset($socname);
-			}
-			else
-			{
-				$carac_client_name=$outputlangs->convToOutputCharset($object->client->nom);
-			}
-
-			$carac_client=pdf_build_address($outputlangs,$this->emetteur,$object->client,$object->contact,$usecontact,'target');
-
-			// Show customer/recipient
-			$pdf->SetXY(102,$posy+3);
-			$pdf->SetFont('','B',10);
-			$pdf->MultiCell(96,4, $carac_client_name, 0, 'L');
-
-			$pdf->SetFont('','',9);
-			$pdf->SetXY(102,$posy+8);
-			$pdf->MultiCell(96,4, $carac_client);
-		}
-	}
-
-	/**
-	 *   	\brief      Show footer of page
-	 *   	\param      pdf     		PDF factory
-	 * 		\param		object			Object invoice
-	 *      \param      outputlang		Object lang for output
-	 * 		\remarks	Need this->emetteur object
-	 */
-	function _pagefoot(&$pdf, $object, $outputlangs)
-	{
-		return pdf_pagefoot($pdf,$outputlangs,'FACTURESUPPLIER_FREE_TEXT',$this->emetteur,$this->marge_basse,$this->marge_gauche,$this->page_hauteur,$object);
-	}
-
-}
-
-?>
-- 
GitLab