diff --git a/htdocs/contrat/services.php b/htdocs/contrat/services.php
index 5a087e5185c..6c4b6eb9e2d 100644
--- a/htdocs/contrat/services.php
+++ b/htdocs/contrat/services.php
@@ -64,7 +64,8 @@ if (! $sortorder) $sortorder="ASC";
$sql = "SELECT s.nom, c.rowid as cid, s.idp as sidp, cd.rowid, cd.label, cd.statut, p.rowid as pid,";
$sql.= " ".$db->pdate("cd.date_ouverture_prevue")." as date_ouverture_prevue,";
$sql.= " ".$db->pdate("cd.date_ouverture")." as date_ouverture,";
-$sql.= " ".$db->pdate("cd.date_fin_validite")." as date_fin_validite";
+$sql.= " ".$db->pdate("cd.date_fin_validite")." as date_fin_validite,";
+$sql.= " ".$db->pdate("cd.date_cloture")." as date_cloture";
$sql.= " FROM ".MAIN_DB_PREFIX."contrat as c";
$sql.= " , ".MAIN_DB_PREFIX."societe as s, ".MAIN_DB_PREFIX."product as p";
$sql.= " , ".MAIN_DB_PREFIX."contratdet as cd";
@@ -96,9 +97,12 @@ if ($resql)
print_liste_field_titre($langs->trans("Contract"),"services.php", "c.rowid","&mode=$mode","","",$sortfield);
print_liste_field_titre($langs->trans("Service"),"services.php", "p.label","&mode=$mode","","",$sortfield);
print_liste_field_titre($langs->trans("Company"),"services.php", "s.nom","&mode=$mode","","",$sortfield);
+ // Date debut
if ($mode == "0") print_liste_field_titre($langs->trans("DateStartPlannedShort"),"services.php", "cd.date_ouverture_prevue","&mode=$mode",'',' align="center"',$sortfield);
if ($mode =="" || $mode > 0) print_liste_field_titre($langs->trans("DateStartRealShort"),"services.php", "cd.date_ouverture","&mode=$mode",'',' align="center"',$sortfield);
- print_liste_field_titre($langs->trans("DateEndPlannedShort"),"services.php", "cd.date_fin_validite","&mode=$mode",'',' align="center"',$sortfield);
+ // Date fin
+ if ($mode == "" || $mode < 5) print_liste_field_titre($langs->trans("DateEndPlannedShort"),"services.php", "cd.date_fin_validite","&mode=$mode",'',' align="center"',$sortfield);
+ else print_liste_field_titre($langs->trans("DateEndRealShort"),"services.php", "cd.date_cloture","&mode=$mode",'',' align="center"',$sortfield);
print_liste_field_titre($langs->trans("Status"),"services.php", "cd.statut","&mode=$mode","","",$sortfield);
print "\n";
@@ -112,10 +116,14 @@ if ($resql)
print '
'.img_object($langs->trans("ShowContract"),"contract").' '.$obj->cid.' | ';
print ''.img_object($langs->trans("ShowService"),"service").' '.dolibarr_trunc($obj->label,20).' | ';
print ''.img_object($langs->trans("ShowCompany"),"company").' '.dolibarr_trunc($obj->nom,44).' | ';
+ // Date debut
if ($mode == "0") print ''.($obj->date_ouverture_prevue?dolibarr_print_date($obj->date_ouverture_prevue):' ').' | ';
if ($mode == "" || $mode > 0) print ''.($obj->date_ouverture?dolibarr_print_date($obj->date_ouverture):' ').' | ';
- print ''.($obj->date_fin_validite?dolibarr_print_date($obj->date_fin_validite):' ');
- if ($obj->date_fin_validite && $obj->date_fin_validite < mktime()) print img_warning($langs->trans("Late"));
+ // Date fin
+ if ($mode == "" || $mode < 5) print ' | '.($obj->date_fin_validite?dolibarr_print_date($obj->date_fin_validite):' ');
+ else print ' | '.dolibarr_print_date($obj->date_cloture);
+ // Icone warning
+ if ($obj->date_fin_validite && $obj->date_fin_validite < mktime() && $obj->statut < 5) print img_warning($langs->trans("Late"));
else print ' ';
print ' | ';
print ' | ';
diff --git a/htdocs/langs/en_US/contracts.lang b/htdocs/langs/en_US/contracts.lang
index 270a49cd65a..e57e800f1ea 100644
--- a/htdocs/langs/en_US/contracts.lang
+++ b/htdocs/langs/en_US/contracts.lang
@@ -56,6 +56,7 @@ DateEndPlannedShort=Planed end date
DateStartReal=Real start date
DateStartRealShort=Real start date
DateEndReal=Real end date
+DateEndRealShort=Real end date
NbOfServices=Nb of services
CloseService=Close service
ServicesNomberShort=%s service(s)
diff --git a/htdocs/langs/en_US/main.lang b/htdocs/langs/en_US/main.lang
index 3c27ae2e169..7ed9ce9bb22 100644
--- a/htdocs/langs/en_US/main.lang
+++ b/htdocs/langs/en_US/main.lang
@@ -114,6 +114,7 @@ DateValue=Value date
DateLimit=Limit date
Year=Year
Month=Month
+Week=Week
Day=Day
Hour=Hour
Minute=Minute
diff --git a/htdocs/langs/fr_FR/contracts.lang b/htdocs/langs/fr_FR/contracts.lang
index 3618ea6212b..1ab202d5ae2 100644
--- a/htdocs/langs/fr_FR/contracts.lang
+++ b/htdocs/langs/fr_FR/contracts.lang
@@ -56,6 +56,7 @@ DateEndPlannedShort=Date fin pr
DateStartReal=Date effective mise en service
DateStartRealShort=Date début
DateEndReal=Date effective fin de service
+DateEndRealShort=Date effective fin
NbOfServices=Nb de services
CloseService=Fermer service
ServicesNomberShort=%s service(s)
diff --git a/htdocs/langs/fr_FR/main.lang b/htdocs/langs/fr_FR/main.lang
index adb0c792f4e..023184888f1 100644
--- a/htdocs/langs/fr_FR/main.lang
+++ b/htdocs/langs/fr_FR/main.lang
@@ -114,6 +114,7 @@ DateValue=Date valeur
DateLimit=Date limite
Year=Année
Month=Mois
+Week=Semaine
Day=Jour
Hour=Heure
Minute=Minute