diff --git a/htdocs/adherents/card_subscriptions.php b/htdocs/adherents/card_subscriptions.php
index 1e8670d8aef2617dc066e47d036e7416d2ce8b0c..d74697dd304e1359cbc1f5f000cfc2aa4f50bd22 100644
--- a/htdocs/adherents/card_subscriptions.php
+++ b/htdocs/adherents/card_subscriptions.php
@@ -452,7 +452,7 @@ if ($action == 'addsubscription' && $user->rights->adherent->cotisation->creer)
 
 		print '<tr><td>'.$langs->trans("Label").'</td>';
 		print '<td><input name="label" type="text" size="32" value="'.$langs->trans("Subscription").' ';
-		print strftime("%Y",($datefrom?$datefrom:time())).'" ></td></tr>';
+		print dolibarr_print_date(($datefrom?$datefrom:time()),"%Y").'" ></td></tr>';
 	}
 	
 	print '<tr><td>'.$langs->trans("SendAcknowledgementByMail").'</td>';
diff --git a/htdocs/adherents/cotisations.php b/htdocs/adherents/cotisations.php
index fc6d0e045caee3d94a39da7cc9dd1916d180d4e2..9cf292e42e5f4111b61ad755b24939e62eb2a68c 100644
--- a/htdocs/adherents/cotisations.php
+++ b/htdocs/adherents/cotisations.php
@@ -226,7 +226,7 @@ if ($result)
 		print '<td>';
         if ($allowinsertbankafter && $user->rights->banque->modifier && ! $objp->fk_account && $conf->banque->enabled && $conf->global->ADHERENT_BANK_USE && $objp->cotisation)
 		{
-			print "<input name=\"label\" type=\"text\" class=\"flat\" size=\"30\" value=\"".$langs->trans("Subscriptions").' '.strftime("%Y",$objp->dateadh)."\" >\n";
+			print "<input name=\"label\" type=\"text\" class=\"flat\" size=\"30\" value=\"".$langs->trans("Subscriptions").' '.dolibarr_print_date($objp->dateadh,"%Y")."\" >\n";
 	                //	print "<td><input name=\"debit\" type=\"text\" size=8></td>";
 	                //	print "<td><input name=\"credit\" type=\"text\" size=8></td>";
 			print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
diff --git a/htdocs/adherents/index.php b/htdocs/adherents/index.php
index 6115986a9830db2ea2e1ac644c9e8b83a2372d48..533d32ec65d0c10cd430c2d3ede6d0b6f480b936 100644
--- a/htdocs/adherents/index.php
+++ b/htdocs/adherents/index.php
@@ -254,7 +254,7 @@ if ($result)
   while ($i < $num)
     {
       $objp = $db->fetch_object($result);
-      $year=strftime("%Y",$objp->dateadh);
+      $year=dolibarr_print_date($objp->dateadh,"%Y");
       $Total[$year]+=$objp->cotisation;
       $Number[$year]+=1;
       $tot+=$objp->cotisation;
diff --git a/htdocs/comm/fiche.php b/htdocs/comm/fiche.php
index a35569247964db68afa3b289340a5542104a08c7..56d66061712a455ced782f102edd6d4da0bd4dd6 100644
--- a/htdocs/comm/fiche.php
+++ b/htdocs/comm/fiche.php
@@ -140,7 +140,6 @@ if ($socid > 0)
     $objsoc->id=$socid;
     $objsoc->fetch($socid,$to);
 
-    $dac = strftime("%Y-%m-%d %H:%M", time());
     if ($errmesg)
     {
         print "<b>$errmesg</b><br>";
diff --git a/htdocs/comm/propal.php b/htdocs/comm/propal.php
index ad6a89df97633f20f9173c3b056aa6908ec8881e..e9c92e231ecfd07d1d48043bf8c9c9a9283aaf6e 100644
--- a/htdocs/comm/propal.php
+++ b/htdocs/comm/propal.php
@@ -2024,14 +2024,15 @@ else
 
 			// Date propale
 			print '<td align="center">';
-			$y = strftime('%Y',$objp->dp);
-			$m = strftime('%m',$objp->dp);
-
-			print strftime('%d',$objp->dp)."\n";
+			$y = dolibarr_print_date($objp->dp,'%Y');
+			$m = dolibarr_print_date($objp->dp,'%m');
+			$mt= dolibarr_print_date($objp->dp,'%b');
+			$d = dolibarr_print_date($objp->dp,'%d');
+			print $d."\n";
 			print ' <a href="'.$_SERVER["PHP_SELF"].'?year='.$y.'&amp;month='.$m.'">';
-			print dolibarr_print_date($objp->dp,'%b')."</a>\n";
+			print $mt."</a>\n";
 			print ' <a href="'.$_SERVER["PHP_SELF"].'?year='.$y.'">';
-			print strftime('%Y',$objp->dp)."</a></td>\n";
+			print $y."</a></td>\n";
 
 			// Date fin validite
 			if ($objp->dfv)
diff --git a/htdocs/comm/propal/stats/month.php b/htdocs/comm/propal/stats/month.php
index bc4f1211479bb622dd7c90eda5d7613a8a088957..dde41bd2848387e5556145ccc6911f10e14f50ad 100644
--- a/htdocs/comm/propal/stats/month.php
+++ b/htdocs/comm/propal/stats/month.php
@@ -125,7 +125,7 @@ $data = array();
 
 for ($i = 1 ; $i < 13 ; $i++)
 {
-  $data[$i-1] = array(ucfirst(substr(strftime("%b",dolibarr_mktime(12,12,12,$i,1,$year)),0,3)), $res[$i]);
+  $data[$i-1] = array(ucfirst(substr(dolibarr_print_date(dolibarr_mktime(12,0,0,$i,1,$year),"%b"),0,3)), $res[$i]);
 }
 
 if (!$user->rights->societe->client->voir || $user->societe_id)
diff --git a/htdocs/commande/stats/month.php b/htdocs/commande/stats/month.php
index 7a729cdb599e453774c763b11aafa5a4ee054b4c..f506caae1f35c1da3648d91aea6e95da58344021 100644
--- a/htdocs/commande/stats/month.php
+++ b/htdocs/commande/stats/month.php
@@ -140,7 +140,7 @@ $data = array();
 
 for ($i = 1 ; $i < 13 ; $i++)
 {
-  $data[$i-1] = array(ucfirst(substr(strftime("%b",dolibarr_mktime(12,12,12,$i,1,$year)),0,3)), $res[$i]);
+  $data[$i-1] = array(ucfirst(substr(dolibarr_print_date(dolibarr_mktime(12,0,0,$i,1,$year),"%b"),0,3)), $res[$i]);
 }
 
 if (!$user->rights->societe->client->voir || $user->societe_id)
diff --git a/htdocs/compta/bank/graph.php b/htdocs/compta/bank/graph.php
index eef574ad600dbc841462ef905882bc68b227244f..c213bc793d53ea335e26134e05250d728594a96f 100644
--- a/htdocs/compta/bank/graph.php
+++ b/htdocs/compta/bank/graph.php
@@ -50,9 +50,9 @@ if ($_GET["account"] || $_GET["ref"])
 	if (! empty($_GET["lib"])) $conf->global->MAIN_GRAPH_LIBRARY=$_GET["lib"];
 	
     $datetime = time();
-    $year = strftime("%Y", $datetime);
-    $month = strftime("%m", $datetime);
-    $day = strftime("%d", $datetime);
+    $year = dolibarr_print_date($datetime, "%Y");
+    $month = dolibarr_print_date($datetime, "%m");
+    $day = dolibarr_print_date($datetime, "%d");
     if (! empty($_GET["year"]))  $year=sprintf("%04d",$_GET["year"]);
     if (! empty($_GET["month"])) $month=sprintf("%02d",$_GET["month"]);
     
@@ -166,7 +166,6 @@ if ($_GET["account"] || $_GET["ref"])
 			$i = 0;
 			while ($xmonth == $month)
 			{
-				//print strftime ("%e %d %m %y",$day)."\n";
 				$subtotal = $subtotal + (isset($amounts[$textdate]) ? $amounts[$textdate] : 0);
 				if ($day > time())
 				{
@@ -601,7 +600,7 @@ if ($_GET["account"] || $_GET["ref"])
 			{
 				$data_credit[$i] = isset($credits[substr("0".($i+1),-2)]) ? $credits[substr("0".($i+1),-2)] : 0;
 				$data_debit[$i] = isset($debits[substr("0".($i+1),-2)]) ? $debits[substr("0".($i+1),-2)] : 0;
-				$labels[$i] = strftime("%b",dolibarr_mktime(12,0,0,$i+1,1,2000));
+				$labels[$i] = dolibarr_print_date(dolibarr_mktime(12,0,0,$i+1,1,2000),"%b");
 				$datamin[$i] = $acct->min_desired;
 			}
 		
diff --git a/htdocs/compta/commande/liste.php b/htdocs/compta/commande/liste.php
index d2cabdc221686959828bf79b94584ae28fe25ab1..22277bf0b3276040cf6de532f5119a62a9af7b5b 100644
--- a/htdocs/compta/commande/liste.php
+++ b/htdocs/compta/commande/liste.php
@@ -158,14 +158,15 @@ if ($resql)
         print "</td>";
 
         print "<td align=\"center\">";
-        $y = strftime("%Y",$objp->date_commande);
-        $m = strftime("%m",$objp->date_commande);
-
-        print strftime("%d",$objp->date_commande)."\n";
+        $y = dolibarr_print_date($objp->date_commande,"%Y");
+        $m = dolibarr_print_date($objp->date_commande,"%m");
+        $mt = dolibarr_print_date($objp->date_commande,"%b");
+        $d = dolibarr_print_date($objp->date_commande,"%d");
+        print $d."\n";
         print " <a href=\"liste.php?year=$y&amp;month=$m\">";
-        print strftime("%B",$objp->date_commande)."</a>\n";
+        print $mt."</a>\n";
         print " <a href=\"liste.php?year=$y\">";
-        print strftime("%Y",$objp->date_commande)."</a></td>\n";
+        print $y."</a></td>\n";
 
 		print '<td align="right">'.$generic_commande->LibStatut($objp->fk_statut,$objp->facture,5).'</td>';
         print "</tr>\n";
diff --git a/htdocs/compta/facture/apercu.php b/htdocs/compta/facture/apercu.php
index 3992e5cbda9a819b7020dc7c739e1da285423642..815ea416ecd2597e19cf177c08439954530a4dc3 100644
--- a/htdocs/compta/facture/apercu.php
+++ b/htdocs/compta/facture/apercu.php
@@ -166,7 +166,7 @@ if ($_GET["facid"] > 0)
 
                 print '<td><a href="'.DOL_URL_ROOT . '/document.php?modulepart=facture&file='.urlencode($relativepathdetail).'">'.$fac->ref.'-detail.pdf</a></td>';
                 print '<td align="right">'.filesize($filedetail). ' bytes</td>';
-                print '<td align="right">'.strftime("%d %b %Y %H:%M:%S",filemtime($filedetail)).'</td>';
+                print '<td align="right">'.dolibarr_print_date(filemtime($filedetail),"%d %b %Y %H:%M:%S").'</td>';
                 print '</tr>';
             }
 
diff --git a/htdocs/compta/facture/stats/month.php b/htdocs/compta/facture/stats/month.php
index e0874eae705c0586b2e6d534c11ed7bf8b7b8382..82907b5364931faa71fb450e61cf7652fd361362 100644
--- a/htdocs/compta/facture/stats/month.php
+++ b/htdocs/compta/facture/stats/month.php
@@ -124,7 +124,7 @@ $data = array();
 
 for ($i = 1 ; $i < 13 ; $i++)
 {
-  $data[$i-1] = array(ucfirst(substr(strftime("%b",dolibarr_mktime(12,12,12,$i,1,$year)),0,3)), $res[$i]);
+  $data[$i-1] = array(ucfirst(substr(dolibarr_print_date(dolibarr_mktime(12,0,0,$i,1,$year),"%b"),0,3)), $res[$i]);
 }
 
 $filename_avg = $dir."/invoicesaverage-".$year.".png";
diff --git a/htdocs/compta/propal.php b/htdocs/compta/propal.php
index 2b2e87a2d58b3e43767878725f92a94ccfa6e36b..53461ea3144a317ce095bc332a9fe5a09088505d 100644
--- a/htdocs/compta/propal.php
+++ b/htdocs/compta/propal.php
@@ -777,13 +777,15 @@ else
 		
 			// Date
 			print "<td align=\"right\">";
-			$y = strftime("%Y",$objp->dp);
-			$m = strftime("%m",$objp->dp);
-			print strftime("%d",$objp->dp)."\n";
+			$y = dolibarr_print_date($objp->dp,"%Y");
+			$m = dolibarr_print_date($objp->dp,"%m");
+			$mt = dolibarr_print_date($objp->dp,"%b");
+			$d = dolibarr_print_date($objp->dp,"%d");
+			print $d."\n";
 			print " <a href=\"propal.php?year=$y&month=$m\">";
-			print strftime("%B",$objp->dp)."</a>\n";
+			print $b."</a>\n";
 			print " <a href=\"propal.php?year=$y\">";
-			print strftime("%Y",$objp->dp)."</a></td>\n";
+			print $y."</a></td>\n";
 		
 			// Prix
 			print "<td align=\"right\">".price($objp->total_ht)."</td>\n";
diff --git a/htdocs/compta/resultat/index.php b/htdocs/compta/resultat/index.php
index 09890fdc1c451ad662f40b20c7503a75748d1e5a..b2bca3bc75681d8a64fe6ce58e53190fc9891469 100644
--- a/htdocs/compta/resultat/index.php
+++ b/htdocs/compta/resultat/index.php
@@ -495,7 +495,7 @@ for ($mois = 1 ; $mois <= 12 ; $mois++)
 {
 	$var=!$var;
 	print '<tr '.$bc[$var].'>';
-	print "<td>".strftime("%B",dolibarr_mktime(12,0,0,$mois,1,$annee))."</td>";
+	print "<td>".dolibarr_print_date(dolibarr_mktime(12,0,0,$mois,1,$annee),"%b")."</td>";
 	for ($annee = $year_start ; $annee <= $year_end ; $annee++)
 	{
 		$case = strftime("%Y-%m",dolibarr_mktime(12,0,0,$mois,1,$annee));
diff --git a/htdocs/compta/sociales/charges.php b/htdocs/compta/sociales/charges.php
index 4f3af0eecf43d1428d071cf9dd602a6bbed95dcf..8e19643ab0ba9febfc791abe29a2b7e603b5dfda 100644
--- a/htdocs/compta/sociales/charges.php
+++ b/htdocs/compta/sociales/charges.php
@@ -284,7 +284,7 @@ if ($chid > 0)
 		print "<td>";
 		if ($cha->paye==0 && $_GET['action'] == 'edit')
 		{
-			print "<input type=\"text\" name=\"period\" value=\"".strftime("%Y%m%d",$cha->periode)."\"> (YYYYMMDD)";
+			print "<input type=\"text\" name=\"period\" value=\"".dolibarr_print_date($cha->periode,"%Y%m%d")."\"> (YYYYMMDD)";
 		}
 		else
 		{
diff --git a/htdocs/compta/stats/comp.php b/htdocs/compta/stats/comp.php
index 981c9727edb5e240a2df8ae96915cc40d3cbc353..90c0b899557654608ded1087e1e31ca6967d0226 100644
--- a/htdocs/compta/stats/comp.php
+++ b/htdocs/compta/stats/comp.php
@@ -188,7 +188,7 @@ function pt ($db, $sql, $year) {
       if ($obj->dm > $month ) {
 	for ($b = $month ; $b < $obj->dm ; $b++) {
 	  print "<tr $bc[$var]>";
-	  print "<td>".strftime("%B",mktime(12,0,0,$b, 1, $year))."</td>\n";
+	  print "<td>".dolibarr_print_date(dolibarr_mktime(12,0,0,$b, 1, $year),"%b")."</td>\n";
 	  print "<td align=\"right\">0</td>\n";	  
 	  print "</tr>\n";
 	  $var=!$var;
@@ -199,7 +199,7 @@ function pt ($db, $sql, $year) {
       if ($obj->sum > 0) {
 	print "<tr $bc[$var]>";
 	print "<td><a href=\"comp.php?details=1&year=$year&month=$obj->dm\">";
-	print strftime("%B",mktime(12,0,0,$obj->dm, 1, $year))."</td>\n";
+	print dolibarr_print_date(dolibarr_mktime(12,0,0,$obj->dm, 1, $year),"%b")."</td>\n";
 	print "<td align=\"right\">".price($obj->sum)."</td>\n";
 	
 	print "</TR>\n";
@@ -220,7 +220,7 @@ function pt ($db, $sql, $year) {
       for ($b = $beg + 1 ; $b < 13 ; $b++) {
 	$var=!$var;
 	print "<tr $bc[$var]>";
-	print "<td>".strftime("%B",mktime(12,0,0,$b, 1, $year))."</td>\n";
+	print "<td>".dolibarr_print_date(dolibarr_mktime(12,0,0,$b, 1, $year),"%b")."</td>\n";
 	print "<td align=\"right\">0</td>\n";	  
 	print "</tr>\n";
 	$ca[$b] = 0;
@@ -295,7 +295,7 @@ function ppt ($db, $year, $socid)
       $delta = $ca[$b] - $prev[$b];
       $deltat = $deltat + $delta ;
       print "<tr $bc[$var]>";
-      print "<td>".strftime("%B",mktime(12,0,0,$b, 1, $year))."</td>\n";
+      print "<td>".dolibarr_print_date(dolibarr_mktime(12,0,0,$b, 1, $year),"%b")."</td>\n";
       print "<td align=\"right\">".price($delta)."</td>\n";	  
       print "</tr>\n";
     }
diff --git a/htdocs/compta/stats/exercices.php b/htdocs/compta/stats/exercices.php
index d1dbe171c4927239c8cf436191cca7f40e04663a..fb8ff3d1cc89df2db17deb315cfe09ef58336339 100644
--- a/htdocs/compta/stats/exercices.php
+++ b/htdocs/compta/stats/exercices.php
@@ -123,7 +123,7 @@ function pt ($db, $sql, $year) {
       if ($obj->dm > $month ) {
         	for ($b = $month ; $b < $obj->dm ; $b++) {
         	  print "<tr $bc[$var]>";
-        	  print "<td>".strftime("%B",mktime(12,0,0,$b, 1, $year))."</td>\n";
+        	  print "<td>".dolibarr_print_date(dolibarr_mktime(12,0,0,$b, 1, $year),"%b")."</td>\n";
         	  print "<td align=\"right\">0</td>\n";	  
         	  print "</tr>\n";
         	  $var=!$var;
@@ -134,7 +134,7 @@ function pt ($db, $sql, $year) {
       if ($obj->sum > 0) {
 	print "<tr $bc[$var]>";
 	print "<td>";
-	print strftime("%B",mktime(12,0,0,$obj->dm, 1, $year))."</td>\n";
+	print dolibarr_print_date(dolibarr_mktime(12,0,0,$obj->dm, 1, $year),"%b")."</td>\n";
 	print "<td align=\"right\">".price($obj->sum)."</td>\n";
 	
 	print "</tr>\n";
@@ -155,7 +155,7 @@ function pt ($db, $sql, $year) {
       for ($b = $beg + 1 ; $b < 13 ; $b++) {
 	$var=!$var;
 	print "<tr $bc[$var]>";
-	print "<td>".strftime("%B",mktime(12,0,0,$b, 1, $year))."</td>\n";
+	print "<td>".dolibarr_print_date(dolibarr_mktime(12,0,0,$b, 1, $year),"%b")."</td>\n";
 	print "<td align=\"right\">0</td>\n";	  
 	print "</tr>\n";
 	$ca[$b] = 0;
@@ -234,7 +234,7 @@ function ppt ($db, $year, $socid)
       $delta = $ca[$b] - $prev[$b];
       $deltat = $deltat + $delta ;
       print "<TR $bc[$var]>";
-      print "<TD>".strftime("%B",mktime(12,0,0,$b, 1, $year))."</TD>\n";
+      print "<TD>".dolibarr_print_date(dolibarr_mktime(12,0,0,$b, 1, $year),"%b")."</TD>\n";
       print "<TD align=\"right\">".price($delta)."</TD>\n";
       print "<TD align=\"right\">".price($deltat)."</TD>\n";
       print "</TR>\n";
@@ -255,5 +255,5 @@ ppt($db, $cyear, $socid);
 $db->close();
 
 
-llxFooter('$Date$ r&eacute;vision $Revision$');
+llxFooter('$Date$ - $Revision$');
 ?>
diff --git a/htdocs/compta/stats/index.php b/htdocs/compta/stats/index.php
index 3c6e39af39b68d745ea29dcf3326e1b2287d9b13..b6ffb981c6a966538d4f634be59ffb1ae696e563 100644
--- a/htdocs/compta/stats/index.php
+++ b/htdocs/compta/stats/index.php
@@ -177,12 +177,12 @@ for ($mois = 1 ; $mois < 13 ; $mois++)
     $var=!$var;
     print "<tr $bc[$var]>";
 
-    print "<td>".strftime("%B",mktime(1,1,1,$mois,1,2000))."</td>";
+    print "<td>".dolibarr_print_date(dolibarr_mktime(12,0,0,$mois,1,2000),"%b")."</td>";
     for ($annee = $year_start ; $annee <= $year_end ; $annee++)
     {
-        $casenow = strftime("%Y-%m",mktime());
-        $case = strftime("%Y-%m",mktime(1,1,1,$mois,1,$annee));
-        $caseprev = strftime("%Y-%m",mktime(1,1,1,$mois,1,$annee-1));
+        $casenow = dolibarr_print_date(mktime(),"%Y-%m");
+        $case = dolibarr_print_date(mktime(1,1,1,$mois,1,$annee),"%Y-%m");
+        $caseprev = dolibarr_print_date(mktime(1,1,1,$mois,1,$annee-1),"%Y-%m");
 
         if ($annee == $year_current) {
             $total_CA += $cum[$case];
diff --git a/htdocs/compta/tva/index.php b/htdocs/compta/tva/index.php
index 984a8675afe38007a93952297004f0d94ded4870..38eedc8b546ca78763a06f2021f3806e65903b8a 100644
--- a/htdocs/compta/tva/index.php
+++ b/htdocs/compta/tva/index.php
@@ -248,7 +248,7 @@ if ($conf->compta->mode == "CREANCES-DETTES")
 	{
 		$var=!$var;
 		print "<tr $bc[$var]>";
-		print '<td nowrap>'.strftime("%b %Y",dolibarr_mktime(0,0,0,$m,1,$y)).'</td>';
+		print '<td nowrap>'.dolibarr_print_date(dolibarr_mktime(0,0,0,$m,1,$y),"%b %Y").'</td>';
 	
 		$x_coll = tva_coll($db, $y, $m);
 		print "<td nowrap align=\"right\">".price($x_coll)."</td>";
diff --git a/htdocs/compta/tva/quadri.php b/htdocs/compta/tva/quadri.php
index 0901ee4b1b8b4fc87ae82fe1be3346636e50e03b..81404305ad051c44e5435ac5bea0b2f3c5df8dd3 100644
--- a/htdocs/compta/tva/quadri.php
+++ b/htdocs/compta/tva/quadri.php
@@ -217,7 +217,7 @@ if ($conf->compta->mode == "CREANCES-DETTES")
 	$subtot_paye_vat = 0;
 	for ($q = 1 ; $q <= 4 ; $q++ )
 	{
-		print "<tr class=\"liste_titre\"><td colspan=\"8\">".$langs->trans("Quadri")." $q (".strftime("%b %Y",mktime(0,0,0,(($q-1)*3)+1,1,$y)).' - '.strftime("%b %Y",mktime(0,0,0,($q*3),1,$y)).")</td></tr>";
+		print "<tr class=\"liste_titre\"><td colspan=\"8\">".$langs->trans("Quadri")." $q (".dolibarr_print_date(dolibarr_mktime(0,0,0,(($q-1)*3)+1,1,$y),"%b %Y").' - '.dolibarr_print_date(dolibarr_mktime(0,0,0,($q*3),1,$y),"%b %Y").")</td></tr>";
 		$var=true;
 	
 		$x_coll = tva_coll($db, $y, $q);
diff --git a/htdocs/compta/tva/quadri_detail.php b/htdocs/compta/tva/quadri_detail.php
index 346d72f407ea7d54799c10f9b7ca783be43b9cd1..d772fe9cb2be891bbbbc757867e6412690ea8de5 100644
--- a/htdocs/compta/tva/quadri_detail.php
+++ b/htdocs/compta/tva/quadri_detail.php
@@ -84,7 +84,7 @@ if ($modetax==1)	// Caluclate on invoice for goods and services
 {
     $nom=$langs->trans("VATReportByQuartersInDueDebtMode");
     $nom.='<br>('.$langs->trans("SeeVATReportInInputOutputMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year_start.'&q='.$q.'&modetax=0">','</a>').')';
-    $period=$year_start.' - '.$langs->trans("Quadri")." $q (".strftime("%b %Y",dolibarr_mktime(12,0,0,(($q-1)*3)+1,1,$year_start)).' - '.strftime("%b %Y",dolibarr_mktime(12,0,0,($q*3),1,$year_start)).")";
+    $period=$year_start.' - '.$langs->trans("Quadri")." $q (".dolibarr_print_date(dolibarr_mktime(12,0,0,(($q-1)*3)+1,1,$year_start),"%b %Y").' - '.dolibarr_print_date(dolibarr_mktime(12,0,0,($q*3),1,$year_start),"%b %Y").")";
 	$prevyear=$year_start; $prevquarter=$q;
 	if ($prevquarter > 1) $prevquarter--;
 	else { $prevquarter=4; $prevyear--; }
@@ -113,7 +113,7 @@ if ($modetax==0) 	// Invoice for goods, payment for services
 {
     $nom=$langs->trans("VATReportByQuartersInInputOutputMode");
     $nom.='<br>('.$langs->trans("SeeVATReportInDueDebtMode",'<a href="'.$_SERVER["PHP_SELF"].'?year='.$year_start.'&q='.$q.'&modetax=1">','</a>').')';
-    $period=$year_start.' - '.$langs->trans("Quadri")." $q (".strftime("%b %Y",dolibarr_mktime(12,0,0,(($q-1)*3)+1,1,$year_start)).' - '.strftime("%b %Y",dolibarr_mktime(12,0,0,($q*3),1,$year_start)).")";
+    $period=$year_start.' - '.$langs->trans("Quadri")." $q (".dolibarr_print_date(dolibarr_mktime(12,0,0,(($q-1)*3)+1,1,$year_start),"%b %Y").' - '.dolibarr_print_date(dolibarr_mktime(12,0,0,($q*3),1,$year_start),"%b %Y").")";
 	$prevyear=$year_start; $prevquarter=$q;
 	if ($prevquarter > 1) $prevquarter--;
 	else { $prevquarter=4; $prevyear--; }
diff --git a/htdocs/contrat/fiche.php b/htdocs/contrat/fiche.php
index abf3072f11382367c75c9d0d0c5870aa6dd4ddf7..d4caa58909a4dbc6d0859a09f6a779c24e888179 100644
--- a/htdocs/contrat/fiche.php
+++ b/htdocs/contrat/fiche.php
@@ -968,7 +968,7 @@ else
 				//print '<br />';
 				$dateactstart = dolibarr_mktime(12, 0 , 0, $_POST["remonth"], $_POST["reday"], $_POST["reyear"]);
 				$dateactend   = dolibarr_mktime(12, 0 , 0, $_POST["endmonth"], $_POST["endday"], $_POST["endyear"]);
-				$html->form_confirm($_SERVER["PHP_SELF"]."?id=".$contrat->id."&amp;ligne=".$_GET["ligne"]."&amp;date=".$dateactstart."&amp;dateend=".$dateactend,$langs->trans("ActivateService"),$langs->trans("ConfirmActivateService",strftime("%A %d %B %Y", $dateactstart)),"confirm_active");
+				$html->form_confirm($_SERVER["PHP_SELF"]."?id=".$contrat->id."&amp;ligne=".$_GET["ligne"]."&amp;date=".$dateactstart."&amp;dateend=".$dateactend,$langs->trans("ActivateService"),$langs->trans("ConfirmActivateService",dolibarr_print_date($dateactstart,"%A %d %B %Y")),"confirm_active");
 				print '<table class="noborder" width="100%"><tr '.$bc[false].' height="6"><td></td></tr></table>';
 			}
 
@@ -980,7 +980,7 @@ else
 				//print '<br />';
 				$dateactstart = dolibarr_mktime(12, 0 , 0, $_POST["remonth"], $_POST["reday"], $_POST["reyear"]);
 				$dateactend   = dolibarr_mktime(12, 0 , 0, $_POST["endmonth"], $_POST["endday"], $_POST["endyear"]);
-				$html->form_confirm($_SERVER["PHP_SELF"]."?id=".$contrat->id."&amp;ligne=".$_GET["ligne"]."&amp;date=".$dateactstart."&amp;dateend=".$dateactend,$langs->trans("CloseService"),$langs->trans("ConfirmCloseService",strftime("%A %d %B %Y", $dateactend)),"confirm_closeline");
+				$html->form_confirm($_SERVER["PHP_SELF"]."?id=".$contrat->id."&amp;ligne=".$_GET["ligne"]."&amp;date=".$dateactstart."&amp;dateend=".$dateactend,$langs->trans("CloseService"),$langs->trans("ConfirmCloseService",dolibarr_print_date($dateactend,"%A %d %B %Y")),"confirm_closeline");
 				print '<table class="noborder" width="100%"><tr '.$bc[false].' height="6"><td></td></tr></table>';
 			}		
 			
diff --git a/htdocs/docs/class/courrier-droit-editeur.class.php b/htdocs/docs/class/courrier-droit-editeur.class.php
index 4824a18cbe18b5d27800161b0a5a1cbdb7973d8b..9971ce2341531c3c44f27dfcaa8392bf00a89f06 100644
--- a/htdocs/docs/class/courrier-droit-editeur.class.php
+++ b/htdocs/docs/class/courrier-droit-editeur.class.php
@@ -48,7 +48,7 @@ class pdf_courrier_droit_editeur
 		$this->marge_haute=10;
 		$this->marge_basse=10;
 
-		$this->name = "Courrier des droits ".strftime("%Y", time());
+		$this->name = "Courrier des droits ".dolibarr_print_date(time(),"%Y");
 		$this->file = '1'.strftime("%Y", time()).'.pdf';
 	}
 
diff --git a/htdocs/expedition/liste.php b/htdocs/expedition/liste.php
index a2836786428348e8b8f17eedce6434cee14b3e38..6ad9137177933bb9d6fb133ad4180f3faf7cc6c1 100644
--- a/htdocs/expedition/liste.php
+++ b/htdocs/expedition/liste.php
@@ -149,14 +149,15 @@ if ($resql)
     }
     
     print "<td align=\"right\">";
-    $y = strftime("%Y",$objp->date_expedition);
-    $m = strftime("%m",$objp->date_expedition);
-     
-    print strftime("%d",$objp->date_expedition)."\n";
+    $y = dolibarr_print_date($objp->date_expedition,"%Y");
+    $m = dolibarr_print_date($objp->date_expedition,"%m");
+    $mt = dolibarr_print_date($objp->date_expedition,"%b");
+    $d = dolibarr_print_date($objp->date_expedition,"%d");
+    print $d."\n";
     print " <a href=\"propal.php?year=$y&amp;month=$m\">";
-    print strftime("%B",$objp->date_expedition)."</a>\n";
+    print $b."</a>\n";
     print " <a href=\"propal.php?year=$y\">";
-    print strftime("%Y",$objp->date_expedition)."</a></TD>\n";      
+    print $y."</a></TD>\n";      
     
     print '<td align="right">'.$expedition->LibStatut($objp->fk_statut,5).'</td>';
     print "</tr>\n";
diff --git a/htdocs/expedition/stats/expeditionstats.class.php b/htdocs/expedition/stats/expeditionstats.class.php
index 9059575975ff5d5b7ddc6378aacedac61dce4f12..47a0fbbe138c1f16cc5583ec3fede7181eb0e76e 100644
--- a/htdocs/expedition/stats/expeditionstats.class.php
+++ b/htdocs/expedition/stats/expeditionstats.class.php
@@ -85,7 +85,7 @@ class ExpeditionStats
     
     for ($i = 1 ; $i < 13 ; $i++)
       {
-	$data[$i-1] = array(strftime("%b",dolibarr_mktime(12,12,12,$i,1,$year)), $res[$i]);
+	$data[$i-1] = array(dolibarr_print_date(dolibarr_mktime(12,0,0,$i,1,$year),"%b"), $res[$i]);
       }
 
     return $data;
@@ -101,7 +101,7 @@ class ExpeditionStats
 
     for ($i = 1 ; $i < 13 ; $i++)
       {
-	$data[$i-1] = array(strftime("%b",dolibarr_mktime(12,12,12,$i,1,$year)), 
+	$data[$i-1] = array(dolibarr_print_date(dolibarr_mktime(12,0,0,$i,1,$year),"%b"), 
 			    $data1[$i][1],
 			    $data2[$i][1]);
       }
diff --git a/htdocs/fichinter/rapport.php b/htdocs/fichinter/rapport.php
index 1b13d0091119221c679e1b0e8e465f5cddd7d125..8fde011fb7caedac4c953c0ce68f603ee19990be 100644
--- a/htdocs/fichinter/rapport.php
+++ b/htdocs/fichinter/rapport.php
@@ -93,7 +93,7 @@ $sql .= " ORDER BY $sortfield $sortorder ";
 if ( $db->query($sql) )
 {
   $num = $db->num_rows();
-  $title = "Rapport d'activit� de " . strftime("%B %Y",strtotime ($start));
+  $title = $langs->trans("Report")." ".dolibarr_print_date(strtotime($start),"%B %Y");
   print_barre_liste($title, $page, "rapport.php","&socid=$socid",$sortfield,$sortorder,'',$num);
 
   $i = 0;
@@ -124,7 +124,7 @@ if ( $db->query($sql) )
         print "<a href=\"".DOL_URL_ROOT."/comm/fiche.php?socid=".$objp->rowid.$filter."\">".$objp->nom."</a></TD>\n";
       }
       print '<td>'.nl2br($objp->description).'</td>';
-      print "<td>".strftime("%d %B %Y",$objp->dp)."</td>\n";
+      print "<td>".dolibarr_print_date($objp->dp,"%d %B %Y")."</td>\n";
       print '<td align="center">'.sprintf("%.1f",$objp->duree).'</td>';
       $DureeTotal += $objp->duree;
       print "</tr>\n";
diff --git a/htdocs/lib/functions.lib.php b/htdocs/lib/functions.lib.php
index 3a63e06b949e31450c3fc2eb28b1037144a5c0b3..255b4f4d7c7966c94891af03923e23a0d39e5924 100644
--- a/htdocs/lib/functions.lib.php
+++ b/htdocs/lib/functions.lib.php
@@ -2400,13 +2400,13 @@ function create_exdir($dir)
 
 
 /**
- \brief   Retourne le num�ro de la semaine par rapport a une date
+ \brief   Retourne le numero de la semaine par rapport a une date
  \param   time   	Date au format 'timestamp'
- \return  int		Num�ro de semaine
+ \return  int		Numero de semaine
  */
 function numero_semaine($time)
 {
-	$stime = strftime( '%Y-%m-%d',$time);
+	$stime = strftime('%Y-%m-%d',$time);
 
 	if (eregi('^([0-9]+)\-([0-9]+)\-([0-9]+) ?([0-9]+)?:?([0-9]+)?',$stime,$reg))
 	{
diff --git a/htdocs/product.class.php b/htdocs/product.class.php
index b53f70c6c20dc0ce8c2063efecaa4aa2d2b7dc90..0f2f308b9a1c0d89924d9db38ea4773d4757192f 100644
--- a/htdocs/product.class.php
+++ b/htdocs/product.class.php
@@ -1418,7 +1418,7 @@ class Product extends CommonObject
 
 		for ($j = 0 ; $j < 12 ; $j++)
 		{
-			$idx=ucfirst(substr( strftime("%b",mktime(12,0,0,$month,1,$year)) ,0,3) );
+			$idx=ucfirst(substr(dolibarr_print_date(dolibarr_mktime(12,0,0,$month,1,$year),"%b") ,0,3) );
 			$monthnum=sprintf("%02s",$month);
 
 			$result[$j] = array($idx,isset($tab[$year.$month])?$tab[$year.$month]:0);
diff --git a/htdocs/stats.class.php b/htdocs/stats.class.php
index 529d9ae51f8b4a9341c1b31c60155f169f02377b..2b329c61ffbc07962e9875c83a9c6abe697ad1c2 100644
--- a/htdocs/stats.class.php
+++ b/htdocs/stats.class.php
@@ -196,7 +196,7 @@ class Stats
 
 		for ($i = 1 ; $i < 13 ; $i++)
 		{
-			$data[$i-1] = array(ucfirst(substr(strftime("%b",dolibarr_mktime(12,0,0,$i,1,$year)),0,3)), $res[$i]);
+			$data[$i-1] = array(ucfirst(substr(dolibarr_print_date(dolibarr_mktime(12,0,0,$i,1,$year),"%b"),0,3)), $res[$i]);
 		}
 
 		return $data;
@@ -236,7 +236,7 @@ class Stats
 
 		for ($i = 1 ; $i < 13 ; $i++)
 		{
-			$data[$i-1] = array(ucfirst(substr(strftime("%b",dolibarr_mktime(12,0,0,$i,1,$year)),0,3)), $res[$i]);
+			$data[$i-1] = array(ucfirst(substr(dolibarr_print_date(dolibarr_mktime(12,0,0,$i,1,$year),"%b"),0,3)), $res[$i]);
 		}
 
 		return $data;
diff --git a/htdocs/translate.class.php b/htdocs/translate.class.php
index c5e057974db0f34c80a9ce486431bc66b1582885..f8dea38d4a2b832cdcc61882388795c4382135a2 100644
--- a/htdocs/translate.class.php
+++ b/htdocs/translate.class.php
@@ -163,7 +163,7 @@ class Translate {
 	 *  \brief      Load in a memory array, translation key-value for a particular file.
      *              If data for file already loaded, do nothing.
      * 				All data in translation array are stored in ISO-8859-1 format.
-     *  \param      domain      File name to load (.lang file)
+     *  \param      domain      File name to load (.lang file). Use @ before value if domain is in a module directory.
      *  \param      alt         Use alternate file even if file in target language is found
 	 *	\return		int			<0 if KO, >0 if OK
      *	\remarks	tab_loaded is completed with $domain key.