diff --git a/htdocs/admin/commande.php b/htdocs/admin/commande.php
index 3ea5cb4204a..015eb73fe43 100644
--- a/htdocs/admin/commande.php
+++ b/htdocs/admin/commande.php
@@ -124,11 +124,6 @@ if ($_GET["action"] == 'setmod')
dolibarr_set_const($db, "COMMANDE_ADDON",$_GET["value"]);
}
-if ($_POST["action"] == 'sethidetreated')
-{
- dolibarr_set_const($db, "COMMANDE_HIDE_TREATED",$_POST["hidetreated"]);
-}
-
if ($_POST["action"] == 'setvalidorder')
{
dolibarr_set_const($db, "COMMANDE_VALID_AFTER_CLOSE_PROPAL",$_POST["validorder"]);
@@ -348,19 +343,6 @@ print '
'.$langs->trans("Value").' | ';
print "\n";
$var=true;
-// Cacher les commandes classer facturées des listes
-$var=! $var;
-
-print '| ';
-print $langs->trans("HideTreadedOrders");
-print ' | ';
-print '\n";
-print " |
\n";
-
// Valider la commande après cloture de la propale
// permet de na pas passer par l'option commande provisoire
$var=! $var;
diff --git a/htdocs/commande/liste.php b/htdocs/commande/liste.php
index f9f05d29d04..54601b7f9e7 100644
--- a/htdocs/commande/liste.php
+++ b/htdocs/commande/liste.php
@@ -62,6 +62,7 @@ llxHeader();
$begin=$_GET['begin'];
$sortorder=$_GET['sortorder'];
$sortfield=$_GET['sortfield'];
+$viewstatut=$_GET['viewstatut'];
if (! $sortfield) $sortfield='c.rowid';
if (! $sortorder) $sortorder='DESC';
@@ -91,6 +92,25 @@ if ($socid)
{
$sql .= ' AND s.idp = '.$socid;
}
+if ($viewstatut <> '' && $viewstatut < 4)
+{
+ if ($viewstatut == 3)
+ {
+ $sql .= ' AND c.fk_statut ='.$viewstatut.' AND c.facture = 0';
+ }
+ else
+ {
+ $sql .= ' AND c.fk_statut ='.$viewstatut;
+ }
+}
+if ($viewstatut <> '' && $viewstatut == 4)
+{
+ $sql .= ' AND c.facture = 1';
+}
+else if (isset($_GET['afacturer']) && $_GET['afacturer'] == 1)
+{
+ $sql .= ' AND c.facture = 0';
+}
if ($_GET['month'] > 0)
{
$sql .= " AND date_format(c.date_commande, '%Y-%m') = '$year-$month'";
@@ -99,14 +119,6 @@ if ($_GET['year'] > 0)
{
$sql .= " AND date_format(c.date_commande, '%Y') = $year";
}
-if (isset($_GET['status']))
-{
- $sql .= " AND fk_statut = ".$_GET['status'];
-}
-if (isset($_GET['afacturer']) && $_GET['afacturer'] == 1)
-{
- $sql .= ' AND c.facture = 0';
-}
if (strlen($_POST['sf_ref']) > 0)
{
$sql .= " AND c.ref like '%".addslashes($_POST['sf_ref']) . "%'";
@@ -119,11 +131,6 @@ if (!empty($sref_client))
{
$sql .= ' AND c.ref_client like \'%'.addslashes($sref_client).'%\'';
}
-// on ne liste pas les commandes classer facturées et annulées, elles apparaissent tout de même avec la recherche
-if ($conf->global->COMMANDE_HIDE_TREATED && (!$sref && !$sref_client && !$snom && !$sall && (!strlen($_POST['sf_ref']) > 0)))
-{
- $sql .= ' AND c.facture = 0 AND c.fk_statut >= 0';
-}
$sql .= ' ORDER BY '.$sortfield.' '.$sortorder;
$sql .= $db->plimit($limit + 1,$offset);
@@ -149,11 +156,11 @@ if ($resql)
$i = 0;
print '';
print '';
- print_liste_field_titre($langs->trans('Ref'),'liste.php','c.ref','','&socid='.$socid,'width="25%"',$sortfield);
- print_liste_field_titre($langs->trans('Company'),'liste.php','s.nom','','&socid='.$socid,'width="30%"',$sortfield);
- print_liste_field_titre($langs->trans('RefCustomerOrder'),'liste.php','c.ref_client','','&socid='.$socid,'width="15%"',$sortfield);
- print_liste_field_titre($langs->trans('Date'),'liste.php','c.date_commande','','&socid='.$socid, 'width="20%" align="right" colspan="2"',$sortfield);
- print_liste_field_titre($langs->trans('Status'),'liste.php','c.fk_statut','','&socid='.$socid,'width="10%" align="center"',$sortfield);
+ print_liste_field_titre($langs->trans('Ref'),'liste.php','c.ref','','&socid='.$socid.'&viewstatut='.$viewstatut,'width="25%"',$sortfield);
+ print_liste_field_titre($langs->trans('Company'),'liste.php','s.nom','','&socid='.$socid.'&viewstatut='.$viewstatut,'width="30%"',$sortfield);
+ print_liste_field_titre($langs->trans('RefCustomerOrder'),'liste.php','c.ref_client','','&socid='.$socid.'&viewstatut='.$viewstatut,'width="15%"',$sortfield);
+ print_liste_field_titre($langs->trans('Date'),'liste.php','c.date_commande','','&socid='.$socid.'&viewstatut='.$viewstatut, 'width="20%" align="right" colspan="2"',$sortfield);
+ print_liste_field_titre($langs->trans('Status'),'liste.php','c.fk_statut','','&socid='.$socid.'&viewstatut='.$viewstatut,'width="10%" align="center"',$sortfield);
print '
';
// Lignes des champs de filtre
print '