dolibarr  7.0.0-beta
modules_export.php
Go to the documentation of this file.
1 <?php
2 /* Copyright (C) 2005 Laurent Destailleur <eldy@users.sourceforge.net>
3  * Copyright (C) 2005-2007 Regis Houssin <regis.houssin@capnetworks.com>
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 3 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17  */
18 
25 require_once DOL_DOCUMENT_ROOT.'/core/class/commondocgenerator.class.php';
26 
27 
31 class ModeleExports extends CommonDocGenerator // This class can't be abstract as there is instance propreties loaded by liste_modeles
32 {
33  var $error='';
34 
35  var $driverlabel=array();
36  var $driverversion=array();
37 
38  var $liblabel=array();
39  var $libversion=array();
40 
41 
49  function liste_modeles($db,$maxfilenamelength=0)
50  {
51  dol_syslog(get_class($this)."::liste_modeles");
52 
53  $dir=DOL_DOCUMENT_ROOT."/core/modules/export/";
54  $handle=opendir($dir);
55 
56  // Recherche des fichiers drivers exports disponibles
57  $var=True;
58  $i=0;
59  if (is_resource($handle))
60  {
61  while (($file = readdir($handle))!==false)
62  {
63  if (preg_match("/^export_(.*)\.modules\.php$/i",$file,$reg))
64  {
65  $moduleid=$reg[1];
66 
67  // Loading Class
68  $file = $dir."export_".$moduleid.".modules.php";
69  $classname = "Export".ucfirst($moduleid);
70 
71  require_once $file;
72  if (class_exists($classname))
73  {
74  $module = new $classname($db);
75 
76  // Picto
77  $this->picto[$module->id]=$module->picto;
78  // Driver properties
79  $this->driverlabel[$module->id]=$module->getDriverLabel().(empty($module->disabled)?'':' __(Disabled)__'); // '__(Disabled)__' is a key
80  $this->driverdesc[$module->id]=$module->getDriverDesc();
81  $this->driverversion[$module->id]=$module->getDriverVersion();
82  // If use an external lib
83  $this->liblabel[$module->id]=$module->getLibLabel();
84  $this->libversion[$module->id]=$module->getLibVersion();
85  }
86  $i++;
87  }
88  }
89  closedir($handle);
90  }
91 
92  asort($this->driverlabel);
93 
94  return $this->driverlabel;
95  }
96 
97 
104  function getPictoForKey($key)
105  {
106  return $this->picto[$key];
107  }
108 
115  function getDriverLabelForKey($key)
116  {
117  return $this->driverlabel[$key];
118  }
119 
126  function getDriverDescForKey($key)
127  {
128  return $this->driverdesc[$key];
129  }
130 
137  function getDriverVersionForKey($key)
138  {
139  return $this->driverversion[$key];
140  }
141 
148  function getLibLabelForKey($key)
149  {
150  return $this->liblabel[$key];
151  }
152 
159  function getLibVersionForKey($key)
160  {
161  return $this->libversion[$key];
162  }
163 
164 }
165 
166 
Parent class for export modules.
getDriverLabelForKey($key)
Renvoi libelle d'un driver export.
getLibVersionForKey($key)
Renvoi version de librairie externe du driver.
getPictoForKey($key)
Return picto of export driver.
getDriverDescForKey($key)
Renvoi le descriptif d'un driver export.
dol_syslog($message, $level=LOG_INFO, $ident=0, $suffixinfilename='', $restricttologhandler='')
Write log message into outputs.
getDriverVersionForKey($key)
Renvoi version d'un driver export.
Parent class for documents generators.
liste_modeles($db, $maxfilenamelength=0)
Load into memory list of available export format.
getLibLabelForKey($key)
Renvoi libelle de librairie externe du driver.