--- dolibarr/htdocs/lib/functions.inc.php 2008-03-06 05:00:19.000000000 +0100 +++ nouveauDolibarr/htdocs/lib/functions.inc.php 2008-03-06 10:38:44.000000000 +0100 @@ -1708,7 +1708,7 @@ \param center chaine du centre ('' par defaut) \param num nombre d'élément total */ -function print_barre_liste($titre, $page, $file, $options='', $sortfield='', $sortorder='', $center='', $num=-1) +function print_barre_liste($titre, $page, $file, $options='', $sortfield='', $sortorder='', $center='', $num=-1,$nbligne=0) { global $conf,$langs; @@ -1720,13 +1720,30 @@ { $nextpage = 0; } - + + $nbpages=ceil($nbligne/$conf->liste_limit); print ''; - - if ($page > 0 || $num > $conf->liste_limit) + $cpt=($page-10); + if($cpt<0){$cpt=0;} + + if ($page > 0 || $num > $conf->liste_limit) { - print ''; + print ''; } else { --- dolibarr/htdocs/comm/clients.php 2008-03-01 05:00:16.000000000 +0100 +++ nouveauDolibarr/htdocs/comm/clients.php 2008-03-06 10:38:44.000000000 +0100 @@ -69,6 +69,12 @@ if (! $sortorder) $sortorder="ASC"; if (! $sortfield) $sortfield="s.nom"; +$resultligne = $db->query($sql); +if ($resultligne) +{ + $nbligne = $db->num_rows($resultligne); +} + $sql .= " ORDER BY $sortfield $sortorder " . $db->plimit($conf->liste_limit +1, $offset); /* @@ -84,7 +90,7 @@ $param = "&search_nom=".$search_nom."&search_code=".$search_code."&search_ville=".$search_ville; - print_barre_liste($langs->trans("ListOfCustomers"), $page, $_SERVER["PHP_SELF"],$param,$sortfield,$sortorder,'',$num); + print_barre_liste($langs->trans("ListOfCustomers"), $page, $_SERVER["PHP_SELF"],$param,$sortfield,$sortorder,'',$num,$nbligne); $i = 0;
'.$titre.($titre?' - ':'').$langs->trans('page').' '.($page+1); - print '
'.$titre.($titre?' - ':'').$langs->trans('page'); + if($cpt>=1){print ' 1 ... ';} + do + { + if($cpt==$page) + { + print" ".($page+1); + } + else + { + print ' '.($cpt+1).''; + } + $cpt++; + }while($cpt<$nbpages && $cpt<=$page+10); + if($cpt<$nbpages){print ' ... '.$nbpages.'';} + print '