dolibarr  13.0.2
modules_chequereceipts.php
Go to the documentation of this file.
1 <?php
2 /* Copyright (C) 2003-2005 Rodolphe Quiedeville <rodolphe@quiedeville.org>
3  * Copyright (C) 2004-2009 Laurent Destailleur <eldy@users.sourceforge.net>
4  * Copyright (C) 2004 Eric Seigne <eric.seigne@ryxeo.com>
5  * Copyright (C) 2005-2009 Regis Houssin <regis.houssin@inodbox.com>
6  * Copyright (C) 2016 Juanjo Menent <jmenent@2byte.es>
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation; either version 3 of the License, or
11  * (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program. If not, see <https://www.gnu.org/licenses/>.
20  * or see https://www.gnu.org/
21  */
22 
29 require_once DOL_DOCUMENT_ROOT.'/core/class/commondocgenerator.class.php';
30 require_once DOL_DOCUMENT_ROOT.'/product/class/product.class.php';
31 require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php'; // Requis car utilise dans les classes qui heritent
32 
38 {
42  public $error = '';
43 
49  public function isEnabled()
50  {
51  return true;
52  }
53 
59  public function info()
60  {
61  global $langs;
62  $langs->load("bills");
63  return $langs->trans("NoDescription");
64  }
65 
71  public function getExample()
72  {
73  global $langs;
74  $langs->load("bills");
75  return $langs->trans("NoExample");
76  }
77 
84  public function canBeActivated()
85  {
86  return true;
87  }
88 
96  public function getNextValue($objsoc, $object)
97  {
98  global $langs;
99  return $langs->trans("NotAvailable");
100  }
101 
107  public function getVersion()
108  {
109  global $langs;
110  $langs->load("admin");
111 
112  if ($this->version == 'development') return $langs->trans("VersionDevelopment");
113  if ($this->version == 'experimental') return $langs->trans("VersionExperimental");
114  if ($this->version == 'dolibarr') return DOL_VERSION;
115  if ($this->version) return $this->version;
116  return $langs->trans("NotAvailable");
117  }
118 }
119 
125 {
129  public $error = '';
130 
131  // phpcs:disable PEAR.NamingConventions.ValidFunctionName.ScopeNotCamelCaps
139  public static function liste_modeles($db, $maxfilenamelength = 0)
140  {
141  // phpcs:enable
142  global $conf;
143 
144  $type = 'chequereceipt';
145  $liste = array();
146 
147  include_once DOL_DOCUMENT_ROOT.'/core/lib/functions2.lib.php';
148  $liste = getListOfModels($db, $type, $maxfilenamelength);
149  // TODO Remove this to use getListOfModels only
150  $liste = array('blochet'=>'blochet');
151 
152  return $liste;
153  }
154 }
155 
156 
168 function chequereceipt_pdf_create($db, $id, $message, $modele, $outputlangs)
169 {
170  global $conf, $langs;
171  $langs->load("bills");
172 
173  $dir = DOL_DOCUMENT_ROOT."/core/modules/cheque/doc/";
174 
175  // Positionne modele sur le nom du modele a utiliser
176  if (!dol_strlen($modele))
177  {
178  if (!empty($conf->global->CHEQUERECEIPT_ADDON_PDF))
179  {
180  $modele = $conf->global->CHEQUERECEIPT_ADDON_PDF;
181  } else {
182  //print $langs->trans("Error")." ".$langs->trans("Error_FACTURE_ADDON_PDF_NotDefined");
183  //return 0;
184  $modele = 'blochet';
185  }
186  }
187 
188  // Charge le modele
189  $file = "pdf_".$modele.".modules.php";
190  if (file_exists($dir.$file))
191  {
192  $classname = "pdf_".$modele;
193  require_once $dir.$file;
194 
195  $obj = new $classname($db);
196 
197  // We save charset_output to restore it because write_file can change it if needed for
198  // output format that does not support UTF8.
199  $sav_charset_output = $outputlangs->charset_output;
200  if ($obj->write_file($id, $outputlangs) > 0)
201  {
202  $outputlangs->charset_output = $sav_charset_output;
203  return 1;
204  } else {
205  $outputlangs->charset_output = $sav_charset_output;
206  dol_print_error($db, "chequereceipt_pdf_create Error: ".$obj->error);
207  return -1;
208  }
209  } else {
210  dol_print_error('', $langs->trans("Error")." ".$langs->trans("ErrorFileDoesNotExists", $dir.$file));
211  return -1;
212  }
213 }
getVersion()
Returns the module numbering version.
chequereceipt_pdf_create($db, $id, $message, $modele, $outputlangs)
Cree un bordereau remise de cheque.
getNextValue($objsoc, $object)
Returns the next value.
static liste_modeles($db, $maxfilenamelength=0)
Return list of active generation modules.
info()
Return the default description of numbering module.
getExample()
Return numbering example.
Cheque Receipts numbering references mother class.
Classe mere des modeles de.
isEnabled()
Return if a module can be used or not.
dol_strlen($string, $stringencoding= 'UTF-8')
Make a strlen call.
canBeActivated()
Checks if the numbers already in the database do not cause conflicts that would prevent this numberin...
dol_print_error($db= '', $error= '', $errors=null)
Displays error message system with all the information to facilitate the diagnosis and the escalation...
Parent class for documents generators.
getListOfModels($db, $type, $maxfilenamelength=0)
Return list of activated modules usable for document generation.