diff --git a/htdocs/lib/functions.lib.php b/htdocs/lib/functions.lib.php
index c5f2144ce8c15..afb4aea298c6d 100644
--- a/htdocs/lib/functions.lib.php
+++ b/htdocs/lib/functions.lib.php
@@ -2572,70 +2572,78 @@ function print_liste_field_titre($name, $file="", $field="", $begin="", $morepar
/**
* Get title line of an array
- *
* @param name Label of field
* @param thead For thead format
* @param file Url used when we click on sort picto
* @param field Field to use for new sorting
* @param begin ("" by defaut)
* @param moreparam Add more parameters on sort url links ("" by default)
- * @param moreattrib Add more attributes on th ("" by defaut)
+ * @param td Options of attribute td ("" by defaut)
* @param sortfield Current field used to sort
* @param sortorder Current sort order
*/
-function getTitleFieldOfList($name, $thead=0, $file="", $field="", $begin="", $moreparam="", $moreattrib="", $sortfield="", $sortorder="")
+function getTitleFieldOfList($name, $thead=0, $file="", $field="", $begin="", $moreparam="", $td="", $sortfield="", $sortorder="")
{
global $conf;
- //print "$name, $file, $field, $begin, $options, $moreattrib, $sortfield, $sortorder
\n";
+ //print "$name, $file, $field, $begin, $options, $td, $sortfield, $sortorder
\n";
$out='';
- // 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)))
+
+ if ($thead)
{
- $out.= '
';
+ $out.= ' | '.$name.' | ';
}
else
{
- $out.= '';
- }
- $out.=$name;
-
- if (empty($thead) && $field) // If this is a sort field
- {
- $options=preg_replace('/sortfield=([a-zA-Z0-9,\s\.]+)/i','',$moreparam);
- $options=preg_replace('/sortorder=([a-zA-Z0-9,\s\.]+)/i','',$options);
- $options=preg_replace('/&+/i','&',$options);
- if (! preg_match('/^&/',$options)) $options='&'.$options;
-
- //print " ";
- $out.= '';
- if (! $sortorder)
- {
- $out.= ''.img_down("A-Z",0).'';
- $out.= ''.img_up("Z-A",0).'';
- }
- else
- {
- if ($field != $sortfield)
- {
- $out.= ''.img_down("A-Z",0).'';
- $out.= ''.img_up("Z-A",0).'';
- }
- else {
- $sortorder=strtoupper($sortorder);
- if ($sortorder == 'DESC' ) {
- $out.= ''.img_down("A-Z",0).'';
- $out.= ''.img_up("Z-A",1).'';
- }
- if ($sortorder == 'ASC' ) {
- $out.= ''.img_down("A-Z",1).'';
- $out.= ''.img_up("Z-A",0).'';
- }
- }
- }
+ // Le champ de tri est mis en evidence.
+ // Exemple si (sortfield,field)=("nom","xxx.nom") ou (sortfield,field)=("nom","nom")
+ if ($field && ($sortfield == $field || $sortfield == preg_replace("/^[^\.]+\./","",$field)))
+ {
+ $out.= ' | ';
+ }
+ else
+ {
+ $out.= ' | ';
+ }
+ $out.= $name;
+
+ // If this is a sort field
+ if ($field)
+ {
+ $options=preg_replace('/sortfield=([a-zA-Z0-9,\s\.]+)/i','',$moreparam);
+ $options=preg_replace('/sortorder=([a-zA-Z0-9,\s\.]+)/i','',$options);
+ $options=preg_replace('/&+/i','&',$options);
+ if (! preg_match('/^&/',$options)) $options='&'.$options;
+
+ //print " ";
+ $out.= '';
+ if (! $sortorder)
+ {
+ $out.= ''.img_down("A-Z",0).'';
+ $out.= ''.img_up("Z-A",0).'';
+ }
+ else
+ {
+ if ($field != $sortfield)
+ {
+ $out.= ''.img_down("A-Z",0).'';
+ $out.= ''.img_up("Z-A",0).'';
+ }
+ else {
+ $sortorder=strtoupper($sortorder);
+ if ($sortorder == 'DESC' ) {
+ $out.= ''.img_down("A-Z",0).'';
+ $out.= ''.img_up("Z-A",1).'';
+ }
+ if ($sortorder == 'ASC' ) {
+ $out.= ''.img_down("A-Z",1).'';
+ $out.= ''.img_up("Z-A",0).'';
+ }
+ }
+ }
+ }
+ $out.= " | ";
}
- $out.='';
return $out;
}
@@ -2664,7 +2672,6 @@ function print_fiche_titre($titre, $mesg='', $picto='title.png', $pictoisfullpat
/**
* Load a title with picto
- *
* @param titre Title to show
* @param mesg Added message to show on right
* @param picto Icon to use before title (should be a 32x32 transparent png file)
@@ -2697,7 +2704,6 @@ function load_fiche_titre($titre, $mesg='', $picto='title.png', $pictoisfullpath
/**
* Print a title with navigation controls for pagination
- *
* @param titre Title to show (required)
* @param page Numero of page (required)
* @param file Url of page (required)
@@ -2807,7 +2813,6 @@ function print_barre_liste($titre, $page, $file, $options='', $sortfield='', $so
/**
* Fonction servant a afficher les fleches de navigation dans les pages de listes
- *
* @param page Numero of page
* @param file Lien
* @param options Autres parametres d'url a propager dans les liens ("" par defaut)
@@ -2832,7 +2837,6 @@ function print_fleche_navigation($page,$file,$options='',$nextpage,$betweenarrow
/**
* Fonction qui retourne un taux de tva formate pour visualisation
* Utilisee dans les pdf et les pages html
- *
* @param rate Rate value to format (19.6 19,6 19.6% 19,6%,...)
* @param addpercent Add a percent % sign in output
* @param info_bits Miscellanous information on vat
@@ -2861,7 +2865,6 @@ function vatrate($rate,$addpercent=false,$info_bits=0)
/**
* Fonction qui formate un montant pour visualisation
* Fonction utilisee dans les pdf et les pages html
- *
* @param amount Montant a formater
* @param html Type de formatage, html ou pas (par defaut)
* @param outlangs Objet langs pour formatage text
@@ -2934,8 +2937,7 @@ function price($amount, $html=0, $outlangs='', $trunc=1, $rounding=-1, $forcerou
/**
* Function that return a number with universal decimal format (decimal separator is '.') from
* an amount typed by a user.
- * Function to use on each input amount before any numeric test or database insert
- *
+ * Function to use on each input amount before any numeric test or database insert.
* @param amount Amount to convert/clean
* @param rounding ''=No rounding
* 'MU'=Round to Max unit price (MAIN_MAX_DECIMALS_UNIT)
@@ -3020,7 +3022,6 @@ function price2num($amount,$rounding='',$alreadysqlnb=0)
/**
* Return localtaxe rate for a particular tva
- *
* @param tva Vat taxe
* @param local Local taxe to search and return
* @param societe_acheteuse Object of buying third party
@@ -3059,8 +3060,7 @@ function get_localtax($tva, $local, $societe_acheteuse="")
/**
* Return vat rate of a product in a particular selling country or default country
- * vat if product is unknown
- *
+ * vat if product is unknown.
* @param idprod Id of product or 0 if not a predefined product
* @param countrycode Country code (FR, US, IT, ...)
* @return int <0 if KO, Vat rate if OK
@@ -3119,7 +3119,6 @@ function get_product_vat_for_country($idprod, $countrycode)
/**
* Return localtax rate of a product in a particular selling country
- *
* @param idprod Id of product
* @package local 1 for localtax1, 2 for localtax 2
* @param countrycode Country code (FR, US, IT, ...)
@@ -3277,7 +3276,6 @@ function get_default_localtax($societe_vendeuse, $societe_acheteuse, $local, $id
/**
* Return yes or no in current language
- *
* @param yesno Value to test (1, 'yes', 'true' or 0, 'no', 'false')
* @param case 1=Yes/No, 0=yes/no
* @param color 0=texte only, 1=Text is formated with a color font style ('ok' or 'error'), 2=Text is formated with 'ok' color.
@@ -3306,7 +3304,6 @@ function yn($yesno, $case=1, $color=0)
* Return a path to have a directory according to an id
* Examples: '001' with level 3->"0/0/1/", '015' with level 3->"0/1/5/"
* Examples: 'ABC-1' with level 3 ->"0/0/1/", '015' with level 1->"5/"
- *
* @param $num Id to develop
* @param $level Level of development (1, 2 or 3 level)
* @param $alpha Use alpha ref
@@ -3333,7 +3330,6 @@ function create_exdir($dir)
/**
* Creation of a directory (recursive)
- *
* @param $dir Directory to create
* @return int < 0 if KO, 0 = already exists, > 0 if OK
*/
@@ -3395,7 +3391,6 @@ function dol_mkdir($dir)
/**
* Return picto saying a field is required
- *
* @return string Chaine avec picto obligatoire
*/
function picto_required()
@@ -3406,7 +3401,6 @@ function picto_required()
/**
* Clean a string from all HTML tags and entities
- *
* @param StringHtml String to clean
* @param removelinefeed Replace also all lines feeds by a space
* @return string String cleaned
@@ -3431,8 +3425,7 @@ function dol_string_nohtmltag($StringHtml,$removelinefeed=1)
/**
- * Replace CRLF in string with a HTML BR tag
- *
+ * Replace CRLF in string with a HTML BR tag.
* @param stringtoencode String to encode
* @param nl2brmode 0=Adding br before \n, 1=Replacing \n by br
* @param forxml false=Use
, true=Use
@@ -3462,8 +3455,7 @@ function dol_nl2br($stringtoencode,$nl2brmode=0,$forxml=false)
* - writeHTMLCell -> param must be encoded into HTML.
* - MultiCell -> param must not be encoded into HTML.
* Because writeHTMLCell convert also \n into
, if function
- * is used to build PDF, nl2brmode must be 1
- *
+ * is used to build PDF, nl2brmode must be 1.
* @param stringtoencode String to encode
* @param nl2brmode 0=Adding br before \n, 1=Replacing \n by br (for use with FPDF writeHTMLCell function for example)
* @param pagecodefrom Pagecode stringtoencode is encoded
@@ -3490,7 +3482,6 @@ function dol_htmlentitiesbr($stringtoencode,$nl2brmode=0,$pagecodefrom='UTF-8')
/**
* This function is called to decode a HTML string (it decodes entities and br tags)
- *
* @param stringtodecode String to decode
* @param pagecodeto Page code for result
*/
@@ -3506,7 +3497,6 @@ function dol_htmlentitiesbr_decode($stringtodecode,$pagecodeto='UTF-8')
/**
* This function remove all ending \n and br at end
- *
* @param stringtodecode String to decode
*/
function dol_htmlcleanlastbr($stringtodecode)
@@ -3517,7 +3507,6 @@ function dol_htmlcleanlastbr($stringtodecode)
/**
* This function is called to decode a string with HTML entities (it decodes entities tags)
- *
* @param stringhtml stringhtml
* @param pagecodeto Encoding of input string
* @return string decodestring
@@ -3530,7 +3519,6 @@ function dol_entity_decode($stringhtml,$pagecodeto='UTF-8')
/**
* Replace html_entity_decode functions to manage errors
- *
* @param a
* @param b
* @param c
@@ -3545,7 +3533,6 @@ function dol_html_entity_decode($a,$b,$c)
/**
* Replace htmlentities functions to manage errors
- *
* @param a
* @param b
* @param c
@@ -3562,8 +3549,7 @@ function dol_htmlentities($a,$b,$c)
/**
* Check if a string is a correct iso string
* If not, it will we considered not HTML encoded even if it is by FPDF.
- * Example, if string contains euro symbol that has ascii code 128
- *
+ * Example, if string contains euro symbol that has ascii code 128.
* @param s String to check
* @return int 0 if bad iso, 1 if good iso
*/
@@ -3584,7 +3570,6 @@ function dol_string_is_good_iso($s)
/**
* Return nb of lines of a clear text
- *
* @param s String to check
* @param maxchar Not yet used
* @return int Number of lines
@@ -3601,7 +3586,6 @@ function dol_nboflines($s,$maxchar=0)
/**
* Return nb of lines of a formated text with \n and
- *
* @param text Text
* @param maxlinesize Largeur de ligne en caracteres (ou 0 si pas de limite - defaut)
* @param charset Give the charset used to encode the $text variable in memory.
@@ -3638,7 +3622,6 @@ function dol_nboflines_bis($text,$maxlinesize=0,$charset='UTF-8')
/**
* Same function than microtime in PHP 5 but compatible with PHP4
- *
* @return float Time (millisecondes) with microsecondes in decimal part
*/
function dol_microtime_float()
@@ -3649,7 +3632,6 @@ function dol_microtime_float()
/**
* Return if a text is a html content
- *
* @param msg Content to check
* @param option 0=Full detection, 1=Fast check
* @return boolean true/false
@@ -4112,8 +4094,7 @@ function verifCond($strRights)
/**
* Replace eval function to add more security.
- * This function is called by verifCond()
- *
+ * This function is called by verifCond().
* @param string $s
*/
function dol_eval($s)