diff --git a/htdocs/admin/societe.php b/htdocs/admin/societe.php
index cead9b8ac53..ff0d5c4d607 100644
--- a/htdocs/admin/societe.php
+++ b/htdocs/admin/societe.php
@@ -88,7 +88,7 @@ if ($_POST["action"] == 'setModuleOptions')
if ($_GET["action"] == 'set')
{
$type='company';
- $sql = "INSERT INTO ".MAIN_DB_PREFIX."document_model (nom, type, entity) VALUES ('".$_GET["value"]."','".$type."',".$conf->entity.")";
+ $sql = "INSERT INTO ".MAIN_DB_PREFIX."document_model (nom, type, entity, libelle) VALUES ('".$_GET["value"]."','".$type."',".$conf->entity.", ".($_GET["label"]?"'".addslashes($_GET["label"])."'":'null').")";
if ($db->query($sql))
{
@@ -111,7 +111,8 @@ if ($_GET["action"] == 'setdoc')
$sql_del.= " AND type = '".$type."'";
$sql_del.= " AND entity = ".$conf->entity;
$result1=$db->query($sql_del);
- $sql = "INSERT INTO ".MAIN_DB_PREFIX."document_model (nom,type,entity) VALUES ('".$_GET["value"]."','".$type."',".$conf->entity.")";
+
+ $sql = "INSERT INTO ".MAIN_DB_PREFIX."document_model (nom, type, entity, libelle) VALUES ('".$_GET["value"]."', '".$type."', ".$conf->entity.", ".($_GET["label"]?"'".addslashes($_GET["label"])."'":'null').")";
$result2=$db->query($sql);
if ($result1 && $result2)
{
@@ -333,7 +334,7 @@ foreach ($conf->file->dol_document_root as $dirroot)
$module = new $classname($db);
print '
| ';
- echo $module->name;
+ print $module->name;
print " | \n";
if (method_exists($module,'info')) print $module->info($langs);
else print $module->description;
@@ -345,7 +346,7 @@ foreach ($conf->file->dol_document_root as $dirroot)
print " | \n";
if ($conf->global->COMPANY_ADDON_PDF != "$name")
{
- print '';
+ print 'name).'">';
print img_picto($langs->trans("Enabled"),'on');
print '';
}
@@ -358,7 +359,7 @@ foreach ($conf->file->dol_document_root as $dirroot)
else
{
print " | \n";
- print ''.img_picto($langs->trans("Disabled"),'off').'';
+ print 'name).'">'.img_picto($langs->trans("Disabled"),'off').'';
print " | ";
}
@@ -370,7 +371,7 @@ foreach ($conf->file->dol_document_root as $dirroot)
}
else
{
- print ''.img_picto($langs->trans("Disabled"),'off').'';
+ print 'name).'" alt="'.$langs->trans("Default").'">'.img_picto($langs->trans("Disabled"),'off').'';
}
print '';
diff --git a/htdocs/comm/propal.php b/htdocs/comm/propal.php
index 97a0ef4b55b..ab1ee65a68b 100644
--- a/htdocs/comm/propal.php
+++ b/htdocs/comm/propal.php
@@ -2081,7 +2081,7 @@ else
$pagenext = $page + 1;
$sql = 'SELECT s.nom, s.rowid, s.client, ';
- $sql.= 'p.rowid as propalid, p.total_ht, p.ref, p.fk_statut, p.fk_user_author, '.$db->pdate('p.datep').' as dp,'.$db->pdate('p.fin_validite').' as dfv,';
+ $sql.= 'p.rowid as propalid, p.total_ht, p.ref, p.fk_statut, p.fk_user_author, p.datep as dp, p.fin_validite as dfv,';
if (!$user->rights->societe->client->voir && !$socid) $sql .= " sc.fk_soc, sc.fk_user,";
$sql.= ' u.login';
$sql.= ' FROM ('.MAIN_DB_PREFIX.'societe as s, '.MAIN_DB_PREFIX.'propal as p';
@@ -2237,10 +2237,10 @@ else
// Date propale
print '';
- $y = dol_print_date($objp->dp,'%Y');
- $m = dol_print_date($objp->dp,'%m');
- $mt= dol_print_date($objp->dp,'%b');
- $d = dol_print_date($objp->dp,'%d');
+ $y = dol_print_date($db->jdate($objp->dp),'%Y');
+ $m = dol_print_date($db->jdate($objp->dp),'%m');
+ $mt= dol_print_date($db->jdate($objp->dp),'%b');
+ $d = dol_print_date($db->jdate($objp->dp),'%d');
print $d."\n";
print ' ';
print $mt."\n";
@@ -2250,7 +2250,7 @@ else
// Date fin validite
if ($objp->dfv)
{
- print ' | '.dol_print_date($objp->dfv,'day');
+ print ' | '.dol_print_date($db->jdate($objp->dfv),'day');
print ' | ';
}
else
diff --git a/htdocs/html.formfile.class.php b/htdocs/html.formfile.class.php
index d1a49fdf704..d7146717df5 100644
--- a/htdocs/html.formfile.class.php
+++ b/htdocs/html.formfile.class.php
@@ -168,7 +168,17 @@ class FormFile
if ($genallowed)
{
$modellist=array();
- if ($modulepart == 'propal')
+ if ($modulepart == 'company')
+ {
+ if (is_array($genallowed)) $modellist=$genallowed;
+ else
+ {
+ include_once(DOL_DOCUMENT_ROOT.'/includes/modules/societe/modules_societe.class.php');
+ $model=new ModeleThirdPartyDoc();
+ $modellist=$model->liste_modeles($this->db);
+ }
+ }
+ else if ($modulepart == 'propal')
{
if (is_array($genallowed)) $modellist=$genallowed;
else
diff --git a/htdocs/includes/modules/commande/modules_commande.php b/htdocs/includes/modules/commande/modules_commande.php
index 2f4ba4e6300..7ea519bb49d 100644
--- a/htdocs/includes/modules/commande/modules_commande.php
+++ b/htdocs/includes/modules/commande/modules_commande.php
@@ -44,8 +44,8 @@ class ModelePDFCommandes
var $error='';
/**
- * \brief Renvoi la liste des modeles actifs
- * \return array Tableau des modeles (cle=id, valeur=libelle)
+ * \brief Return list of active generation modules
+ * \param $db Database handler
*/
function liste_modeles($db)
{
@@ -53,31 +53,12 @@ class ModelePDFCommandes
$type='order';
$liste=array();
- $sql = "SELECT nom as id, nom as lib";
- $sql.= " FROM ".MAIN_DB_PREFIX."document_model";
- $sql.= " WHERE type = '".$type."'";
- $sql.= " AND entity = ".$conf->entity;
- $resql = $db->query($sql);
- if ($resql)
- {
- $num = $db->num_rows($resql);
- $i = 0;
- while ($i < $num)
- {
- $row = $db->fetch_row($resql);
- $liste[$row[0]]=$row[1];
- $i++;
- }
- }
- else
- {
- $this->error=$db->error();
- return -1;
- }
+ include_once(DOL_DOCUMENT_ROOT.'/lib/functions2.lib.php');
+ $liste=getListOfModels($db,$type,'');
+
return $liste;
}
-
}
diff --git a/htdocs/includes/modules/dons/modules_don.php b/htdocs/includes/modules/dons/modules_don.php
index c8bdf66ebf3..6730bfd89aa 100644
--- a/htdocs/includes/modules/dons/modules_don.php
+++ b/htdocs/includes/modules/dons/modules_don.php
@@ -41,44 +41,29 @@ class ModeleDon
{
var $error='';
- /**
- * \brief Renvoi la liste des modeles actifs
- * \param db Handler de base
- */
- function liste_modeles($db)
- {
- $type='donation';
- $liste=array();
- $sql ="SELECT nom as id, nom as lib";
- $sql.=" FROM ".MAIN_DB_PREFIX."document_model";
- $sql.=" WHERE type = '".$type."'";
+ /**
+ * \brief Return list of active generation modules
+ * \param $db Database handler
+ */
+ function liste_modeles($db)
+ {
+ global $conf;
- $resql = $db->query($sql);
- if ($resql)
- {
- $num = $db->num_rows($resql);
- $i = 0;
- while ($i < $num)
- {
- $row = $db->fetch_row($resql);
- $liste[$row[0]]=$row[1];
- $i++;
- }
- }
- else
- {
- return -1;
- }
- return $liste;
- }
+ $type='donation';
+ $liste=array();
+ include_once(DOL_DOCUMENT_ROOT.'/lib/functions2.lib.php');
+ $liste=getListOfModels($db,$type,'');
+
+ return $liste;
+ }
}
/**
- \class ModeleNumRefDons
- \brief Classe m�re des mod�les de num�rotation des r�f�rences des dons
-*/
+ * \class ModeleNumRefDons
+ * \brief Classe mere des modeles de numerotation des references des dons
+ */
class ModeleNumRefDons
{
var $error='';
diff --git a/htdocs/includes/modules/expedition/methode_expedition.modules.php b/htdocs/includes/modules/expedition/methode_expedition.modules.php
index 0e7243ee5bf..fba232c5230 100644
--- a/htdocs/includes/modules/expedition/methode_expedition.modules.php
+++ b/htdocs/includes/modules/expedition/methode_expedition.modules.php
@@ -46,37 +46,21 @@ class methode_expedition
/**
- * \brief Renvoi la liste des mod�les actifs
- * \param db Handler de base
+ * \brief Return list of active generation modules
+ * \param $db Database handler
*/
function liste_modeles($db)
{
- $type='invoice';
- $liste=array();
- $sql ="SELECT nom as id, nom as lib";
- $sql.=" FROM ".MAIN_DB_PREFIX."document_model";
- $sql.=" WHERE type = '".$type."'";
+ global $conf;
+
+ $type='???';
+ $liste=array();
+
+ include_once(DOL_DOCUMENT_ROOT.'/lib/functions2.lib.php');
+ $liste=getListOfModels($db,$type,'');
- $resql = $db->query($sql);
- if ($resql)
- {
- $num = $db->num_rows($resql);
- $i = 0;
- while ($i < $num)
- {
- $row = $db->fetch_row($resql);
- $liste[$row[0]]=$row[1];
- $i++;
- }
- }
- else
- {
- dol_print_error($db);
- return -1;
- }
return $liste;
}
-
}
?>
diff --git a/htdocs/includes/modules/expedition/pdf/ModelePdfExpedition.class.php b/htdocs/includes/modules/expedition/pdf/ModelePdfExpedition.class.php
index 537b1c68ccf..de98ab6cc03 100644
--- a/htdocs/includes/modules/expedition/pdf/ModelePdfExpedition.class.php
+++ b/htdocs/includes/modules/expedition/pdf/ModelePdfExpedition.class.php
@@ -32,48 +32,29 @@ require_once(DOL_DOCUMENT_ROOT.'/includes/fpdf/fpdfi/fpdi_protection.php');
/**
* \class ModelePdfExpedition
- * \brief Parent class of ssending receipts models
+ * \brief Parent class of sending receipts models
*/
class ModelePdfExpedition
{
var $error='';
- /**
- * \brief Renvoi la liste des modeles actifs
- * \return array Tableau des modeles (cle=id, valeur=libelle)
- */
- function liste_modeles($db)
- {
- global $conf;
+ /**
+ * \brief Return list of active generation modules
+ * \param $db Database handler
+ */
+ function liste_modeles($db)
+ {
+ global $conf;
- $type='shipping';
- $liste=array();
- $sql ="SELECT nom as id, nom as lib";
- $sql.=" FROM ".MAIN_DB_PREFIX."document_model";
- $sql.=" WHERE type = '".$type."'";
- $sql.= " AND entity = ".$conf->entity;
+ $type='shipping';
+ $liste=array();
- $resql = $db->query($sql);
- if ($resql)
- {
- $num = $db->num_rows($resql);
- $i = 0;
- while ($i < $num)
- {
- $row = $db->fetch_row($resql);
- $liste[$row[0]]=$row[1];
- $i++;
- }
- }
- else
- {
- $this->error=$db->error();
- return -1;
- }
- return $liste;
- }
+ include_once(DOL_DOCUMENT_ROOT.'/lib/functions2.lib.php');
+ $liste=getListOfModels($db,$type,'');
+ return $liste;
+ }
}
diff --git a/htdocs/includes/modules/export/modules_export.php b/htdocs/includes/modules/export/modules_export.php
index 96113f5f4ce..38e3d42773e 100644
--- a/htdocs/includes/modules/export/modules_export.php
+++ b/htdocs/includes/modules/export/modules_export.php
@@ -56,7 +56,7 @@ class ModeleExports
*/
function liste_modeles($db)
{
- dol_syslog("ModeleExport::loadFormat");
+ dol_syslog("ModeleExport::liste_modeles");
$dir=DOL_DOCUMENT_ROOT."/includes/modules/export/";
$handle=opendir($dir);
diff --git a/htdocs/includes/modules/facture/modules_facture.php b/htdocs/includes/modules/facture/modules_facture.php
index 0e3e7e5152e..c13af40e520 100644
--- a/htdocs/includes/modules/facture/modules_facture.php
+++ b/htdocs/includes/modules/facture/modules_facture.php
@@ -43,8 +43,8 @@ class ModelePDFFactures
var $error='';
/**
- * \brief Renvoi la liste des modeles actifs
- * \param db Handler de base
+ * \brief Return list of active generation modules
+ * \param $db Database handler
*/
function liste_modeles($db)
{
@@ -52,31 +52,12 @@ class ModelePDFFactures
$type='invoice';
$liste=array();
- $sql = "SELECT nom as id, nom as lib";
- $sql.= " FROM ".MAIN_DB_PREFIX."document_model";
- $sql.= " WHERE type = '".$type."'";
- $sql.= " AND entity = ".$conf->entity;
- $resql = $db->query($sql);
- if ($resql)
- {
- $num = $db->num_rows($resql);
- $i = 0;
- while ($i < $num)
- {
- $row = $db->fetch_row($resql);
- $liste[$row[0]]=$row[1];
- $i++;
- }
- }
- else
- {
- dol_print_error($db);
- return -1;
- }
+ include_once(DOL_DOCUMENT_ROOT.'/lib/functions2.lib.php');
+ $liste=getListOfModels($db,$type,'');
+
return $liste;
}
-
}
/**
diff --git a/htdocs/includes/modules/fichinter/modules_fichinter.php b/htdocs/includes/modules/fichinter/modules_fichinter.php
index 5f69d19a3d3..fee94cba136 100644
--- a/htdocs/includes/modules/fichinter/modules_fichinter.php
+++ b/htdocs/includes/modules/fichinter/modules_fichinter.php
@@ -48,7 +48,8 @@ class ModelePDFFicheinter
}
/**
- * \brief Renvoi la liste des modeles actifs
+ * \brief Return list of active generation modules
+ * \param $db Database handler
*/
function liste_modeles($db)
{
@@ -56,30 +57,12 @@ class ModelePDFFicheinter
$type='ficheinter';
$liste=array();
- $sql = "SELECT nom as id, nom as lib";
- $sql.= " FROM ".MAIN_DB_PREFIX."document_model";
- $sql.= " WHERE type = '".$type."'";
- $sql.= " AND entity = ".$conf->entity;
- $resql = $db->query($sql);
- if ($resql)
- {
- $num = $db->num_rows($resql);
- $i = 0;
- while ($i < $num)
- {
- $row = $db->fetch_row($resql);
- $liste[$row[0]]=$row[1];
- $i++;
- }
- }
- else
- {
- return -1;
- }
+ include_once(DOL_DOCUMENT_ROOT.'/lib/functions2.lib.php');
+ $liste=getListOfModels($db,$type,'');
+
return $liste;
}
-
}
diff --git a/htdocs/includes/modules/livraison/modules_livraison.php b/htdocs/includes/modules/livraison/modules_livraison.php
index ed49e062790..ec872d67a0f 100644
--- a/htdocs/includes/modules/livraison/modules_livraison.php
+++ b/htdocs/includes/modules/livraison/modules_livraison.php
@@ -41,7 +41,8 @@ class ModelePDFDeliveryOrder
var $error='';
/**
- * \brief Renvoi la liste des modeles actifs
+ * \brief Return list of active generation modules
+ * \param $db Database handler
*/
function liste_modeles($db)
{
@@ -50,40 +51,19 @@ class ModelePDFDeliveryOrder
$type='delivery';
$liste=array();
- $sql = "SELECT nom as id, nom as lib";
- $sql.= " FROM ".MAIN_DB_PREFIX."document_model";
- $sql.= " WHERE type = '".$type."'";
- $sql.= " AND entity = ".$conf->entity;
+ include_once(DOL_DOCUMENT_ROOT.'/lib/functions2.lib.php');
+ $liste=getListOfModels($db,$type,'');
- $resql = $db->query($sql);
- if ($resql)
- {
- $num = $db->num_rows($resql);
- $i = 0;
- while ($i < $num)
- {
- $row = $db->fetch_row($resql);
- $liste[$row[0]]=$row[1];
- $i++;
- }
- }
- else
- {
- $this->error=$db->error();
- return -1;
- }
return $liste;
}
-
}
/**
- \class ModeleNumRefDeliveryOrder
- \brief Classe mere des modeles de numerotation des references de bon de livraison
+ * \class ModeleNumRefDeliveryOrder
+ * \brief Classe mere des modeles de numerotation des references de bon de livraison
*/
-
class ModeleNumRefDeliveryOrder
{
var $error='';
diff --git a/htdocs/includes/modules/member/cards/modules_cards.php b/htdocs/includes/modules/member/cards/modules_cards.php
index 92a15fc4269..bb27fbd9e4c 100644
--- a/htdocs/includes/modules/member/cards/modules_cards.php
+++ b/htdocs/includes/modules/member/cards/modules_cards.php
@@ -43,8 +43,8 @@ class ModelePDFCards
/**
- * \brief Renvoi la liste des modeles actifs
- * \param db Handler de base
+ * \brief Return list of active generation modules
+ * \param $db Database handler
*/
function liste_modeles($db)
{
@@ -52,31 +52,12 @@ class ModelePDFCards
$type='members_card';
$liste=array();
- $sql = "SELECT nom as id, nom as lib";
- $sql.= " FROM ".MAIN_DB_PREFIX."document_model";
- $sql.= " WHERE type = '".$type."'";
- $sql.= " AND entity = ".$conf->entity;
- $resql = $db->query($sql);
- if ($resql)
- {
- $num = $db->num_rows($resql);
- $i = 0;
- while ($i < $num)
- {
- $row = $db->fetch_row($resql);
- $liste[$row[0]]=$row[1];
- $i++;
- }
- }
- else
- {
- dol_print_error($db);
- return -1;
- }
+ include_once(DOL_DOCUMENT_ROOT.'/lib/functions2.lib.php');
+ $liste=getListOfModels($db,$type,'');
+
return $liste;
}
-
}
diff --git a/htdocs/includes/modules/project/modules_project.php b/htdocs/includes/modules/project/modules_project.php
index bf1ff0f52fa..1176069aef7 100644
--- a/htdocs/includes/modules/project/modules_project.php
+++ b/htdocs/includes/modules/project/modules_project.php
@@ -38,7 +38,8 @@ class ModelePDFProjects
/**
- * \brief Renvoi la liste des modeles actifs
+ * \brief Return list of active generation modules
+ * \param $db Database handler
*/
function liste_modeles($db)
{
@@ -47,31 +48,11 @@ class ModelePDFProjects
$type='project';
$liste=array();
- $sql = "SELECT nom as id, nom as lib";
- $sql.= " FROM ".MAIN_DB_PREFIX."document_model";
- $sql.= " WHERE type = '".$type."'";
- $sql.= " AND entity = ".$conf->entity;
+ include_once(DOL_DOCUMENT_ROOT.'/lib/functions2.lib.php');
+ $liste=getListOfModels($db,$type,'');
- $resql = $db->query($sql);
- if ($resql)
- {
- $num = $db->num_rows($resql);
- $i = 0;
- while ($i < $num)
- {
- $row = $db->fetch_row($resql);
- $liste[$row[0]]=$row[1];
- $i++;
- }
- }
- else
- {
- $this->error=$db->error();
- return -1;
- }
return $liste;
}
-
}
diff --git a/htdocs/includes/modules/propale/modules_propale.php b/htdocs/includes/modules/propale/modules_propale.php
index a438be1216c..b79300d5e7a 100644
--- a/htdocs/includes/modules/propale/modules_propale.php
+++ b/htdocs/includes/modules/propale/modules_propale.php
@@ -42,7 +42,8 @@ class ModelePDFPropales
/**
- * \brief Renvoi la liste des modeles actifs
+ * \brief Return list of active generation modules
+ * \param $db Database handler
*/
function liste_modeles($db)
{
@@ -51,39 +52,18 @@ class ModelePDFPropales
$type='propal';
$liste=array();
- $sql = "SELECT nom as id, nom as lib";
- $sql.= " FROM ".MAIN_DB_PREFIX."document_model";
- $sql.= " WHERE type = '".$type."'";
- $sql.= " AND entity = ".$conf->entity;
+ include_once(DOL_DOCUMENT_ROOT.'/lib/functions2.lib.php');
+ $liste=getListOfModels($db,$type,'');
- dol_syslog("modules_propale::liste_modeles sql=".$sql, LOG_DEBUG);
- $resql = $db->query($sql);
- if ($resql)
- {
- $num = $db->num_rows($resql);
- $i = 0;
- while ($i < $num)
- {
- $row = $db->fetch_row($resql);
- $liste[$row[0]]=$row[1];
- $i++;
- }
- }
- else
- {
- $this->error=$db->error();
- return -1;
- }
return $liste;
}
}
/**
- \class ModeleNumRefPropales
- \brief Classe mere des modeles de numerotation des references de propales
+ * \class ModeleNumRefPropales
+ * \brief Classe mere des modeles de numerotation des references de propales
*/
-
class ModeleNumRefPropales
{
var $error='';
diff --git a/htdocs/includes/modules/societe/doc/odt_generic.modules.php b/htdocs/includes/modules/societe/doc/doc_generic_odt.modules.php
similarity index 96%
rename from htdocs/includes/modules/societe/doc/odt_generic.modules.php
rename to htdocs/includes/modules/societe/doc/doc_generic_odt.modules.php
index 5eaac7a52df..a94b0b3901c 100644
--- a/htdocs/includes/modules/societe/doc/odt_generic.modules.php
+++ b/htdocs/includes/modules/societe/doc/doc_generic_odt.modules.php
@@ -18,7 +18,7 @@
*/
/**
- * \file htdocs/includes/modules/societe/doc/odt_generic.modules.php
+ * \file htdocs/includes/modules/societe/doc/doc_generic_odt.modules.php
* \ingroup project
* \brief File of class to build ODT documents for third parties
* \author Laurent Destailleur
@@ -32,10 +32,10 @@ require_once(DOL_DOCUMENT_ROOT."/lib/files.lib.php");
/**
- * \class odt_generic
+ * \class doc_genericodt
* \brief Classe permettant de generer les projets au modele Baleine
*/
-class odt_generic extends ModeleDocProjects
+class doc_generic_odt extends ModeleThirdPartyDoc
{
var $emetteur; // Objet societe qui emet
@@ -43,7 +43,7 @@ class odt_generic extends ModeleDocProjects
* \brief Constructor
* \param db Database handler
*/
- function odt_generic($db)
+ function doc_generic_odt($db)
{
global $conf,$langs,$mysoc;
diff --git a/htdocs/includes/modules/societe/modules_societe.class.php b/htdocs/includes/modules/societe/modules_societe.class.php
index 3dc9a345cf4..bffa343b431 100644
--- a/htdocs/includes/modules/societe/modules_societe.class.php
+++ b/htdocs/includes/modules/societe/modules_societe.class.php
@@ -29,45 +29,28 @@
/**
- * \class ModeleDocProjects
- * \brief Parent class for third parties models
+ * \class ModeleThirdPartyDoc
+ * \brief Parent class for third parties models of doc generators
*/
-class ModeleDocProjects
+class ModeleThirdPartyDoc
{
var $error='';
/**
- * \brief Renvoi la liste des modeles actifs
+ * \brief Return list of active generation modules
+ * \param $db Database handler
*/
function liste_modeles($db)
{
global $conf;
- $type='project';
+ $type='company';
$liste=array();
+ $dirtoscan=$conf->global->COMPANY_ADDON_PDF_ODTPATH;
- $sql = "SELECT nom as id, nom as lib";
- $sql.= " FROM ".MAIN_DB_PREFIX."document_model";
- $sql.= " WHERE type = '".$type."'";
- $sql.= " AND entity = ".$conf->entity;
+ include_once(DOL_DOCUMENT_ROOT.'/lib/functions2.lib.php');
+ $liste=getListOfModels($db,$type,$dirtoscan);
- $resql = $db->query($sql);
- if ($resql)
- {
- $num = $db->num_rows($resql);
- $i = 0;
- while ($i < $num)
- {
- $row = $db->fetch_row($resql);
- $liste[$row[0]]=$row[1];
- $i++;
- }
- }
- else
- {
- $this->error=$db->error();
- return -1;
- }
return $liste;
}
@@ -142,7 +125,7 @@ class ModeleThirdPartyCode
}
/**
- * \brief Renvoi la liste des mod�les actifs
+ * \brief Renvoi la liste des modeles de numéroation
* \param db Handler de base
*/
function liste_modeles($db)
diff --git a/htdocs/includes/modules/supplier_order/modules_commandefournisseur.php b/htdocs/includes/modules/supplier_order/modules_commandefournisseur.php
index 1ed1af2f88f..018e40c126e 100644
--- a/htdocs/includes/modules/supplier_order/modules_commandefournisseur.php
+++ b/htdocs/includes/modules/supplier_order/modules_commandefournisseur.php
@@ -42,7 +42,8 @@ class ModelePDFSuppliersOrders
/**
- * \brief Renvoi la liste des modeles actifs
+ * \brief Return list of active generation modules
+ * \param $db Database handler
*/
function liste_modeles($db)
{
@@ -51,28 +52,9 @@ class ModelePDFSuppliersOrders
$type='supplier_order';
$liste=array();
- $sql = "SELECT nom as id, nom as lib";
- $sql.= " FROM ".MAIN_DB_PREFIX."document_model";
- $sql.= " WHERE type = '".$type."'";
- $sql.= " AND entity = ".$conf->entity;
+ include_once(DOL_DOCUMENT_ROOT.'/lib/functions2.lib.php');
+ $liste=getListOfModels($db,$type,'');
- $resql = $db->query($sql);
- if ($resql)
- {
- $num = $db->num_rows($resql);
- $i = 0;
- while ($i < $num)
- {
- $row = $db->fetch_row($resql);
- $liste[$row[0]]=$row[1];
- $i++;
- }
- }
- else
- {
- $this->error=$db->error();
- return -1;
- }
return $liste;
}
@@ -81,10 +63,9 @@ class ModelePDFSuppliersOrders
/**
- \class ModeleNumRefSuppliersOrders
- \brief Classe mere des modeles de numerotation des references de commandes fournisseurs
+ * \class ModeleNumRefSuppliersOrders
+ * \brief Classe mere des modeles de numerotation des references de commandes fournisseurs
*/
-
class ModeleNumRefSuppliersOrders
{
var $error='';
diff --git a/htdocs/lib/functions2.lib.php b/htdocs/lib/functions2.lib.php
index e9c5d0a818e..093a3a0052b 100644
--- a/htdocs/lib/functions2.lib.php
+++ b/htdocs/lib/functions2.lib.php
@@ -1009,3 +1009,41 @@ function picto_from_langcode($codelang)
}
return $ret;
}
+
+
+/**
+ * \brief Return list of activated modules of doc generation
+ * \param $db Database handler
+ * \param $type Type of models (company, invoice, ...)
+ * \param $dirodts List of directories to scan for templates
+ */
+function getListOfModels($db,$type,$dirtoscan='')
+{
+ global $conf;
+ $liste=array();
+
+ $sql = "SELECT nom as id, nom as lib, libelle as label";
+ $sql.= " FROM ".MAIN_DB_PREFIX."document_model";
+ $sql.= " WHERE type = '".$type."'";
+ $sql.= " AND entity = ".$conf->entity;
+
+ $resql = $db->query($sql);
+ if ($resql)
+ {
+ $num = $db->num_rows($resql);
+ $i = 0;
+ while ($i < $num)
+ {
+ $obj = $db->fetch_object($resql);
+ $liste[$obj->id]=$obj->label?$obj->label:$obj->lib;
+ $i++;
+ }
+ }
+ else
+ {
+ $this->error=$db->error();
+ return -1;
+ }
+
+ return $liste;
+}
diff --git a/htdocs/soc.php b/htdocs/soc.php
index 6db9bc749eb..967543f4ade 100644
--- a/htdocs/soc.php
+++ b/htdocs/soc.php
@@ -33,6 +33,7 @@ require("pre.inc.php");
require_once(DOL_DOCUMENT_ROOT."/lib/company.lib.php");
require_once(DOL_DOCUMENT_ROOT."/html.formadmin.class.php");
require_once(DOL_DOCUMENT_ROOT."/html.formcompany.class.php");
+require_once(DOL_DOCUMENT_ROOT."/html.formfile.class.php");
require_once(DOL_DOCUMENT_ROOT."/contact.class.php");
if ($conf->adherent->enabled) require_once(DOL_DOCUMENT_ROOT."/adherents/adherent.class.php");
@@ -297,6 +298,7 @@ $help_url='EN:Module_Third_Parties|FR:Module_Tiers|ES:Empresas';
llxHeader('','',$help_url);
$form = new Form($db);
+$formfile = new FormFile($db);
$formadmin = new FormAdmin($db);
$formcompany = new FormCompany($db);
@@ -1372,14 +1374,6 @@ else
print 'id.'&action=edit">'.$langs->trans("Modify").'';
}
- /* Not specific to third party. Must go on Project menu to create a project.
- if ($conf->projet->enabled && $user->rights->projet->creer)
- {
- $langs->load("projects");
- print ''.$langs->trans("AddProject").'';
- }
- */
-
if ($user->rights->societe->contact->creer)
{
print ''.$langs->trans("AddContact").'';
@@ -1394,6 +1388,30 @@ else
print '
';
}
+
+
+ print '| ';
+ print ''; // ancre
+
+ /*
+ * Documents generes
+ */
+ $filedir=$conf->societe->dir_output;
+ $urlsource=$_SERVER["PHP_SELF"]."?socid=".$soc->id;
+ $genallowed=$user->rights->societe->creer;
+ $delallowed=$user->rights->societe->supprimer;
+
+ $var=true;
+
+ $somethingshown=$formfile->show_documents('company','',$filedir,$urlsource,$genallowed,$delallowed,'','',0,0,28,0,'',0,'',$soc->default_lang);
+
+ print ' | ';
+
+ print ' |
';
+ print '
';
+
+ print '
';
+
/*
* Contact List
*/