diff --git a/htdocs/commande/fiche.php b/htdocs/commande/fiche.php
index a8a22425698cc3471e1053881b7248092569a082..8164a3b5e973ffe87c2f05e047a03f6217e5b046 100644
--- a/htdocs/commande/fiche.php
+++ b/htdocs/commande/fiche.php
@@ -272,33 +272,35 @@ if ($_GET['action'] == 'create' && $user->rights->commande->creer)
 
 			print '<table class="border" width="100%">';
 
-			print '<tr><td>'.$langs->trans('Ref').' :</td><td>Provisoire</td>';
-			print '<td>'.$langs->trans('Comments').' :</td></tr>';
+			print '<tr><td>'.$langs->trans('Ref').'</td><td>Provisoire</td>';
+			print '<td>'.$langs->trans('Comments').'</td></tr>';
 
 			$nbrow=4;
 			if ($conf->projet->enabled) $nbrow++;
-			print '<tr><td>'.$langs->trans('Customer').' :</td><td>'.$soc->nom_url.'</td><td rowspan="'.$nbrow.'">';
-			print '<textarea name="note" wrap="soft" cols="50" rows="4"></textarea></td></tr>';
 
-			print '<tr><td>'.$langs->trans('Date').' :</td><td>';
+			print '<tr><td>'.$langs->trans('Customer').'</td><td>'.$soc->nom_url.'</td>';
+			print '<td rowspan="'.$nbrow.'" valign="top"><textarea name="note" wrap="soft" cols="50" rows="4"></textarea></td>';
+			print '</tr>';
+
+			print '<tr><td>'.$langs->trans('RefCdeClient').'</td><td>';
+			print '<input type="text" name="ref_client" value=""></td>';
+			print '</tr>';
+
+			print '<tr><td>'.$langs->trans('Date').'</td><td>';
 			$html->select_date();
 			print '</td></tr>';
 
 			if ($conf->projet->enabled)
 			{
-				print '<tr><td>'.$langs->trans('Project').' :</td><td>';
+				print '<tr><td>'.$langs->trans('Project').'</td><td>';
 				$html->select_projects($soc->id,'','projetid');
 				print '</td></tr>';
 			}
 
-			print '<tr><td>'.$langs->trans('Source').' :</td><td>';
+			print '<tr><td>'.$langs->trans('Source').'</td><td>';
 			$html->select_array('source_id',$new_commande->sources,2);
 			print '</td></tr>';
 
-			print '<tr><td>'.$langs->trans('RefCdeClient').' :</td><td>';
-			print '<input type="text" name="ref_client" value="">';
-			print '</td></tr>';
-
 			if ($propalid > 0)
 			{
 				$amount = ($obj->price);
@@ -321,10 +323,8 @@ if ($_GET['action'] == 'create' && $user->rights->commande->creer)
 				*/
 				$NBLINES=8;
 
-				print '<tr><td colspan="3">'.$langs->trans('Services').'/'.$langs->trans('Products').'</td></tr>';
 				print '<tr><td colspan="3">';
 
-
 				print '<table class="noborder">';
 				print '<tr><td>'.$langs->trans('ProductsAndServices').'</td><td>'.$langs->trans('Qty').'</td><td>'.$langs->trans('Discount').'</td></tr>';
 				for ($i = 1 ; $i <= $NBLINES ; $i++)
@@ -504,33 +504,56 @@ else
 			 *   Commande
 			 */
 			print '<table class="border" width="100%">';
+
+            // Ref
 			print '<tr><td width="15%">'.$langs->trans('Ref').'</td>';
 			print '<td colspan="2">'.$commande->ref.'</td>';
-			print '<td>'.$langs->trans('Source').' : ' . $commande->sources[$commande->source] ;
+			print '<td width="50%">'.$langs->trans('Source').' : ' . $commande->sources[$commande->source] ;
 			if ($commande->source == 0)
 			{
-				/* Propale */
+				// Si source = propal
 				$propal = new Propal($db);
 				$propal->fetch($commande->propale_id);
 				print ' -> <a href="'.DOL_URL_ROOT.'/comm/propal.php?propalid='.$propal->id.'">'.$propal->ref.'</a>';
 			}
 			print '</td></tr>';
 
+			// Soci�t�
 			print '<tr><td>'.$langs->trans('Customer').'</td>';
 			print '<td colspan="3">';
 			print '<a href="'.DOL_URL_ROOT.'/comm/fiche.php?socid='.$soc->id.'">'.$soc->nom.'</a></td>';
 			print '</tr>';
 
-			print '<tr><td>'.$langs->trans('Status').'</td>';
-			print '<td colspan="2">'.$commande->statuts[$commande->statut].'</td>';
-			$nbrow=6;
+			$nbrow=7;
 			if ($conf->projet->enabled) $nbrow++;
+
+			// Ref commande client
+			print '<tr><td>';
+            print '<table class="nobordernopadding" width="100%"><tr><td nowrap>';
+			print $langs->trans('RefCdeClient').'</td><td align="left">';
+            print '</td>';
+            if ($_GET['action'] != 'refcdeclient') print '<td align="right"><a href="'.$_SERVER['PHP_SELF'].'?action=refcdeclient&amp;id='.$commande->id.'">'.img_edit($langs->trans('Edit')).'</a></td>';
+            print '</tr></table>';
+            print '</td><td colspan="2">';
+			if ($user->rights->commande->creer && $_GET['action'] == 'refcdeclient')
+			{
+				print '<form action="fiche.php?id='.$id.'" method="post">';
+				print '<input type="hidden" name="action" value="set_ref_client">';
+				print '<input type="text" class="flat" size="20" name="ref_client" value="'.$commande->ref_client.'">';
+				print ' <input type="submit" class="button" value="'.$langs->trans('Modify').'">';
+				print '</form>';
+			}
+			else
+			{
+				print $commande->ref_client;
+			}
+			print '</td>';
 			print '<td rowspan="'.$nbrow.'" valign="top">'.$langs->trans('Note').' :<br>';
 			if ($commande->brouillon == 1 && $user->rights->commande->creer)
 			{
 				print '<form action="fiche.php?id='.$id.'" method="post">';
 				print '<input type="hidden" name="action" value="setnote">';
-				print '<textarea name="note" style="width:95%;height:80%">'.$commande->note.'</textarea><br>';
+				print '<textarea name="note" rows="5" style="width:95%;">'.$commande->note.'</textarea><br>';
 				print '<center><input type="submit" class="button" value="'.$langs->trans('Save').'"></center>';
 				print '</form>';
 			}
@@ -538,7 +561,12 @@ else
 			{
 				print nl2br($commande->note);
 			}
-			print '</td></tr>';
+			print '</td>';
+			print '</tr>';
+
+			print '<tr><td>'.$langs->trans('Status').'</td>';
+			print '<td colspan="2">'.$commande->statuts[$commande->statut].'</td>';
+			print '</tr>';
 
 			print '<tr><td>'.$langs->trans('Date').'</td>';
 			print '<td colspan="2">'.dolibarr_print_date($commande->date,'%A %d %B %Y').'</td>';
@@ -570,45 +598,41 @@ else
                 print '<tr><td height="10">&nbsp;</td><td colspan="2">&nbsp;</td></tr>';
             }
 
-
-
 			// Lignes de 3 colonnes
-			print '<tr><td>'.$langs->trans('RefCdeClient').' :</td><td align="left">';
-			if ($commande->brouillon == 1 && $user->rights->commande->creer)
-			{
-				print '<form action="fiche.php?id='.$id.'" method="post">';
-				print '<input type="hidden" name="action" value="set_ref_client">';
-				print '<input type="text" class="flat" size="25" name="ref_client" value="'.$commande->ref_client.'">';
-				print '</td><td><input type="submit" class="button" value="'.$langs->trans('Save').'">';
-				print '</form>';
-			}
-			else
-			{
-				print $commande->ref_client.'</td><td>&nbsp;';
-			}
-			print '</td></tr>';
-
-			print '<tr><td>'.$langs->trans('AmountHT').'</td>';
-			print '<td align="right"><b>'.price($commande->total_ht).'</b></td>';
-			print '<td>'.$langs->trans('Currency'.$conf->monnaie).'</td></tr>';
 
-			print '<tr><td>'.$langs->trans('GlobalDiscount').'</td><td align="right">';
-			if ($commande->brouillon == 1 && $user->rights->commande->creer)
+			print '<tr><td>';
+            print '<table class="nobordernopadding" width="100%"><tr><td>';
+			print $langs->trans('GlobalDiscount').'</td><td align="right">';
+            print '</td>';
+            if ($_GET['action'] != 'setdiscount') print '<td align="right"><a href="'.$_SERVER['PHP_SELF'].'?action=setdiscount&amp;id='.$commande->id.'">'.img_edit($langs->trans('Edit')).'</a></td>';
+            print '</tr></table>';
+            print '</td>';
+			if ($user->rights->commande->creer && $_GET['action'] == 'setdiscount')
 			{
+				print '<td align="right">';
 				print '<form action="fiche.php?id='.$id.'" method="post">';
 				print '<input type="hidden" name="action" value="setremise">';
 				print '<input type="text" class="flat" name="remise" size="3" value="'.$commande->remise_percent.'">%';
-				print '</td><td><input type="submit" class="button" value="'.$langs->trans('Save').'">';
+				print '</td><td><input type="submit" class="button" value="'.$langs->trans('Modify').'">';
 				print '</form>';
+				print '</td>';
 			}
 			else
 			{
-				print $commande->remise_percent.'%</td><td>&nbsp;';
+				print '<td align="right">'.$commande->remise_percent.'</td><td>%</td>';
 			}
-			print '</td></tr>';
+			print '</tr>';
+
+            // Total HT
+			print '<tr><td>'.$langs->trans('TotalHT').'</td>';
+			print '<td align="right"><b>'.price($commande->total_ht).'</b></td>';
+			print '<td>'.$langs->trans('Currency'.$conf->monnaie).'</td></tr>';
 
-			print '<tr><td>'.$langs->trans('VAT').'</td><td align="right">'.price($commande->total_tva).'</td>';
+			// Total TVA
+			print '<tr><td>'.$langs->trans('TotalVAT').'</td><td align="right">'.price($commande->total_tva).'</td>';
 			print '<td>'.$langs->trans('Currency'.$conf->monnaie).'</td></tr>';
+			
+			// Total TTC
 			print '<tr><td>'.$langs->trans('TotalTTC').'</td><td align="right">'.price($commande->total_ttc).'</td>';
 			print '<td>'.$langs->trans('Currency'.$conf->monnaie).'</td></tr>';
 
@@ -803,6 +827,7 @@ else
 			if ($user->societe_id == 0 && $commande->statut < 3 && $_GET['action'] == '')
 			{
 				print '<div class="tabsAction">';
+
 				if ($conf->expedition->enabled && $commande->statut > 0 && $commande->statut < 3 && $user->rights->expedition->creer)
 				{
 					print '<a class="butAction" href="'.DOL_URL_ROOT.'/expedition/commande.php?id='.$_GET['id'].'">'.$langs->trans('Send').'</a>';
diff --git a/htdocs/expedition/commande.php b/htdocs/expedition/commande.php
index b4199b5592dbe29913081dac1fa85d1305615cb8..697dcbfe16e76c436bbdd27e93e468e08698cfd6 100644
--- a/htdocs/expedition/commande.php
+++ b/htdocs/expedition/commande.php
@@ -126,33 +126,50 @@ if ($_GET["id"] > 0)
 
         // Onglet expedition
         print '<table class="border" width="100%">';
-        print '<tr><td width="20%">'.$langs->trans("Customer").'</td>';
-        print '<td width="30%">';
-        print '<b><a href="'.DOL_URL_ROOT.'/comm/fiche.php?socid='.$soc->id.'">'.$soc->nom.'</a></b></td>';
-
-        print '<td width="50%">';
-        print $commande->statuts[$commande->statut];
-        print "</td></tr>";
-
-        print '<tr><td width="20%">'.$langs->trans("Date").'</td>';
-        print '<td width="30%">'.strftime("%A %d %B %Y",$commande->date)."</td>\n";
-
-        print '<td width="50%">Source : ' . $commande->sources[$commande->source] ;
-        if ($commande->source == 0)
-        {
-            /* Propale */
-            $propal = new Propal($db);
-            $propal->fetch($commande->propale_id);
-            print ' -> <a href="'.DOL_URL_ROOT.'/comm/propal.php?propalid='.$propal->id.'">'.$propal->ref.'</a>';
-        }
-        print "</td></tr>";
-
-        if ($commande->note)
-        {
-            print '<tr><td>'.$langs->trans("Note").'</td></tr>';
-            print '<tr><td colspan="3">'.nl2br($commande->note)."</td></tr>";
-        }
 
+            // Ref
+			print '<tr><td width="15%">'.$langs->trans('Ref').'</td>';
+			print '<td colspan="2">'.$commande->ref.'</td>';
+			print '<td width="50%">'.$langs->trans('Source').' : ' . $commande->sources[$commande->source] ;
+			if ($commande->source == 0)
+			{
+				// Si source = propal
+				$propal = new Propal($db);
+				$propal->fetch($commande->propale_id);
+				print ' -> <a href="'.DOL_URL_ROOT.'/comm/propal.php?propalid='.$propal->id.'">'.$propal->ref.'</a>';
+			}
+			print '</td></tr>';
+
+			// Soci�t�
+			print '<tr><td>'.$langs->trans('Customer').'</td>';
+			print '<td colspan="3">';
+			print '<a href="'.DOL_URL_ROOT.'/comm/fiche.php?socid='.$soc->id.'">'.$soc->nom.'</a></td>';
+			print '</tr>';
+
+			$nbrow=3;
+
+			// Ref commande client
+			print '<tr><td>';
+            print '<table class="nobordernopadding" width="100%"><tr><td nowrap>';
+			print $langs->trans('RefCdeClient').'</td><td align="left">';
+            print '</td>';
+            print '</tr></table>';
+            print '</td><td colspan="2">';
+			print $commande->ref_client;
+			print '</td>';
+			print '<td rowspan="'.$nbrow.'" valign="top">'.$langs->trans('Note').' :<br>';
+			print nl2br($commande->note);
+			print '</td>';
+			print '</tr>';
+
+			print '<tr><td>'.$langs->trans('Status').'</td>';
+			print '<td colspan="2">'.$commande->statuts[$commande->statut].'</td>';
+			print '</tr>';
+
+			print '<tr><td>'.$langs->trans('Date').'</td>';
+			print '<td colspan="2">'.dolibarr_print_date($commande->date,'%A %d %B %Y').'</td>';
+			print '</tr>';
+        
         print '</table>';
 
         /**
diff --git a/htdocs/langs/en_US/admin.lang b/htdocs/langs/en_US/admin.lang
index f50e42ccf839d7138ba1301a5f948c3c0c1d4ae3..fe51fabfa50999b035b204cbfae09d9527dc10cc 100644
--- a/htdocs/langs/en_US/admin.lang
+++ b/htdocs/langs/en_US/admin.lang
@@ -137,10 +137,10 @@ Permission74=Delete members
 Permission75=Setup types and attributes for members
 Permission78=Read subscriptions
 Permission79=Create/modify subscriptions
-Permission81=Read orders
-Permission82=Create/modify orders
-Permission84=Activate orders
-Permission89=Disable orders
+Permission81=Read customers orders
+Permission82=Create/modify customers orders
+Permission84=Validate customers orders
+Permission89=Cancel customers orders
 Permission91=Read charges and vat
 Permission92=Create/modify charges and vat
 Permission93=Delete charges and vat
diff --git a/htdocs/langs/en_US/orders.lang b/htdocs/langs/en_US/orders.lang
index 428ba9e4891aa7cc2f12439dd32203fbd9c40d5f..31490c436847f5b37edbd98f3506aabf7b8598f3 100755
--- a/htdocs/langs/en_US/orders.lang
+++ b/htdocs/langs/en_US/orders.lang
@@ -49,6 +49,7 @@ ComptaCard=Accountancy card
 DraftOrders=Draft orders
 RelatedOrders=Related orders
 OnProcessOrders=On process orders
+RefCdeClient=Ref. customer order
 # Sources
 OrderSource0=Commercial proposal
 OrderSource1=Internet
diff --git a/htdocs/langs/fr_FR/admin.lang b/htdocs/langs/fr_FR/admin.lang
index 163a126e55e44bc5c272d4c88cf6b3df2ed3cebf..7d1ca51d9a4c9891e952091031953f5c026fada6 100644
--- a/htdocs/langs/fr_FR/admin.lang
+++ b/htdocs/langs/fr_FR/admin.lang
@@ -137,10 +137,10 @@ Permission74=Supprimer les adh
 Permission75=Configurer les types et caract�ristiques des adh�rents
 Permission78=Consulter les cotisations
 Permission79=Cr�er/modifier les cotisations
-Permission81=Consulter les commandes
-Permission82=Cr�er/modifier les commandes
-Permission84=Activer les commandes
-Permission89=D�sactiver les commandes
+Permission81=Consulter les commandes clients
+Permission82=Cr�er/modifier les commandes clients
+Permission84=Valider les commandes clients
+Permission89=Annuler les commandes clients
 Permission91=Consulter les charges et la TVA
 Permission92=Cr�er/modifier les charges et la TVA
 Permission93=Supprimer les charges et la TVA
diff --git a/htdocs/langs/fr_FR/orders.lang b/htdocs/langs/fr_FR/orders.lang
index d0a5f40f9d430e0b400ecca13d94e209e5e2bdb9..f94a75af314cffdd650e530e8e21b84c1f955f75 100755
--- a/htdocs/langs/fr_FR/orders.lang
+++ b/htdocs/langs/fr_FR/orders.lang
@@ -49,6 +49,7 @@ ComptaCard=Fiche compta
 DraftOrders=Commandes brouillons
 RelatedOrders=Commandes rattach�es
 OnProcessOrders=Commandes en cours de traitement
+RefCdeClient=Ref. commande client
 # Sources
 OrderSource0=Proposition commerciale
 OrderSource1=Internet