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 ''.$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 '
'; + 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 '
'; + /* * Contact List */