From 4a1dfa60a5e662dcc3c49808d75d0a36ee11d0c1 Mon Sep 17 00:00:00 2001
From: Laurent Destailleur <eldy@destailleur.fr>
Date: Tue, 30 Jun 2015 13:14:19 +0200
Subject: [PATCH] Uniformize code

---
 htdocs/comm/askpricesupplier/list.php      | 16 +++---
 htdocs/comm/list.php                       |  2 +-
 htdocs/comm/mailing/cibles.php             |  4 +-
 htdocs/comm/propal/list.php                |  7 +--
 htdocs/comm/prospect/list.php              | 11 ++--
 htdocs/commande/list.php                   | 41 +++++---------
 htdocs/compta/facture/fiche-rec.php        | 30 ++++++-----
 htdocs/contact/list.php                    |  2 +-
 htdocs/core/class/html.formother.class.php |  2 +-
 htdocs/core/lib/functions.lib.php          |  6 +--
 htdocs/expedition/list.php                 |  5 +-
 htdocs/expensereport/list.php              |  7 ++-
 htdocs/fichinter/list.php                  |  5 +-
 htdocs/fourn/commande/list.php             |  4 +-
 htdocs/fourn/facture/list.php              |  4 +-
 htdocs/fourn/list.php                      |  2 +-
 htdocs/holiday/list.php                    |  5 +-
 htdocs/product/list.php                    |  7 +--
 htdocs/product/stock/card.php              |  8 ++-
 htdocs/product/stock/list.php              | 63 ++++++++++++++++------
 htdocs/product/stock/mouvement.php         |  8 +--
 htdocs/projet/list.php                     |  4 +-
 htdocs/societe/list.php                    |  9 +++-
 htdocs/societe/rib.php                     |  2 +-
 htdocs/theme/eldy/style.css.php            |  4 +-
 htdocs/user/index.php                      |  2 +-
 26 files changed, 151 insertions(+), 109 deletions(-)

diff --git a/htdocs/comm/askpricesupplier/list.php b/htdocs/comm/askpricesupplier/list.php
index bce521489e0..2e78045b308 100644
--- a/htdocs/comm/askpricesupplier/list.php
+++ b/htdocs/comm/askpricesupplier/list.php
@@ -270,22 +270,22 @@ if ($result)
 
 	print '<tr class="liste_titre">';
 	print_liste_field_titre($langs->trans('Ref'),$_SERVER["PHP_SELF"],'p.ref','',$param,'',$sortfield,$sortorder);
-	print_liste_field_titre($langs->trans('Company'),$_SERVER["PHP_SELF"],'s.nom','',$param,'',$sortfield,$sortorder);	
+	print_liste_field_titre($langs->trans('Company'),$_SERVER["PHP_SELF"],'s.nom','',$param,'',$sortfield,$sortorder);
 	print_liste_field_titre($langs->trans('AskPriceSupplierDate'),$_SERVER["PHP_SELF"],'p.date_livraison','',$param, 'align="center"',$sortfield,$sortorder);
 	print_liste_field_titre($langs->trans('AmountHT'),$_SERVER["PHP_SELF"],'p.total_ht','',$param, 'align="right"',$sortfield,$sortorder);
 	print_liste_field_titre($langs->trans('Author'),$_SERVER["PHP_SELF"],'u.login','',$param,'align="center"',$sortfield,$sortorder);
 	print_liste_field_titre($langs->trans('Status'),$_SERVER["PHP_SELF"],'p.fk_statut','',$param,'align="right"',$sortfield,$sortorder);
-	print_liste_field_titre('');
+	print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 	print "</tr>\n";
 
 	print '<tr class="liste_titre">';
 	print '<td class="liste_titre">';
 	print '<input class="flat" size="6" type="text" name="search_ref" value="'.$search_ref.'">';
-	print '</td>';	
+	print '</td>';
 	print '<td class="liste_titre" align="left">';
 	print '<input class="flat" type="text" size="12" name="search_societe" value="'.$search_societe.'">';
 	print '</td>';
-	
+
 	// Date
 	print '<td class="liste_titre" colspan="1" align="center">';
 	//print $langs->trans('Month').': ';
@@ -294,7 +294,7 @@ if ($result)
 	$syear = $year;
 	$formother->select_year($syear,'year',1, 20, 5);
 	print '</td>';
-		
+
 	// Amount
 	print '<td class="liste_titre" align="right">';
 	print '<input class="flat" type="text" size="10" name="search_montant_ht" value="'.$search_montant_ht.'">';
@@ -353,7 +353,7 @@ if ($result)
 		print '</td></tr></table>';
 
 		print "</td>\n";
-		
+
 		$url = DOL_URL_ROOT.'/comm/card.php?socid='.$objp->rowid;
 
 		// Company
@@ -364,12 +364,12 @@ if ($result)
 		print '<td>';
 		print $companystatic->getNomUrl(1,'customer');
 		print '</td>';
-		
+
 		// Date askprice
 		print '<td align="center">';
 		print dol_print_date($db->jdate($objp->dp), 'day');
 		print "</td>\n";
-		
+
 		print '<td align="right">'.price($objp->total_ht)."</td>\n";
 
 		$userstatic->id=$objp->fk_user_author;
diff --git a/htdocs/comm/list.php b/htdocs/comm/list.php
index 43c2f4155fc..126ffc5f470 100644
--- a/htdocs/comm/list.php
+++ b/htdocs/comm/list.php
@@ -205,7 +205,7 @@ if ($result)
     $reshook=$hookmanager->executeHooks('printFieldListTitle',$parameters);    // Note that $action and $object may have been modified by hook
 	print $hookmanager->resPrint;
     print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"s.status","",$param,'align="center"',$sortfield,$sortorder);
-    print_liste_field_titre('');
+	print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 	print "</tr>\n";
 
 	print '<tr class="liste_titre">';
diff --git a/htdocs/comm/mailing/cibles.php b/htdocs/comm/mailing/cibles.php
index 6958821a05f..5e2aa787dba 100644
--- a/htdocs/comm/mailing/cibles.php
+++ b/htdocs/comm/mailing/cibles.php
@@ -420,7 +420,7 @@ if ($object->fetch($id) >= 0)
 		}
 
 		print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"mc.statut",$param,'','align="right"',$sortfield,$sortorder);
-		print_liste_field_titre('');
+		print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 
 		print '</tr>';
 
@@ -459,7 +459,7 @@ if ($object->fetch($id) >= 0)
 		print '<td class="liste_titre" align="right">';
 		print '<input type="image" class="liste_titre" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" name="button_search" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'">';
 		print '&nbsp; ';
-		print '<input type="image" class="liste_titre" src="'.img_picto($langs->trans("Search"),'searchclear.png','','',1).'" name="button_removefilter" value="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'" title="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'">';
+		print '<input type="image" class="liste_titre" src="'.img_picto($langs->trans("Reset"),'searchclear.png','','',1).'" name="button_removefilter" value="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'" title="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'">';
 		print '</td>';
 		print '</tr>';
 
diff --git a/htdocs/comm/propal/list.php b/htdocs/comm/propal/list.php
index c8e96919f84..36484d718c7 100644
--- a/htdocs/comm/propal/list.php
+++ b/htdocs/comm/propal/list.php
@@ -9,8 +9,8 @@
  * Copyright (C) 2010-2011 Philippe Grand        <philippe.grand@atoo-net.com>
  * Copyright (C) 2012      Christophe Battarel   <christophe.battarel@altairis.fr>
  * Copyright (C) 2013      Cédric Salvador       <csalvador@gpcsolutions.fr>
- * Copyright (C) 2015       Jean-François Ferry     <jfefe@aternatik.fr>
-*
+ * Copyright (C) 2015      Jean-François Ferry     <jfefe@aternatik.fr>
+ *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 3 of the License, or
@@ -255,6 +255,7 @@ if ($result)
 	if ($search_montant_ht)  $param.='&search_montant_ht='.$search_montant_ht;
 	if ($search_author)  	 $param.='&search_author='.$search_author;
 	if ($search_town)		 $param.='&search_town='.$search_town;
+
 	print_barre_liste($langs->trans('ListOfProposals').' '.($socid?'- '.$soc->name:''), $page, $_SERVER["PHP_SELF"],$param,$sortfield,$sortorder,'',$num,$nbtotalofrecords,'title_commercial.png');
 
 	// Lignes des champs de filtre
@@ -310,7 +311,7 @@ if ($result)
 	print_liste_field_titre($langs->trans('AmountHT'),$_SERVER["PHP_SELF"],'p.total_ht','',$param, 'align="right"',$sortfield,$sortorder);
 	print_liste_field_titre($langs->trans('Author'),$_SERVER["PHP_SELF"],'u.login','',$param,'align="center"',$sortfield,$sortorder);
 	print_liste_field_titre($langs->trans('Status'),$_SERVER["PHP_SELF"],'p.fk_statut','',$param,'align="right"',$sortfield,$sortorder);
-	print_liste_field_titre('');
+	print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 	print "</tr>\n";
 
 	print '<tr class="liste_titre">';
diff --git a/htdocs/comm/prospect/list.php b/htdocs/comm/prospect/list.php
index 5f841b609da..70847f479c3 100644
--- a/htdocs/comm/prospect/list.php
+++ b/htdocs/comm/prospect/list.php
@@ -351,9 +351,8 @@ if ($resql)
     $reshook=$hookmanager->executeHooks('printFieldListTitle',$parameters);    // Note that $action and $object may have been modified by hook
 	print $hookmanager->resPrint;
 
-	print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"s.status","",$param,'align="center"',$sortfield,$sortorder);
-    print_liste_field_titre('');
-
+	print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"s.status","",$param,'align="right"',$sortfield,$sortorder);
+    print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 	print "</tr>\n";
 
 	print '<tr class="liste_titre">';
@@ -416,7 +415,7 @@ if ($resql)
 	$reshook=$hookmanager->executeHooks('printFieldListSearch',$parameters);    // Note that $action and $object may have been modified by hook
 	print $hookmanager->resPrint;
 
-    print '<td class="liste_titre" align="center">';
+    print '<td class="liste_titre" align="right">';
     print $form->selectarray('search_status', array('0'=>$langs->trans('ActivityCeased'),'1'=>$langs->trans('InActivity')),$search_status);
     print '</td>';
 
@@ -474,8 +473,8 @@ if ($resql)
         $reshook=$hookmanager->executeHooks('printFieldListValue',$parameters);    // Note that $action and $object may have been modified by hook
 	    print $hookmanager->resPrint;
 
-		print '<td align="center">';
-		print $prospectstatic->LibStatut($prospectstatic->status,3);
+		print '<td align="right">';
+		print $prospectstatic->LibStatut($prospectstatic->status,5);
         print '</td>';
 
         print '<td></td>';
diff --git a/htdocs/commande/list.php b/htdocs/commande/list.php
index 351a4171dd6..1b3f8432b52 100644
--- a/htdocs/commande/list.php
+++ b/htdocs/commande/list.php
@@ -130,13 +130,8 @@ $sql.= ' WHERE c.fk_soc = s.rowid';
 $sql.= ' AND c.entity IN ('.getEntity('commande', 1).')';
 if ($socid)	$sql.= ' AND s.rowid = '.$socid;
 if (!$user->rights->societe->client->voir && !$socid) $sql.= " AND s.rowid = sc.fk_soc AND sc.fk_user = " .$user->id;
-if ($search_ref) {
-	$sql .= natural_search('c.ref', $search_ref);
-}
-if ($sall)
-{
-	$sql .= natural_search(array('c.ref', 'c.note_private'), $sall);
-}
+if ($search_ref) $sql .= natural_search('c.ref', $search_ref);
+if ($sall) $sql .= natural_search(array('c.ref', 'c.note_private'), $sall);
 if ($viewstatut <> '')
 {
 	if ($viewstatut < 4 && $viewstatut > -3)
@@ -190,24 +185,12 @@ else if ($deliveryyear > 0)
 {
     $sql.= " AND c.date_livraison BETWEEN '".$db->idate(dol_get_first_day($deliveryyear,1,false))."' AND '".$db->idate(dol_get_last_day($deliveryyear,12,false))."'";
 }
-if (!empty($search_company))
-{
-	$sql .= natural_search('s.nom', $search_company);
-}
-if (!empty($search_ref_customer))
-{
-	$sql.= ' AND c.ref_client LIKE \'%'.$db->escape($search_ref_customer).'%\'';
-}
+if (!empty($search_company)) $sql .= natural_search('s.nom', $search_company);
+if (!empty($search_ref_customer)) $sql.= natural_search('c.ref_client', $search_ref_customer);
 if ($search_sale > 0) $sql.= " AND s.rowid = sc.fk_soc AND sc.fk_user = " .$search_sale;
-if ($search_user > 0)
-{
-    $sql.= " AND ec.fk_c_type_contact = tc.rowid AND tc.element='commande' AND tc.source='internal' AND ec.element_id = c.rowid AND ec.fk_socpeople = ".$search_user;
-}
-if ($search_total_ht != '')
-{
-	$sql.= natural_search('c.total_ht', $search_total_ht, 1);
-}
-$sql.= ' ORDER BY '.$sortfield.' '.$sortorder;
+if ($search_user > 0) $sql.= " AND ec.fk_c_type_contact = tc.rowid AND tc.element='commande' AND tc.source='internal' AND ec.element_id = c.rowid AND ec.fk_socpeople = ".$search_user;
+if ($search_total_ht != '') $sql.= natural_search('c.total_ht', $search_total_ht, 1);
+$sql.= $db->order($sortfield,$sortorder);
 
 $nbtotalofrecords = 0;
 if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST))
@@ -216,7 +199,6 @@ if (empty($conf->global->MAIN_DISABLE_FULL_SCANLIST))
 	$nbtotalofrecords = $db->num_rows($result);
 }
 
-
 $sql.= $db->plimit($limit + 1,$offset);
 
 //print $sql;
@@ -291,7 +273,7 @@ if ($resql)
 	if (! empty($moreforfilter))
 	{
 	    print '<tr class="liste_titre">';
-	    print '<td class="liste_titre" colspan="9">';
+	    print '<td class="liste_titre" colspan="10">';
 	    print $moreforfilter;
 	    print '</td></tr>';
 	}
@@ -304,6 +286,7 @@ if ($resql)
 	print_liste_field_titre($langs->trans('DeliveryDate'),$_SERVER["PHP_SELF"],'c.date_livraison','',$param, 'align="center"',$sortfield,$sortorder);
 	print_liste_field_titre($langs->trans('AmountHT'),$_SERVER["PHP_SELF"],'c.total_ht','',$param, 'align="right"',$sortfield,$sortorder);
 	print_liste_field_titre($langs->trans('Status'),$_SERVER["PHP_SELF"],'c.fk_statut','',$param,'align="right"',$sortfield,$sortorder);
+	print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 	print '</tr>';
 
 	print '<tr class="liste_titre">';
@@ -328,6 +311,7 @@ if ($resql)
 	print '<td class="liste_titre" align="right">';
 	print '<input class="flat" type="text" size="6" name="search_total_ht" value="'.$search_total_ht.'">';
 	print '</td>';
+	print '<td></td>';
 	print '<td class="liste_titre" align="right"><input type="image" class="liste_titre" name="button_search" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'">';
 	print '<input type="image" class="liste_titre" name="button_removefilter" src="'.img_picto($langs->trans("Search"),'searchclear.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'" title="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'">';
 	print "</td></tr>\n";
@@ -493,6 +477,8 @@ if ($resql)
 		// Statut
 		print '<td align="right" class="nowrap">'.$generic_commande->LibStatut($objp->fk_statut,$objp->facturee,5).'</td>';
 
+		print '<td></td>';
+
 		print '</tr>';
 
 		$total+=$objp->total_ht;
@@ -507,7 +493,8 @@ if ($resql)
 		print '<td class="nowrap" colspan="5">'.$langs->trans('TotalHT').'</td>';
 		// Total HT
 		print '<td align="right" class="nowrap">'.price($total).'</td>';
-		print '<td class="nowrap">&nbsp;</td>';
+		print '<td></td>';
+		print '<td></td>';
 		print '</tr>';
 	}
 
diff --git a/htdocs/compta/facture/fiche-rec.php b/htdocs/compta/facture/fiche-rec.php
index bcb7d44559c..aab2e0b18d5 100644
--- a/htdocs/compta/facture/fiche-rec.php
+++ b/htdocs/compta/facture/fiche-rec.php
@@ -1,6 +1,6 @@
 <?php
 /* Copyright (C) 2002-2003 Rodolphe Quiedeville <rodolphe@quiedeville.org>
- * Copyright (C) 2004-2014 Laurent Destailleur  <eldy@users.sourceforge.net>
+ * Copyright (C) 2004-2015 Laurent Destailleur  <eldy@users.sourceforge.net>
  * Copyright (C) 2005-2012 Regis Houssin        <regis.houssin@capnetworks.com>
  * Copyright (C) 2013      Florian Henry	    <florian.henry@open-concept.pro>
  * Copyright (C) 2013      Juanjo Menent	    <jmenent@2byte.es>
@@ -129,7 +129,7 @@ if ($action == 'create')
 		print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
 		print '<input type="hidden" name="action" value="add">';
 		print '<input type="hidden" name="facid" value="'.$object->id.'">';
-		
+
 		dol_fiche_head();
 
 		$rowspan=4;
@@ -202,7 +202,7 @@ if ($action == 'create')
 		$sql = 'SELECT l.fk_product, l.product_type, l.label as custom_label, l.description, l.qty, l.rowid, l.tva_tx,';
 		$sql.= ' l.fk_remise_except,';
 		$sql.= ' l.remise_percent, l.subprice, l.info_bits,';
-		$sql.= ' l.total_ht, l.total_tva, l.total_ttc,';
+		$sql.= ' l.total_ht, l.total_tva as total_vat, l.total_ttc,';
 		$sql.= ' l.date_start,';
 		$sql.= ' l.date_end,';
 		$sql.= ' l.product_type,';
@@ -220,7 +220,7 @@ if ($action == 'create')
 			$num = $db->num_rows($result);
 			$i = 0; $total = 0;
 
-			echo '<table class="notopnoleftnoright" width="100%">';
+			echo '<table class="noborder" width="100%">';
 			if ($num)
 			{
 				print '<tr class="liste_titre">';
@@ -572,7 +572,7 @@ else
 		/*
 		 *  List mode
 		 */
-		$sql = "SELECT s.nom as name, s.rowid as socid, f.titre, f.total, f.rowid as facid";
+		$sql = "SELECT s.nom as name, s.rowid as socid, f.rowid as facid, f.titre, f.total, f.tva as total_vat, f.total_ttc";
 		$sql.= " FROM ".MAIN_DB_PREFIX."societe as s,".MAIN_DB_PREFIX."facture_rec as f";
 		$sql.= " WHERE f.fk_soc = s.rowid";
 		$sql.= " AND f.entity = ".$conf->entity;
@@ -594,8 +594,10 @@ else
 			print '<tr class="liste_titre">';
 			print_liste_field_titre($langs->trans("Ref"));
 			print_liste_field_titre($langs->trans("Company"),$_SERVER['PHP_SELF'],"s.nom","","&socid=$socid","",$sortfiled,$sortorder);
-			print_liste_field_titre($langs->trans("Amount"),'','','','','align="right"');
-			print_liste_field_titre('');
+			print_liste_field_titre($langs->trans("AmountHT"),'','','','','align="right"');
+			print_liste_field_titre($langs->trans("AmountVAT"),'','','','','align="right"');
+			print_liste_field_titre($langs->trans("AmountTTC"),'','','','','align="right"');
+			print_liste_field_titre('');		// Field may contains ling text
 			print "</tr>\n";
 
 			if ($num > 0)
@@ -616,19 +618,21 @@ else
 					print '<td>'.$companystatic->getNomUrl(1,'customer').'</td>';
 
 					print '<td align="right">'.price($objp->total).'</td>'."\n";
+					print '<td align="right">'.price($objp->total_vat).'</td>'."\n";
+					print '<td align="right">'.price($objp->total_ttc).'</td>'."\n";
 
-					echo '<td align="center">';
-
+					print '<td align="center">';
 					if ($user->rights->facture->creer)
 					{
-                        echo '<a href="'.DOL_URL_ROOT.'/compta/facture.php?action=create&amp;socid='.$objp->socid.'&amp;fac_rec='.$objp->facid.'">';
-                        echo  $langs->trans("CreateBill"),'</a>';
+                        print '<a href="'.DOL_URL_ROOT.'/compta/facture.php?action=create&amp;socid='.$objp->socid.'&amp;fac_rec='.$objp->facid.'">';
+                        print $langs->trans("CreateBill").'</a>';
 					}
 					else
 					{
-					    echo "&nbsp;";
+					    print "&nbsp;";
 					}
-					echo "</td></tr>\n";
+					print "</td>";
+					print "</tr>\n";
 					$i++;
 				}
 			}
diff --git a/htdocs/contact/list.php b/htdocs/contact/list.php
index a564bafc4a9..c6ac982e348 100644
--- a/htdocs/contact/list.php
+++ b/htdocs/contact/list.php
@@ -311,7 +311,7 @@ if ($result)
     print_liste_field_titre($langs->trans("DateModificationShort"),$_SERVER["PHP_SELF"],"p.tms", $begin, $param, 'align="center"', $sortfield,$sortorder);
     print_liste_field_titre($langs->trans("ContactVisibility"),$_SERVER["PHP_SELF"],"p.priv", $begin, $param, 'align="center"', $sortfield,$sortorder);
     print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"p.statut", $begin, $param, 'align="center"', $sortfield,$sortorder);
-    print_liste_field_titre('');
+    print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
     print "</tr>\n";
 
     // Lines for filter fields
diff --git a/htdocs/core/class/html.formother.class.php b/htdocs/core/class/html.formother.class.php
index 7f0e27ac27d..74a2440ca1c 100644
--- a/htdocs/core/class/html.formother.class.php
+++ b/htdocs/core/class/html.formother.class.php
@@ -876,7 +876,7 @@ class FormOther
         $min_year = $currentyear-$min_year;
         if(empty($selected) && empty($useempty)) $selected = $currentyear;
 
-        $out.= '<select class="flat" id="' . $htmlname . '" name="' . $htmlname . '"'.$option.' >';
+        $out.= '<select class="flat" placeholder="aa" id="' . $htmlname . '" name="' . $htmlname . '"'.$option.' >';
         if($useempty)
         {
         	$selected_html='';
diff --git a/htdocs/core/lib/functions.lib.php b/htdocs/core/lib/functions.lib.php
index ff3c968a1d6..0e86a1b6163 100644
--- a/htdocs/core/lib/functions.lib.php
+++ b/htdocs/core/lib/functions.lib.php
@@ -2639,7 +2639,7 @@ function dol_print_error_email($prefixcode)
  *	@param  string	$td          Options of attribute td ("" by defaut, example: 'align="center"')
  *	@param  string	$sortfield   Current field used to sort
  *	@param  string	$sortorder   Current sort order
- *  @param	string	$prefix		 Prefix for css
+ *  @param	string	$prefix		 Prefix for css. Use space after prefix to add your own CSS tag.
  *	@return	void
  */
 function print_liste_field_titre($name, $file="", $field="", $begin="", $moreparam="", $td="", $sortfield="", $sortorder="", $prefix="")
@@ -2659,7 +2659,7 @@ function print_liste_field_titre($name, $file="", $field="", $begin="", $morepar
  *	@param  string	$moreattrib  Add more attributes on th ("" by defaut)
  *	@param  string	$sortfield   Current field used to sort
  *	@param  string	$sortorder   Current sort order
- *  @param	string	$prefix		 Prefix for css
+ *  @param	string	$prefix		 Prefix for css. Use space after prefix to add your own CSS tag.
  *	@return	string
  */
 function getTitleFieldOfList($name, $thead=0, $file="", $field="", $begin="", $moreparam="", $moreattrib="", $sortfield="", $sortorder="", $prefix="")
@@ -2675,7 +2675,7 @@ function getTitleFieldOfList($name, $thead=0, $file="", $field="", $begin="", $m
 
 	// If field is used as sort criteria we use a specific class
 	// Example if (sortfield,field)=("nom","xxx.nom") or (sortfield,field)=("nom","nom")
-	if ($field && ($sortfield == $field || $sortfield == preg_replace("/^[^\.]+\./","",$field))) $out.= '<'.$tag.' class="liste_titre_sel" '. $moreattrib.'>';
+	if ($field && ($sortfield == $field || $sortfield == preg_replace("/^[^\.]+\./","",$field))) $out.= '<'.$tag.' class="'.$prefix.'liste_titre_sel" '. $moreattrib.'>';
 	else $out.= '<'.$tag.' class="'.$prefix.'liste_titre" '. $moreattrib.'>';
 
 	if (! empty($conf->dol_optimize_smallscreen) && empty($thead) && $field)    // If this is a sort field
diff --git a/htdocs/expedition/list.php b/htdocs/expedition/list.php
index 45f59975ee0..aa629955f53 100644
--- a/htdocs/expedition/list.php
+++ b/htdocs/expedition/list.php
@@ -133,7 +133,7 @@ if ($resql)
     	print_liste_field_titre($langs->trans("DateReceived"), $_SERVER["PHP_SELF"],"l.date_delivery","",$param, 'align="center"',$sortfield,$sortorder);
 	}
 	print_liste_field_titre($langs->trans("Status"), $_SERVER["PHP_SELF"],"e.fk_statut","",$param,'align="right"',$sortfield,$sortorder);
-	print_liste_field_titre('');
+	print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 	print "</tr>\n";
 
 	// Lignes des champs de filtre
@@ -158,7 +158,8 @@ if ($resql)
 	// Status
 	print '<td></td>';
 	// Search
-	print '<td class="liste_titre" align="right"><input type="image" class="liste_titre" name="button_search" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'">';
+	print '<td class="liste_titre" align="right">';
+	print '<input type="image" class="liste_titre" name="button_search" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'">';
 	print '<input type="image" class="liste_titre" name="button_removefilter" src="'.img_picto($langs->trans("Search"),'searchclear.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'" title="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'">';
     print '</td>';
 
diff --git a/htdocs/expensereport/list.php b/htdocs/expensereport/list.php
index c0b30b6c873..ef7b8d5311a 100644
--- a/htdocs/expensereport/list.php
+++ b/htdocs/expensereport/list.php
@@ -191,7 +191,7 @@ if ($resql)
 	print_liste_field_titre($langs->trans("TotalVAT"),$_SERVER["PHP_SELF"],"d.total_tva","",$param,'align="right"',$sortfield,$sortorder);
 	print_liste_field_titre($langs->trans("TotalTTC"),$_SERVER["PHP_SELF"],"d.total_ttc","",$param,'align="right"',$sortfield,$sortorder);
 	print_liste_field_titre($langs->trans("Statut"),$_SERVER["PHP_SELF"],"","",$param,'align="right"',$sortfield,$sortorder);
-	print_liste_field_titre('');
+	print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 	print "</tr>\n";
 
 	// Filters
@@ -263,10 +263,13 @@ if ($resql)
 			print '<td align="right">'.price($objp->total_ttc).'</td>';
 
 			$expensereporttmp->status=$objp->status;
-			print '<td align="right" colspan="2">';
+			print '<td align="right">';
 			//print $objp->status;
 			print $expensereporttmp->getLibStatut(5);
 			print '</td>';
+
+			print '<td></td>';
+
 			print "</tr>\n";
 
 			$total_total_ht = $total_total_ht + $objp->total_ht;
diff --git a/htdocs/fichinter/list.php b/htdocs/fichinter/list.php
index 367af084cde..0e9a5a8c4e0 100644
--- a/htdocs/fichinter/list.php
+++ b/htdocs/fichinter/list.php
@@ -145,7 +145,7 @@ if ($result)
 		print_liste_field_titre($langs->trans("Duration"),$_SERVER["PHP_SELF"],"fd.duree","",$urlparam,'align="right"',$sortfield,$sortorder);
 	}
 	print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"f.fk_statut","",$urlparam,'align="right"',$sortfield,$sortorder);
-	print_liste_field_titre('');
+	print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 	print "</tr>\n";
 
 	print '<tr class="liste_titre">';
@@ -224,6 +224,7 @@ else
 	dol_print_error($db);
 }
 
-$db->close();
 
 llxFooter();
+
+$db->close();
\ No newline at end of file
diff --git a/htdocs/fourn/commande/list.php b/htdocs/fourn/commande/list.php
index d73fa983e1c..c21830e66e8 100644
--- a/htdocs/fourn/commande/list.php
+++ b/htdocs/fourn/commande/list.php
@@ -1,6 +1,6 @@
 <?php
 /* Copyright (C) 2001-2006 Rodolphe Quiedeville <rodolphe@quiedeville.org>
- * Copyright (C) 2004-2014 Laurent Destailleur  <eldy@users.sourceforge.net>
+ * Copyright (C) 2004-2015 Laurent Destailleur  <eldy@users.sourceforge.net>
  * Copyright (C) 2005-2012 Regis Houssin        <regis.houssin@capnetworks.com>
  * Copyright (C) 2013      Cédric Salvador      <csalvador@gpcsolutions.fr>
  * Copyright (C) 2014      Marcos García        <marcosgdf@gmail.com>
@@ -200,7 +200,7 @@ if ($resql)
 	print_liste_field_titre($langs->trans("OrderDate"),$_SERVER["PHP_SELF"],"dc","",$param,'align="center"',$sortfield,$sortorder);
 	print_liste_field_titre($langs->trans('DateDeliveryPlanned'),$_SERVER["PHP_SELF"],'cf.date_livraison','',$param, 'align="right"',$sortfield,$sortorder);
 	print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"cf.fk_statut","",$param,'align="right"',$sortfield,$sortorder);
-	print_liste_field_titre('');
+	print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 	print "</tr>\n";
 
 	print '<tr class="liste_titre">';
diff --git a/htdocs/fourn/facture/list.php b/htdocs/fourn/facture/list.php
index 5fe72b44328..d93f1c4beea 100644
--- a/htdocs/fourn/facture/list.php
+++ b/htdocs/fourn/facture/list.php
@@ -9,7 +9,7 @@
  * Copyright (C) 2015	   juanjo Menent		<jmenent@2byte.es>
  * Copyright (C) 2015 	   Abbes Bahfir 	<bafbes@gmail.com>
  * Copyright (C) 2015	   Ferran Marcet		<fmarcet@2byte.es>
- * 
+ *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
  * the Free Software Foundation; either version 3 of the License, or
@@ -264,7 +264,7 @@ if ($resql)
 	print_liste_field_titre($langs->trans("AmountHT"),$_SERVER["PHP_SELF"],"fac.total_ht","",$param,'align="right"',$sortfield,$sortorder);
 	print_liste_field_titre($langs->trans("AmountTTC"),$_SERVER["PHP_SELF"],"fac.total_ttc","",$param,'align="right"',$sortfield,$sortorder);
 	print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"fk_statut,paye","",$param,'align="right"',$sortfield,$sortorder);
-	print_liste_field_titre('');
+	print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 	print "</tr>\n";
 
 	// Line for filters
diff --git a/htdocs/fourn/list.php b/htdocs/fourn/list.php
index 692671fba31..3333ffefba2 100644
--- a/htdocs/fourn/list.php
+++ b/htdocs/fourn/list.php
@@ -202,7 +202,7 @@ if ($resql)
 	print $hookmanager->resPrint;
 
     print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"s.status","",$param,'align="center"',$sortfield,$sortorder);
-    print_liste_field_titre('');
+    print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 	print "</tr>\n";
 
 	print '<tr class="liste_titre">';
diff --git a/htdocs/holiday/list.php b/htdocs/holiday/list.php
index 8e2e04019ce..f5d67b13517 100644
--- a/htdocs/holiday/list.php
+++ b/htdocs/holiday/list.php
@@ -276,7 +276,7 @@ print_liste_field_titre($langs->trans("Duration"),$_SERVER["PHP_SELF"],'','','',
 print_liste_field_titre($langs->trans("DateDebCP"),$_SERVER["PHP_SELF"],"cp.date_debut","",'','align="center"',$sortfield,$sortorder);
 print_liste_field_titre($langs->trans("DateFinCP"),$_SERVER["PHP_SELF"],"cp.date_fin","",'','align="center"',$sortfield,$sortorder);
 print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"cp.statut","",'','align="center"',$sortfield,$sortorder);
-print_liste_field_titre('');
+print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 print "</tr>\n";
 
 // FILTRES
@@ -395,7 +395,8 @@ if (! empty($holiday->holiday))
 		print '</td>';
 		print '<td align="center">'.dol_print_date($infos_CP['date_debut'],'day').'</td>';
 		print '<td align="center">'.dol_print_date($infos_CP['date_fin'],'day').'</td>';
-		print '<td align="right" colspan="2">'.$holidaystatic->LibStatut($infos_CP['statut'],5).'</td>';
+		print '<td align="right">'.$holidaystatic->LibStatut($infos_CP['statut'],5).'</td>';
+		print '<td></td>';
 		print '</tr>'."\n";
 
 	}
diff --git a/htdocs/product/list.php b/htdocs/product/list.php
index c7e0da02de3..77e8373d2a7 100644
--- a/htdocs/product/list.php
+++ b/htdocs/product/list.php
@@ -324,7 +324,7 @@ else
     		if (! empty($conf->stock->enabled) && $user->rights->stock->lire && $type != 1) print '<td class="liste_titre" align="right">'.$langs->trans("PhysicalStock").'</td>';
     		print_liste_field_titre($langs->trans("Sell"), $_SERVER["PHP_SELF"], "p.tosell",$param,"",'align="center"',$sortfield,$sortorder);
             print_liste_field_titre($langs->trans("Buy"), $_SERVER["PHP_SELF"], "p.tobuy",$param,"",'align="center"',$sortfield,$sortorder);
-            print_liste_field_titre('');
+            print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 			print "</tr>\n";
 
     		// Lignes des champs de filtre
@@ -381,11 +381,11 @@ else
     			print '</td>';
     		}
 
-    		print '<td align="center">';
+    		print '<td class="liste_titre" align="center">';
             print $form->selectarray('tosell', array('0'=>$langs->trans('ProductStatusNotOnSellShort'),'1'=>$langs->trans('ProductStatusOnSellShort')),$tosell,1);
             print '</td >';
 
-            print '<td align="center">';
+            print '<td class="liste_titre" align="center">';
             print $form->selectarray('tobuy', array('0'=>$langs->trans('ProductStatusNotOnBuyShort'),'1'=>$langs->trans('ProductStatusOnBuyShort')),$tobuy,1);
             print '</td>';
 
@@ -393,6 +393,7 @@ else
     		print '<input type="image" class="liste_titre" name="button_search" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'">';
     		print '<input type="image" class="liste_titre" name="button_removefilter" src="'.img_picto($langs->trans("RemoveFilter"),'searchclear.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'" title="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'">';
     		print '</td>';
+
     		print '</tr>';
 
 
diff --git a/htdocs/product/stock/card.php b/htdocs/product/stock/card.php
index df4c8b9d054..22ed390bc8f 100644
--- a/htdocs/product/stock/card.php
+++ b/htdocs/product/stock/card.php
@@ -518,6 +518,10 @@ else
 			print '<input type="hidden" name="action" value="update">';
 			print '<input type="hidden" name="id" value="'.$object->id.'">';
 
+			$head = stock_prepare_head($object);
+
+			dol_fiche_head($head, 'card', $langs->trans("Warehouse"), 0, 'stock');
+
 			print '<table class="border" width="100%">';
 
 			// Ref
@@ -559,7 +563,9 @@ else
 
 			print '</table>';
 
-			print '<br><div class="center">';
+			dol_fiche_end();
+
+			print '<div class="center">';
 			print '<input type="submit" class="button" value="'.$langs->trans("Save").'">';
 			print '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
 			print '<input type="submit" class="button" name="cancel" value="'.$langs->trans("Cancel").'">';
diff --git a/htdocs/product/stock/list.php b/htdocs/product/stock/list.php
index 225a33a9483..2c48b4587a0 100644
--- a/htdocs/product/stock/list.php
+++ b/htdocs/product/stock/list.php
@@ -31,9 +31,10 @@ $langs->load("stocks");
 // Security check
 $result=restrictedArea($user,'stock');
 
-$sref=GETPOST("sref","alpha");
-$snom=GETPOST("snom","alpha");
+$search_ref=GETPOST("sref","alpha")?GETPOST("sref","alpha"):GETPOST("search_ref","alpha");
+$search_label=GETPOST("snom","alpha")?GETPOST("snom","alpha"):GETPOST("search_label","alpha");
 $sall=GETPOST("sall","alpha");
+$search_status=GETPOST("search_status","int");
 
 $sortfield = GETPOST("sortfield");
 $sortorder = GETPOST("sortorder");
@@ -52,6 +53,7 @@ $year = strftime("%Y",time());
  */
 
 $form=new Form($db);
+$warehouse=new Entrepot($db);
 
 $sql = "SELECT e.rowid, e.label as ref, e.statut, e.lieu, e.address, e.zip, e.town, e.fk_pays,";
 $sql.= " SUM(p.pmp * ps.reel) as estimatedvalue, SUM(p.price * ps.reel) as sellvalue";
@@ -59,22 +61,14 @@ $sql.= " FROM ".MAIN_DB_PREFIX."entrepot as e";
 $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."product_stock as ps ON e.rowid = ps.fk_entrepot";
 $sql.= " LEFT JOIN ".MAIN_DB_PREFIX."product as p ON ps.fk_product = p.rowid";
 $sql.= " WHERE e.entity IN (".getEntity('stock', 1).")";
-if ($sref)
-{
-    $sql.= " AND e.label LIKE '%".$db->escape($sref)."%'";
-}
-if ($sall)
-{
-    $sql.= " AND (e.label LIKE '%".$db->escape($sall)."%'";
-    $sql.= " OR e.description LIKE '%".$db->escape($sall)."%'";
-    $sql.= " OR e.lieu LIKE '%".$db->escape($sall)."%'";
-    $sql.= " OR e.address LIKE '%".$db->escape($sall)."%'";
-    $sql.= " OR e.town LIKE '%".$db->escape($sall)."%')";
-}
+if ($search_ref) $sql.= natural_search("e.label", $search_ref);			// ref
+if ($search_label) $sql.= natural_search("e.lieu", $search_label);		// label
+if ($search_status != '' && $search_status >= 0) $sql.= " AND e.statut = ".$search_status;
+if ($sall) $sql.= natural_search(array('e.label','e.description','e.lieu','e.address','e.town'), $sall);
 $sql.= " GROUP BY e.rowid, e.label, e.statut, e.lieu, e.address, e.zip, e.town, e.fk_pays";
 $sql.= $db->order($sortfield,$sortorder);
 $sql.= $db->plimit($limit+1, $offset);
-
+print $sql;
 $result = $db->query($sql);
 if ($result)
 {
@@ -87,6 +81,12 @@ if ($result)
 
 	print_barre_liste($langs->trans("ListOfWarehouses"), $page, $_SERVER["PHP_SELF"], "", $sortfield, $sortorder,'',$num);
 
+	print '<form action="'.$_SERVER["PHP_SELF"].'" method="post" name="formulaire">';
+	print '<input type="hidden" name="token" value="'.$_SESSION['newtoken'].'">';
+	print '<input type="hidden" name="action" value="list">';
+	print '<input type="hidden" name="sortfield" value="'.$sortfield.'">';
+	print '<input type="hidden" name="sortorder" value="'.$sortorder.'">';
+
 	print '<table class="noborder" width="100%">';
 
 	print "<tr class=\"liste_titre\">";
@@ -95,8 +95,34 @@ if ($result)
     print_liste_field_titre($langs->trans("EstimatedStockValue"), $_SERVER["PHP_SELF"], "e.valo_pmp",'','','align="right"',$sortfield,$sortorder);
     print_liste_field_titre($langs->trans("EstimatedStockValueSell"), $_SERVER["PHP_SELF"], "",'','','align="right"',$sortfield,$sortorder);
 	print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"], "e.statut",'','','align="right"',$sortfield,$sortorder);
+	print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 	print "</tr>\n";
 
+	// Lignes des champs de filtre
+	print '<tr class="liste_titre">';
+
+	print '<td class="liste_titre" align="left">';
+	print '<input class="flat" type="text" name="search_ref" size="6" value="'.dol_escape_htmltag($search_ref).'">';
+	print '</td>';
+
+	print '<td class="liste_titre" align="left">';
+	print '<input class="flat" type="text" name="search_label" size="10" value="'.dol_escape_htmltag($search_label).'">';
+	print '</td>';
+
+	print '<td class="liste_titre" colspan="2">';
+	print '</td>';
+
+	print '<td class="liste_titre" align="right">';
+	print $form->selectarray('search_status', $warehouse->statuts, $search_status, 1, 0, 0, '', 1);
+	print '</td>';
+
+	print '<td class="liste_titre nowrap" align="right">';
+	print '<input type="image" class="liste_titre" name="button_search" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'">';
+	print '<input type="image" class="liste_titre" name="button_removefilter" src="'.img_picto($langs->trans("RemoveFilter"),'searchclear.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'" title="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'">';
+	print '</td>';
+
+	print '</tr>';
+
 	if ($num)
 	{
 		$entrepot=new Entrepot($db);
@@ -128,6 +154,9 @@ if ($result)
             print '</td>';
             // Status
             print '<td align="right">'.$entrepot->LibStatut($objp->statut,5).'</td>';
+
+            print '<td></td>';
+
             print "</tr>\n";
 
             $total += price2num($objp->estimatedvalue,'MU');
@@ -148,7 +177,8 @@ if ($result)
            	print $form->textwithtooltip($langs->trans("Variable"),$htmltext);
 		}
         print '</td>';
-        print '<td align="right">&nbsp;</td>';
+        print '<td></td>';
+        print '<td></td>';
         print "</tr>\n";
 	}
 
@@ -156,6 +186,7 @@ if ($result)
 
 	print "</table>";
 
+	print '</form>';
 }
 else
 {
diff --git a/htdocs/product/stock/mouvement.php b/htdocs/product/stock/mouvement.php
index 82c8ded066f..a556798cdd1 100644
--- a/htdocs/product/stock/mouvement.php
+++ b/htdocs/product/stock/mouvement.php
@@ -501,12 +501,12 @@ if ($resql)
 
     print '<tr class="liste_titre">';
     print '<td class="liste_titre" valign="right">';
-    print $langs->trans('Month').': <input class="flat" type="text" size="2" maxlength="2" name="month" value="'.$month.'">';
+    print '<input class="flat" type="text" size="2" maxlength="2" placeholder="'.dol_escape_htmltag($langs->trans("Month")).'" name="month" value="'.$month.'">';
     if (empty($conf->productbatch->enabled)) print '&nbsp;';
-    else print '<br>';
-    print $langs->trans('Year').': ';
+    //else print '<br>';
     $syear = $year?$year:-1;
-    $formother->select_year($syear,'year',1, 20, 5);
+    print '<input class="flat" type="text" size="2" maxlength="4" placeholder="'.dol_escape_htmltag($langs->trans("Year")).'" name="year" value="'.($syear > 0 ? $syear : '').'">';
+    //print $formother->selectyear($syear,'year',1, 20, 5);
     print '</td>';
     // Product Ref
     print '<td class="liste_titre" align="left">';
diff --git a/htdocs/projet/list.php b/htdocs/projet/list.php
index 489f85f7405..abe0a5858fc 100644
--- a/htdocs/projet/list.php
+++ b/htdocs/projet/list.php
@@ -281,7 +281,7 @@ if ($resql)
 
     if (! empty($conf->global->PROJECT_USE_OPPORTUNITIES)) print_liste_field_titre($langs->trans("OpportunityStatus"),$_SERVER["PHP_SELF"],'p.fk_opp_statut',"",$param,'',$sortfield,$sortorder);
     print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],'p.fk_statut',"",$param,'align="right"',$sortfield,$sortorder);
-	print_liste_field_titre('');
+	print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 	print "</tr>\n";
 
 	print '<tr class="liste_titre">';
@@ -331,7 +331,7 @@ if ($resql)
 	print '<td class="liste_titre nowrap" align="right">';
 	print $form->selectarray('search_status', array('-1'=>'', '0'=>$langs->trans('Draft'),'1'=>$langs->trans('Opened'),'2'=>$langs->trans('Closed')),$search_status);
     print '</td>';
-    print '<td width="56">';
+    print '<td>';
     print '<input type="image" class="liste_titre" name="button_search" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'">';
     print '<input type="image" class="liste_titre" name="button_removefilter" src="'.img_picto($langs->trans("RemoveFilter"),'searchclear.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'" title="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'">';
     print '</td>';
diff --git a/htdocs/societe/list.php b/htdocs/societe/list.php
index 1019e7ee167..281746fe824 100644
--- a/htdocs/societe/list.php
+++ b/htdocs/societe/list.php
@@ -337,6 +337,7 @@ if ($resql)
     $reshook=$hookmanager->executeHooks('printFieldListTitle',$parameters);    // Note that $action and $object may have been modified by hook
     print $hookmanager->resPrint;
 	print_liste_field_titre($langs->trans("Status"),$_SERVER["PHP_SELF"],"s.status","",$params,'align="right"',$sortfield,$sortorder);
+	print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 	print "</tr>\n";
 
 	// Fields title search
@@ -390,11 +391,13 @@ if ($resql)
     print $hookmanager->resPrint;
 
     // Status
+    print '<td></td>';
+
 	print '<td class="liste_titre" align="right">';
 	print '<input type="image" class="liste_titre" name="button_search" src="'.img_picto($langs->trans("Search"),'search.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("Search")).'" title="'.dol_escape_htmltag($langs->trans("Search")).'">';
-	print '&nbsp; ';
 	print '<input type="image" class="liste_titre" name="button_removefilter" src="'.img_picto($langs->trans("Search"),'searchclear.png','','',1).'" value="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'" title="'.dol_escape_htmltag($langs->trans("RemoveFilter")).'">';
 	print '</td>';
+
 	print "</tr>\n";
 
 	$var=True;
@@ -452,7 +455,9 @@ if ($resql)
         print $hookmanager->resPrint;
 
         // Status
-        print '<td align="right">'.$companystatic->getLibStatut(3).'</td>';
+        print '<td align="right">'.$companystatic->getLibStatut(5).'</td>';
+
+        print '<td></td>';
 
 		print '</tr>'."\n";
 		$i++;
diff --git a/htdocs/societe/rib.php b/htdocs/societe/rib.php
index 4bf13f0b390..57ca545a053 100644
--- a/htdocs/societe/rib.php
+++ b/htdocs/societe/rib.php
@@ -377,7 +377,7 @@ if ($socid && $action != 'edit' && $action != "create")
 			print '<td>'.$langs->trans("WithdrawMode").'</td>';
         }
         print_liste_field_titre($langs->trans("DefaultRIB"), '', '', '', '', 'align="center"');
-        print_liste_field_titre('');
+        print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
 		print "</tr>\n";
 
         foreach ($rib_list as $rib)
diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php
index 00f137252e2..ba094124462 100644
--- a/htdocs/theme/eldy/style.css.php
+++ b/htdocs/theme/eldy/style.css.php
@@ -404,7 +404,9 @@ th .button {
 	-webkit-border-radius:0px !important;
 	border-radius:0px !important;
 }
-
+.maxwidthsearch {		/* Max width of column with the search picto */
+	width: 54px;
+}
 .valignmiddle {
 	vertical-align: middle;
 }
diff --git a/htdocs/user/index.php b/htdocs/user/index.php
index 80a5c52a232..a6c845ee69f 100644
--- a/htdocs/user/index.php
+++ b/htdocs/user/index.php
@@ -139,7 +139,7 @@ if ($result)
     print_liste_field_titre($langs->trans("LastConnexion"),$_SERVER['PHP_SELF'],"u.datelastlogin",$param,"",'align="center"',$sortfield,$sortorder);
     print_liste_field_titre($langs->trans("HierarchicalResponsible"),$_SERVER['PHP_SELF'],"u2.login",$param,"",'align="center"',$sortfield,$sortorder);
     print_liste_field_titre($langs->trans("Status"),$_SERVER['PHP_SELF'],"u.statut",$param,"",'align="center"',$sortfield,$sortorder);
-    print_liste_field_titre('');
+    print_liste_field_titre('',$_SERVER["PHP_SELF"],"",'','','',$sortfield,$sortorder,'maxwidthsearch ');
     print "</tr>\n";
 
     // Search bar
-- 
GitLab