diff --git a/htdocs/ecm/index.php b/htdocs/ecm/index.php
index 577bbda7ebf..974620705da 100644
--- a/htdocs/ecm/index.php
+++ b/htdocs/ecm/index.php
@@ -121,12 +121,12 @@ $userstatic = new User($db);
// Ajout rubriques automatiques
$rowspan=0;
$sectionauto=array();
-if ($conf->societe->enabled) { $rowspan++; $sectionauto[]=array('test'=>$conf->societe->enabled, 'label'=>$langs->trans("ThirdParties"), 'desc'=>$langs->trans("ECMDocsByThirdParties")); }
-if ($conf->propal->enabled) { $rowspan++; $sectionauto[]=array('test'=>$conf->propal->enabled, 'label'=>$langs->trans("Proposals"), 'desc'=>$langs->trans("ECMDocsByProposals")); }
-if ($conf->commande->enabled) { $rowspan++; $sectionauto[]=array('test'=>$conf->commande->enabled,'label'=>$langs->trans("Orders"), 'desc'=>$langs->trans("ECMDocsByOrders")); }
-if ($conf->contrat->enabled) { $rowspan++; $sectionauto[]=array('test'=>$conf->contrat->enabled, 'label'=>$langs->trans("Contracts"), 'desc'=>$langs->trans("ECMDocsByContracts")); }
-if ($conf->facture->enabled) { $rowspan++; $sectionauto[]=array('test'=>$conf->facture->enabled, 'label'=>$langs->trans("Invoices"), 'desc'=>$langs->trans("ECMDocsByInvoices")); }
-if ($conf->produit->enabled) { $rowspan++; $sectionauto[]=array('test'=>$conf->produit->enabled, 'label'=>$langs->trans("ProductsAndServices"), 'desc'=>$langs->trans("ECMDocsByProducts")); }
+if ($conf->societe->enabled) { $rowspan++; $sectionauto[]=array('module'=>'company', 'test'=>$conf->societe->enabled, 'label'=>$langs->trans("ThirdParties"), 'desc'=>$langs->trans("ECMDocsByThirdParties")); }
+if ($conf->propal->enabled) { $rowspan++; $sectionauto[]=array('module'=>'propal', 'test'=>$conf->propal->enabled, 'label'=>$langs->trans("Prop"), 'desc'=>$langs->trans("ECMDocsByProposals")); }
+if ($conf->commande->enabled) { $rowspan++; $sectionauto[]=array('module'=>'order', 'test'=>$conf->commande->enabled,'label'=>$langs->trans("Orders"), 'desc'=>$langs->trans("ECMDocsByOrders")); }
+if ($conf->contrat->enabled) { $rowspan++; $sectionauto[]=array('module'=>'contract','test'=>$conf->contrat->enabled, 'label'=>$langs->trans("Contracts"), 'desc'=>$langs->trans("ECMDocsByContracts")); }
+if ($conf->facture->enabled) { $rowspan++; $sectionauto[]=array('module'=>'invoice', 'test'=>$conf->facture->enabled, 'label'=>$langs->trans("Invoices"), 'desc'=>$langs->trans("ECMDocsByInvoices")); }
+if ($conf->produit->enabled) { $rowspan++; $sectionauto[]=array('module'=>'product', 'test'=>$conf->produit->enabled, 'label'=>$langs->trans("ProductsAndServices"), 'desc'=>$langs->trans("ECMDocsByProducts")); }
//***********************
@@ -160,18 +160,26 @@ print '
';
print ' ";
//print $langs->trans("ECMAutoOrgDesc");
diff --git a/htdocs/html.formfile.class.php b/htdocs/html.formfile.class.php
index d6f7e1e692f..819af96fbdc 100644
--- a/htdocs/html.formfile.class.php
+++ b/htdocs/html.formfile.class.php
@@ -373,9 +373,10 @@ class FormFile
* \param param Parameters on sort links
* \param forcedownload Mime type is forced to 'application/binary' to have a download
* \param relativepath Relative path of docs (autodefined if not provided)
+ * \param permtodelete Permission to delete
* \return int <0 if KO, nb of files shown if OK
*/
- function list_of_documents($filearray,$object,$modulepart,$param,$forcedownload=0,$relativepath='')
+ function list_of_documents($filearray,$object,$modulepart,$param,$forcedownload=0,$relativepath='',$permtodelete=1)
{
global $user, $conf, $langs;
global $bc;
@@ -422,7 +423,10 @@ class FormFile
print ' | '.dolibarr_print_date($file['date'],"dayhour").' | ';
print '';
//print ' ';
- print ''.img_delete().'';
+ if ($permtodelete)
+ print ''.img_delete().'';
+ else
+ print ' ';
print " | \n";
}
}
diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang
index fb7a1dae6de..2e3ebfab484 100644
--- a/htdocs/langs/en_US/admin.lang
+++ b/htdocs/langs/en_US/admin.lang
@@ -412,6 +412,9 @@ Permission2401=Read actions (events or tasks) linked to his account
Permission2402=Create/modify/delete actions (events or tasks) linked to his account
Permission2403=Read actions (events or tasks) of others
Permission2405=Create/modify/delete actions (events or tasks) of others
+Permission2500=Read documents
+Permission2501=Submit or delete documents
+Permission2515=Setup documents directories
DictionnaryCompanyType=Company types
DictionnaryCompanyJuridicalType=Juridical kinds of company
DictionnaryProspectLevel=Prospect potential level
diff --git a/htdocs/langs/en_US/errors.lang b/htdocs/langs/en_US/errors.lang
index 107bb349b43..3af5dd0b5bf 100644
--- a/htdocs/langs/en_US/errors.lang
+++ b/htdocs/langs/en_US/errors.lang
@@ -2,6 +2,7 @@
ErrorDuplicateTrigger=A trigger file with class nam '%s' is present sevaral times. Remove duplicate trigger file in directory '%s'.
ErrorFailToDeleteFile=Failed to remove file '%s'.
ErrorFailToCreateFile=Failed to create file '%s'.
+ErrorFailToRenameDir=Failed to rename directory '%s' into '%s'.
ErrorThisContactIsAlreadyDefinedAsThisType=This contact is already defined as contact for this type.
ErrorCashAccountAcceptsOnlyCashMoney=This bank account is a cash account, so it accepts payments of type cash only.
ErrorFromToAccountsMustDiffers=Source and targets bank accounts must be different.
diff --git a/htdocs/langs/fr_FR/admin.lang b/htdocs/langs/fr_FR/admin.lang
index cc45a9063ad..52d79aae62e 100644
--- a/htdocs/langs/fr_FR/admin.lang
+++ b/htdocs/langs/fr_FR/admin.lang
@@ -410,6 +410,9 @@ Permission2401=Lire les actions (
Permission2402=Creer/modifier/supprimer les actions (évènements ou tâches) liées à son compte
Permission2403=Lire les actions (évènements ou tâches) des autres
Permission2405=Creer/modifier/supprimer les actions (évènements ou tâches) pour les autres
+Permission2500=Consulter les documents
+Permission2501=Soumettre ou supprimer des documents
+Permission2515=Administrer les rubriques de documents
DictionnaryCompanyType=Types de sociétés
DictionnaryCompanyJuridicalType=Formes juridiques
DictionnaryProspectLevel=Niveau de potentiel des prospects
diff --git a/htdocs/langs/fr_FR/errors.lang b/htdocs/langs/fr_FR/errors.lang
index f81b1bd3f1d..5bfeda2056e 100644
--- a/htdocs/langs/fr_FR/errors.lang
+++ b/htdocs/langs/fr_FR/errors.lang
@@ -2,6 +2,7 @@
ErrorDuplicateTrigger=Un fichier trigger de classe '%s' est present plusieurs fois. Supprimer le doublon du répertoire '%s'.
ErrorFailToCreateFile=Echec de la création du fichier '%s'.
ErrorFailToDeleteFile=Echec de l'effacement du fichier '%s'.
+ErrorFailToRenameDir=Echec du renommage du répertoire '%s' en '%s'.
ErrorThisContactIsAlreadyDefinedAsThisType=Ce contact est déjà défini comme contact pour ce type.
ErrorCashAccountAcceptsOnlyCashMoney=Ce compte bancaire est de type caisse et n'accepte que les mode de réglement de type espèce.
ErrorFromToAccountsMustDiffers=Le compte source et destination doivent etre différents.