diff --git a/htdocs/admin/dict.php b/htdocs/admin/dict.php
index fbe310362af..a74bad83abd 100644
--- a/htdocs/admin/dict.php
+++ b/htdocs/admin/dict.php
@@ -102,7 +102,7 @@ $tabsql[2] = "SELECT d.rowid as rowid, d.code_departement as code, d.nom as libe
$tabsql[3] = "SELECT r.rowid as rowid, code_region as code, nom as libelle, r.fk_pays as pays_id, p.code as pays_code, p.libelle as pays, r.active FROM ".MAIN_DB_PREFIX."c_regions as r, ".MAIN_DB_PREFIX."c_pays as p WHERE r.fk_pays=p.rowid and p.active=1";
$tabsql[4] = "SELECT rowid as rowid, code, libelle, active FROM ".MAIN_DB_PREFIX."c_pays";
$tabsql[5] = "SELECT c.rowid as rowid, c.code as code, c.civilite AS libelle, c.active FROM ".MAIN_DB_PREFIX."c_civilite AS c";
-$tabsql[6] = "SELECT a.id as rowid, a.code as code, a.libelle AS libelle, a.type, a.active FROM ".MAIN_DB_PREFIX."c_actioncomm AS a";
+$tabsql[6] = "SELECT a.id as rowid, a.code as code, a.libelle AS libelle, a.type, a.active, a.module, a.position FROM ".MAIN_DB_PREFIX."c_actioncomm AS a";
$tabsql[7] = "SELECT a.id as rowid, a.code as code, a.libelle AS libelle, a.deductible, p.code as pays_code, p.libelle as pays, a.fk_pays as pays_id, a.active FROM ".MAIN_DB_PREFIX."c_chargesociales AS a, ".MAIN_DB_PREFIX."c_pays as p WHERE a.fk_pays=p.rowid and p.active=1";
$tabsql[8] = "SELECT id as rowid, code, libelle, active FROM ".MAIN_DB_PREFIX."c_typent";
$tabsql[9] = "SELECT code, code_iso, label as libelle, active FROM ".MAIN_DB_PREFIX."c_currencies";
@@ -123,7 +123,7 @@ $tabsqlsort[2] ="pays ASC, code ASC";
$tabsqlsort[3] ="pays ASC, code ASC";
$tabsqlsort[4] ="code ASC";
$tabsqlsort[5] ="libelle ASC";
-$tabsqlsort[6] ="a.type ASC, a.code ASC";
+$tabsqlsort[6] ="a.type ASC, a.module, a.position, a.code ASC";
$tabsqlsort[7] ="pays ASC, code ASC, a.libelle ASC";
$tabsqlsort[8] ="libelle ASC";
$tabsqlsort[9] ="code ASC";
@@ -144,7 +144,7 @@ $tabfield[2] = "code,libelle,region_id,region,pays"; // "code,libelle,region,p
$tabfield[3] = "code,libelle,pays_id,pays";
$tabfield[4] = "code,libelle";
$tabfield[5] = "code,libelle";
-$tabfield[6] = "code,libelle,type";
+$tabfield[6] = "code,libelle,type,position";
$tabfield[7] = "code,libelle,pays_id,pays,deductible";
$tabfield[8] = "code,libelle";
$tabfield[9] = "code,code_iso,libelle";
@@ -165,7 +165,7 @@ $tabfieldvalue[2] = "code,libelle,region"; // "code,libelle,region"
$tabfieldvalue[3] = "code,libelle,pays";
$tabfieldvalue[4] = "code,libelle";
$tabfieldvalue[5] = "code,libelle";
-$tabfieldvalue[6] = "code,libelle,type";
+$tabfieldvalue[6] = "code,libelle,type,position";
$tabfieldvalue[7] = "code,libelle,pays,deductible";
$tabfieldvalue[8] = "code,libelle";
$tabfieldvalue[9] = "code,code_iso,libelle";
@@ -186,7 +186,7 @@ $tabfieldinsert[2] = "code_departement,nom,fk_region";
$tabfieldinsert[3] = "code_region,nom,fk_pays";
$tabfieldinsert[4] = "code,libelle";
$tabfieldinsert[5] = "code,civilite";
-$tabfieldinsert[6] = "code,libelle,type";
+$tabfieldinsert[6] = "code,libelle,type,position";
$tabfieldinsert[7] = "code,libelle,fk_pays,deductible";
$tabfieldinsert[8] = "code,libelle";
$tabfieldinsert[9] = "code,code_iso,label";
@@ -202,6 +202,8 @@ $tabfieldinsert[18]= "code,libelle";
$tabfieldinsert[19]= "code,libelle";
// Nom du rowid si le champ n'est pas de type autoincrement
+// Example: "" if id field is "rowid" and has autoincrement on
+// "nameoffield" if id field is not "rowid" or has not autoincrement on
$tabrowid[1] = "";
$tabrowid[2] = "";
$tabrowid[3] = "";
@@ -277,18 +279,24 @@ if ($_POST["actionadd"] || $_POST["actionmodify"])
if (in_array('region_id',$listfield)) { continue; } // For region page, we do not require the country input
}
if ((! isset($_POST[$value]) || $_POST[$value]=='')
- && $listfield[$f] != 'decalage') // Fields that are not mandatory
+ && $listfield[$f] != 'decalage' // Fields that are not mandatory
+ && $listfield[$f] != 'module') // Fields that are not mandatory
{
$ok=0;
$fieldnamekey=$listfield[$f];
// We take translate key of field
- if ($fieldnamekey == 'libelle') $fieldnamekey='Label';
- if ($fieldnamekey == 'nbjour') $fieldnamekey='NbOfDays';
+ if ($fieldnamekey == 'libelle') $fieldnamekey='Label';
+ if ($fieldnamekey == 'nbjour') $fieldnamekey='NbOfDays';
if ($fieldnamekey == 'decalage') $fieldnamekey='Offset';
+ if ($fieldnamekey == 'module') $fieldnamekey='Module';
$msg.=$langs->trans("ErrorFieldRequired",$langs->transnoentities($fieldnamekey)).'
';
}
}
// Autres verif
+ if ($tabname[$_POST["id"]] == MAIN_DB_PREFIX."c_actioncomm" && isset($_POST["type"]) && $_POST["type"]=='system') {
+ $ok=0;
+ $msg.="Value 'system' for type is reserved. You can use 'user' as value to add your own record.
";
+ }
if (isset($_POST["code"]) && $_POST["code"]=='0') {
$ok=0;
$msg.="Code can't contains value 0
";
diff --git a/htdocs/comm/action/class/cactioncomm.class.php b/htdocs/comm/action/class/cactioncomm.class.php
index 6b9faaaad14..393497721c2 100644
--- a/htdocs/comm/action/class/cactioncomm.class.php
+++ b/htdocs/comm/action/class/cactioncomm.class.php
@@ -95,11 +95,11 @@ class CActionComm {
}
}
- /*
- * \brief Renvoi la liste des types d'actions existant
- * \param active 1 ou 0 pour un filtre sur l'etat actif ou non ('' par defaut = pas de filtre)
- * \return array Tableau des types d'actions actifs si ok, <0 si erreur
- */
+ /**
+ * Return list of event types
+ * @param active 1 or 0 to filter on event state active or not ('' bu default = no filter)
+ * @return array Array of all event types if OK, <0 if KO
+ */
function liste_array($active='',$idorcode='id')
{
global $langs,$conf;
@@ -114,6 +114,7 @@ class CActionComm {
{
$sql.=" WHERE active=".$active;
}
+ $sql.= " ORDER BY module, position";
dol_syslog("CActionComm::liste_array sql=".$sql);
$resql=$this->db->query($sql);
@@ -132,12 +133,14 @@ class CActionComm {
if ($obj->module == 'invoice' && ! $conf->facture->enabled) $qualified=0;
if ($obj->module == 'order' && ! $conf->commande->enabled) $qualified=0;
if ($obj->module == 'propal' && ! $conf->propal->enabled) $qualified=0;
+ if ($obj->module == 'invoice_supplier' && ! $conf->fournisseur->enabled) $qualified=0;
+ if ($obj->module == 'order_supplier' && ! $conf->fournisseur->enabled) $qualified=0;
}
if ($qualified)
{
$transcode=$langs->trans("Action".$obj->code);
- $repid[$obj->id] = ($transcode!="Action".$obj->code?$transcode:$obj->libelle);
- $repcode[$obj->code] = ($transcode!="Action".$obj->code?$transcode:$obj->libelle);
+ $repid[$obj->id] = ($transcode!="Action".$obj->code?$transcode:$langs->trans($obj->libelle));
+ $repcode[$obj->code] = ($transcode!="Action".$obj->code?$transcode:$langs->trans($obj->libelle));
}
$i++;
}
diff --git a/htdocs/comm/action/fiche.php b/htdocs/comm/action/fiche.php
index 8a545e3bab5..0186e44e429 100644
--- a/htdocs/comm/action/fiche.php
+++ b/htdocs/comm/action/fiche.php
@@ -23,7 +23,7 @@
/**
* \file htdocs/comm/action/fiche.php
* \ingroup agenda
- * \brief Page for action card
+ * \brief Page for event card
* \version $Id$
*/
diff --git a/htdocs/core/class/html.formactions.class.php b/htdocs/core/class/html.formactions.class.php
index c9f3e717f45..b3b1cc8ec47 100644
--- a/htdocs/core/class/html.formactions.class.php
+++ b/htdocs/core/class/html.formactions.class.php
@@ -163,9 +163,9 @@ class FormActions
/**
- * \brief Retourne la liste des types de comptes financiers
- * \param selected Type pre-selectionne
- * \param htmlname Nom champ formulaire
+ * Output list of type of event
+ * @param selected Type pre-selectionne
+ * @param htmlname Nom champ formulaire
*/
function select_type_actions($selected='',$htmlname='actioncode')
{
@@ -177,8 +177,8 @@ class FormActions
$form=new Form($this->db);
$arraylist=$caction->liste_array(1,'code');
- $arraylist[0]=' ';
- asort($arraylist);
+ array_unshift($arraylist,' '); // Add empty line at start
+ //asort($arraylist);
print $form->selectarray($htmlname, $arraylist, $selected);
if ($user->admin) print info_admin($langs->trans("YouCanChangeValuesForThisListFromDictionnarySetup"),1);
diff --git a/htdocs/install/check.php b/htdocs/install/check.php
index b9b63eb0297..5b66d0b5734 100644
--- a/htdocs/install/check.php
+++ b/htdocs/install/check.php
@@ -377,8 +377,9 @@ else
array('from'=>'2.6.0', 'to'=>'2.7.0'),
array('from'=>'2.7.0', 'to'=>'2.8.0'),
array('from'=>'2.8.0', 'to'=>'2.9.0'),
- array('from'=>'2.9.0', 'to'=>'3.0.0')
- );
+ array('from'=>'2.9.0', 'to'=>'3.0.0'),
+ array('from'=>'3.0.0', 'to'=>'3.1.0')
+ );
$count=0;
foreach ($migrationscript as $migarray)
diff --git a/htdocs/install/mysql/data/llx_c_actioncomm.sql b/htdocs/install/mysql/data/llx_c_actioncomm.sql
index ca44fcc5224..0f5342cdfb8 100644
--- a/htdocs/install/mysql/data/llx_c_actioncomm.sql
+++ b/htdocs/install/mysql/data/llx_c_actioncomm.sql
@@ -33,13 +33,13 @@
--
delete from llx_c_actioncomm where id in (1,2,3,4,5,8,9,50);
-insert into llx_c_actioncomm (id, code, type, libelle, module) values ( 1, 'AC_TEL', 'system', 'Phone call' ,NULL);
-insert into llx_c_actioncomm (id, code, type, libelle, module) values ( 2, 'AC_FAX', 'system', 'Fax send' ,NULL);
-insert into llx_c_actioncomm (id, code, type, libelle, module) values ( 3, 'AC_PROP', 'system', 'Send commercial proposal by email' ,'propal');
-insert into llx_c_actioncomm (id, code, type, libelle, module) values ( 4, 'AC_EMAIL','system', 'Send Email' ,NULL);
-insert into llx_c_actioncomm (id, code, type, libelle, module) values ( 5, 'AC_RDV', 'system', 'Rendez-vous' ,NULL);
-insert into llx_c_actioncomm (id, code, type, libelle, module) values ( 8, 'AC_COM', 'system', 'Send customer order by email' ,'order');
-insert into llx_c_actioncomm (id, code, type, libelle, module) values ( 9, 'AC_FAC', 'system', 'Send customer invoice by email' ,'invoice');
-insert into llx_c_actioncomm (id, code, type, libelle, module) values (30, 'AC_SUP_ORD', 'system', 'Send supplier order by email' ,'order_supplier');
-insert into llx_c_actioncomm (id, code, type, libelle, module) values (31, 'AC_SUP_INV', 'system', 'Send supplier invoice by email' ,'invoice_supplier');
-insert into llx_c_actioncomm (id, code, type, libelle, module) values (50, 'AC_OTH', 'system', 'Other' ,NULL);
+insert into llx_c_actioncomm (id, code, type, libelle, module, position) values ( 1, 'AC_TEL', 'system', 'Phone call' ,NULL, 2);
+insert into llx_c_actioncomm (id, code, type, libelle, module, position) values ( 2, 'AC_FAX', 'system', 'Send Fax' ,NULL, 3);
+insert into llx_c_actioncomm (id, code, type, libelle, module, position) values ( 3, 'AC_PROP', 'system', 'Send commercial proposal by email','propal', 10);
+insert into llx_c_actioncomm (id, code, type, libelle, module, position) values ( 4, 'AC_EMAIL', 'system', 'Send Email' ,NULL, 4);
+insert into llx_c_actioncomm (id, code, type, libelle, module, position) values ( 5, 'AC_RDV', 'system', 'Rendez-vous' ,NULL, 1);
+insert into llx_c_actioncomm (id, code, type, libelle, module, position) values ( 8, 'AC_COM', 'system', 'Send customer order by email' ,'order', 8);
+insert into llx_c_actioncomm (id, code, type, libelle, module, position) values ( 9, 'AC_FAC', 'system', 'Send customer invoice by email' ,'invoice', 6);
+insert into llx_c_actioncomm (id, code, type, libelle, module, position) values (30, 'AC_SUP_ORD', 'system', 'Send supplier order by email' ,'order_supplier', 9);
+insert into llx_c_actioncomm (id, code, type, libelle, module, position) values (31, 'AC_SUP_INV', 'system', 'Send supplier invoice by email' ,'invoice_supplier', 7);
+insert into llx_c_actioncomm (id, code, type, libelle, module, position) values (50, 'AC_OTH', 'system', 'Other' ,NULL, 5);
diff --git a/htdocs/install/mysql/migration/3.0.0-3.1.0.sql b/htdocs/install/mysql/migration/3.0.0-3.1.0.sql
new file mode 100755
index 00000000000..3d2109baa14
--- /dev/null
+++ b/htdocs/install/mysql/migration/3.0.0-3.1.0.sql
@@ -0,0 +1,13 @@
+--
+-- $Id$
+--
+-- Be carefull to requests order.
+-- This file must be loaded by calling /install/index.php page
+-- when current version is 2.8.0 or higher.
+--
+-- To add a column: ALTER TABLE llx_table ADD COLUMN newcol varchar(60) NOT NULL DEFAULT '0' AFTER existingcol;
+-- To rename a column: ALTER TABLE llx_table CHANGE COLUMN oldname newname varchar(60);
+-- To change type of field: ALTER TABLE llx_table MODIFY name varchar(60);
+--
+
+ALTER TABLE llx_c_actioncomm add COLUMN position integer NOT NULL DEFAULT 0;
diff --git a/htdocs/install/mysql/tables/llx_c_actioncomm.sql b/htdocs/install/mysql/tables/llx_c_actioncomm.sql
index c2756cc34a6..d5493c0bffd 100644
--- a/htdocs/install/mysql/tables/llx_c_actioncomm.sql
+++ b/htdocs/install/mysql/tables/llx_c_actioncomm.sql
@@ -26,6 +26,7 @@ create table llx_c_actioncomm
type varchar(10) DEFAULT 'system' NOT NULL,
libelle varchar(48) NOT NULL,
module varchar(16) DEFAULT NULL,
- active tinyint DEFAULT 1 NOT NULL,
- todo tinyint
+ active tinyint DEFAULT 1 NOT NULL,
+ todo tinyint,
+ position integer NOT NULL DEFAULT 0
)type=innodb;
diff --git a/htdocs/install/upgrade2.php b/htdocs/install/upgrade2.php
index 05cbe6d29f3..9c50e9cdf4a 100644
--- a/htdocs/install/upgrade2.php
+++ b/htdocs/install/upgrade2.php
@@ -308,7 +308,21 @@ if (! GETPOST("action") || preg_match('/upgrade/i',GETPOST('action')))
print $langs->trans("MigrationFinished");
}
- // On commit dans tous les cas.
+ // Script for VX (X<3.1) -> V3.1
+ $afterversionarray=explode('.','3.0.9');
+ $beforeversionarray=explode('.','3.1.9');
+ if (versioncompare($versiontoarray,$afterversionarray) >= 0 && versioncompare($versiontoarray,$beforeversionarray) <= 0)
+ {
+ // Reload modules
+ migrate_reload_modules($db,$langs,$conf);
+
+ // Reload menus
+ migrate_reload_menu($db,$langs,$conf,$versionto);
+
+ print $langs->trans("MigrationFinished");
+ }
+
+ // On commit dans tous les cas.
// La procedure etant concue pour pouvoir passer plusieurs fois quelquesoit la situation.
$db->commit();
$db->close();
diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang
index 9b668c66bbf..b0b5a9804f2 100644
--- a/htdocs/langs/en_US/admin.lang
+++ b/htdocs/langs/en_US/admin.lang
@@ -616,7 +616,7 @@ DictionnaryRegion=Regions
DictionnaryCountry=Countries
DictionnaryCurrency=Currencies
DictionnaryCivility=Civility title
-DictionnaryActions=Actions list
+DictionnaryActions=Type of agenda events
DictionnarySocialContributions=Social contributions types
DictionnaryVAT=VAT Rates or Sales Tax Rates
DictionnaryPaymentConditions=Payment terms
diff --git a/htdocs/langs/en_US/commercial.lang b/htdocs/langs/en_US/commercial.lang
index 69690932042..b2f07a5cf35 100644
--- a/htdocs/langs/en_US/commercial.lang
+++ b/htdocs/langs/en_US/commercial.lang
@@ -38,12 +38,12 @@ ListOfCustomers=List of customers
LastDoneTasks=Last %s completed tasks
LastRecordedTasks=Last recorded tasks
LastActionsToDo=Last %s oldest actions not completed
-DoneAndToDoActionsFor=Completed and To do tasks for %s
-DoneAndToDoActions=Completed and To do tasks
-DoneActions=Completed actions
-DoneActionsFor=Completed actions for %s
-ToDoActions=Incomplete actions
-ToDoActionsFor=Incomplete actions for %s
+DoneAndToDoActionsFor=Completed and To do events for %s
+DoneAndToDoActions=Completed and To do events
+DoneActions=Completed events
+DoneActionsFor=Completed events for %s
+ToDoActions=Incomplete events
+ToDoActionsFor=Incomplete events for %s
SendPropalRef=Send commercial proposal %s
SendOrderRef=Send order %s
StatusActionToDo=To do
diff --git a/htdocs/langs/en_US/projects.lang b/htdocs/langs/en_US/projects.lang
index bea6366a180..6aedbdfff1f 100755
--- a/htdocs/langs/en_US/projects.lang
+++ b/htdocs/langs/en_US/projects.lang
@@ -55,7 +55,7 @@ ListSupplierInvoicesAssociatedProject=List of supplier's invoices associated wit
ListContractAssociatedProject=List of contracts associated with the project
ListFichinterAssociatedProject=List of interventions associated with the project
ListTripAssociatedProject=List of trips and expenses associated with the project
-ListActionsAssociatedProject=List of actions associated with the project
+ListActionsAssociatedProject=List of events associated with the project
ActivityOnProjectThisWeek=Activity on project this week
ActivityOnProjectThisMonth=Activity on project this month
ActivityOnProjectThisYear=Activity on project this year
diff --git a/htdocs/langs/fr_FR/admin.lang b/htdocs/langs/fr_FR/admin.lang
index 964a6447e10..78c8ad6d384 100644
--- a/htdocs/langs/fr_FR/admin.lang
+++ b/htdocs/langs/fr_FR/admin.lang
@@ -624,7 +624,7 @@ DictionnaryRegion= Régions
DictionnaryCountry= Pays
DictionnaryCurrency= Monnaies
DictionnaryCivility= Titres de civilité
-DictionnaryActions= Liste des actions
+DictionnaryActions= Liste des types d'événements de l'agenda
DictionnarySocialContributions= Types de charges sociales
DictionnaryVAT= Taux de TVA (ou de taxes de ventes US)
DictionnaryPaymentConditions= Conditions de règlement
diff --git a/htdocs/langs/fr_FR/agenda.lang b/htdocs/langs/fr_FR/agenda.lang
index 63d95493d80..cc7da125447 100644
--- a/htdocs/langs/fr_FR/agenda.lang
+++ b/htdocs/langs/fr_FR/agenda.lang
@@ -12,17 +12,17 @@ Events=Evénements
ListOfActions=Liste des événements
EventOnFullDay=Evénement sur la journée
Location=Lieu
-SearchAnAction=Rechercher une action/tâche
-MenuToDoActions=Les actions incomplètes
-MenuDoneActions=Les actions terminées
-MenuToDoMyActions=Mes actions incomplètes
-MenuDoneMyActions=Mes actions terminées
+SearchAnAction=Rechercher un événement/tâche
+MenuToDoActions=Les événem. incomplets
+MenuDoneActions=Les événem. terminés
+MenuToDoMyActions=Mes événem. incomplets
+MenuDoneMyActions=Mes événem. terminés
ListOfEvents=Liste des événements Dolibarr
-ActionsAskedBy=Actions enregistrées par
-ActionsToDoBy=Actions affectées à
-ActionsDoneBy=Actions réalisées par
-AllMyActions=Toutes mes actions
-AllActions=Toutes les actions
+ActionsAskedBy=Evénements enregistrées par
+ActionsToDoBy=Evénements affectées à
+ActionsDoneBy=Evénements réalisés par
+AllMyActions=Tous mes événements
+AllActions=Tous les événements
ViewList=Voir liste
ViewCal=Voir calendrier
ViewWithPredefinedFilters=Vues avec filtres prédéfinis
diff --git a/htdocs/langs/fr_FR/commercial.lang b/htdocs/langs/fr_FR/commercial.lang
index 02691e018da..048f328e099 100644
--- a/htdocs/langs/fr_FR/commercial.lang
+++ b/htdocs/langs/fr_FR/commercial.lang
@@ -8,22 +8,22 @@ Customer=Client
Customers=Clients
Prospect=Prospect
Prospects=Prospects
-DeleteAction=Effacer une action/tâche
-NewAction=Nouvelle action
-AddAction=Créer action
-AddAnAction=Créer une action
+DeleteAction=Effacer un événement/tâche
+NewAction=Nouvel événement
+AddAction=Créer événement
+AddAnAction=Créer un événement
AddActionRendezVous=Créer un Rendez-Vous
Rendez-Vous=Rendez-Vous
-ConfirmDeleteAction=Êtes-vous sûr de vouloir effacer cet action ?
-CardAction=Fiche action
+ConfirmDeleteAction=Êtes-vous sûr de vouloir effacer cet événement ?
+CardAction=Fiche événement
PercentDone=Pourcentage réalisé
-ActionOnCompany=Action concernant la société
-ActionOnContact=Action concernant le contact
+ActionOnCompany=Evénement concernant la société
+ActionOnContact=Evénement concernant le contact
TaskRDV=Rendez-vous
TaskRDVWith=Rendez-vous avec %s
ShowTask=Afficher tâche
-ShowAction=Afficher action
-ActionsReport=Rapport des actions
+ShowAction=Afficher événement
+ActionsReport=Rapport des événements
SalesRepresentative=Commercial
SalesRepresentatives=Commerciaux
SalesRepresentativeFollowUp=Commercial (suivi)
@@ -38,12 +38,12 @@ ListOfCustomers=Liste des clients
LastDoneTasks=Les %s dernières actions effectuées
LastActionsToDo=Les %s plus anciennes actions incomplètes
LastRecordedTasks=Dernières actions enregistrées
-DoneActions=Liste des actions réalisées
-DoneActionsFor=Liste des actions réalisées pour %s
-ToDoActions=Liste des actions incomplètes
-ToDoActionsFor=Liste des actions incomplètes pour %s
-DoneAndToDoActionsFor=Liste des actions réalisées ou à faire pour %s
-DoneAndToDoActions=Liste des actions réalisées ou à faire
+DoneActions=Liste des événements réalisés
+DoneActionsFor=Liste des événements réalisés pour %s
+ToDoActions=Liste des événements incomplets
+ToDoActionsFor=Liste des événements incomplets pour %s
+DoneAndToDoActionsFor=Liste des événements réalisés ou à faire pour %s
+DoneAndToDoActions=Liste des événements réalisés ou à faire
SendPropalRef=Envoi proposition commerciale %s
SendOrderRef=Envoi commande %s
StatusActionToDo=À faire
diff --git a/htdocs/langs/fr_FR/projects.lang b/htdocs/langs/fr_FR/projects.lang
index 26afe2ff6a9..6a1f3872673 100755
--- a/htdocs/langs/fr_FR/projects.lang
+++ b/htdocs/langs/fr_FR/projects.lang
@@ -55,7 +55,7 @@ ListSupplierInvoicesAssociatedProject=Liste des factures fournisseur associées
ListContractAssociatedProject=Liste des contrats associés au projet
ListFichinterAssociatedProject=Liste des interventions associées au projet
ListTripAssociatedProject=Liste des notes de frais associés au projet
-ListActionsAssociatedProject=Liste des actions associées au projet
+ListActionsAssociatedProject=Liste des événements associés au projet
ActivityOnProjectThisWeek=Activité sur les projets cette semaine
ActivityOnProjectThisMonth=Activité sur les projets ce mois
ActivityOnProjectThisYear=Activité sur les projets cette année