From 7d883e434fbf781869e41d62ef9af2a745e59615 Mon Sep 17 00:00:00 2001 From: Laurent Destailleur Date: Fri, 2 Sep 2011 21:56:37 +0000 Subject: [PATCH] New: Always use th for table head --- htdocs/lib/functions.lib.php | 139 ++++++++++++++----------- htdocs/theme/auguria/style.css.php | 2 - htdocs/theme/bureau2crea/style.css.php | 5 +- htdocs/theme/cameleo/style.css.php | 2 - htdocs/theme/eldy/style.css.php | 2 - 5 files changed, 80 insertions(+), 70 deletions(-) diff --git a/htdocs/lib/functions.lib.php b/htdocs/lib/functions.lib.php index afb4aea298c..c5f2144ce8c 100644 --- a/htdocs/lib/functions.lib.php +++ b/htdocs/lib/functions.lib.php @@ -2572,78 +2572,70 @@ 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 td Options of attribute td ("" by defaut) + * @param moreattrib Add more attributes on th ("" by defaut) * @param sortfield Current field used to sort * @param sortorder Current sort order */ -function getTitleFieldOfList($name, $thead=0, $file="", $field="", $begin="", $moreparam="", $td="", $sortfield="", $sortorder="") +function getTitleFieldOfList($name, $thead=0, $file="", $field="", $begin="", $moreparam="", $moreattrib="", $sortfield="", $sortorder="") { global $conf; - //print "$name, $file, $field, $begin, $options, $td, $sortfield, $sortorder
\n"; + //print "$name, $file, $field, $begin, $options, $moreattrib, $sortfield, $sortorder
\n"; $out=''; - - if ($thead) + // 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.= ''.$name.''; + $out.= ''; } else { - // 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.= ''; } + $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).''; + } + } + } + } + $out.=''; return $out; } @@ -2672,6 +2664,7 @@ 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) @@ -2704,6 +2697,7 @@ 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) @@ -2813,6 +2807,7 @@ 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) @@ -2837,6 +2832,7 @@ 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 @@ -2865,6 +2861,7 @@ 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 @@ -2937,7 +2934,8 @@ 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) @@ -3022,6 +3020,7 @@ 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 @@ -3060,7 +3059,8 @@ 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,6 +3119,7 @@ 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, ...) @@ -3276,6 +3277,7 @@ 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. @@ -3304,6 +3306,7 @@ 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 @@ -3330,6 +3333,7 @@ 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 */ @@ -3391,6 +3395,7 @@ function dol_mkdir($dir) /** * Return picto saying a field is required + * * @return string Chaine avec picto obligatoire */ function picto_required() @@ -3401,6 +3406,7 @@ 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 @@ -3425,7 +3431,8 @@ 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
@@ -3455,7 +3462,8 @@ 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 @@ -3482,6 +3490,7 @@ 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 */ @@ -3497,6 +3506,7 @@ 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) @@ -3507,6 +3517,7 @@ 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 @@ -3519,6 +3530,7 @@ function dol_entity_decode($stringhtml,$pagecodeto='UTF-8') /** * Replace html_entity_decode functions to manage errors + * * @param a * @param b * @param c @@ -3533,6 +3545,7 @@ function dol_html_entity_decode($a,$b,$c) /** * Replace htmlentities functions to manage errors + * * @param a * @param b * @param c @@ -3549,7 +3562,8 @@ 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 */ @@ -3570,6 +3584,7 @@ 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 @@ -3586,6 +3601,7 @@ 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. @@ -3622,6 +3638,7 @@ 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() @@ -3632,6 +3649,7 @@ 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 @@ -4094,7 +4112,8 @@ 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) diff --git a/htdocs/theme/auguria/style.css.php b/htdocs/theme/auguria/style.css.php index fb0d19d721c..b5ad431ea80 100644 --- a/htdocs/theme/auguria/style.css.php +++ b/htdocs/theme/auguria/style.css.php @@ -1248,7 +1248,6 @@ th.liste_titre, td.liste_titre font-weight: normal; /* border-bottom: 1px solid #FDFFFF; */ white-space: nowrap; - text-align: ; } th.liste_titre_sel, td.liste_titre_sel { @@ -1261,7 +1260,6 @@ th.liste_titre_sel, td.liste_titre_sel /* text-decoration: underline; */ /* border-bottom: 1px solid #FDFFFF; */ white-space: nowrap; - text-align: ; } input.liste_titre { background: transparent; diff --git a/htdocs/theme/bureau2crea/style.css.php b/htdocs/theme/bureau2crea/style.css.php index 7312b757d11..404fee28c28 100644 --- a/htdocs/theme/bureau2crea/style.css.php +++ b/htdocs/theme/bureau2crea/style.css.php @@ -1439,7 +1439,6 @@ th.liste_titre, td.liste_titre white-space: nowrap; background-image: none; background: none; - text-align: ; } /*tr.liste_titre select.flat { @@ -1455,8 +1454,7 @@ tr.liste_titre input.button { /*margin: 30px 10px 10px 0px;*/ } -th.liste_titre_sel, td.liste_titre_sel -{ +td.liste_titre_sel { background: #505050; background-repeat: repeat-x; color: #FFFFFF; @@ -1465,7 +1463,6 @@ th.liste_titre_sel, td.liste_titre_sel /* text-decoration: underline; */ /* border-bottom: 1px solid #FDFFFF; */ white-space: nowrap; - text-align: ; } input.liste_titre { diff --git a/htdocs/theme/cameleo/style.css.php b/htdocs/theme/cameleo/style.css.php index 42f43efc8c8..6a8e369979c 100644 --- a/htdocs/theme/cameleo/style.css.php +++ b/htdocs/theme/cameleo/style.css.php @@ -1355,7 +1355,6 @@ th.liste_titre, td.liste_titre padding-left: 6px; padding-right: 6px; /*vertical-align: text-top;*/ - text-align: ; } th.liste_titre_sel, td.liste_titre_sel { @@ -1363,7 +1362,6 @@ th.liste_titre_sel, td.liste_titre_sel color: #A51B00; font-weight: bold; white-space: nowrap; - text-align: ; } input.liste_titre { diff --git a/htdocs/theme/eldy/style.css.php b/htdocs/theme/eldy/style.css.php index 58e2ced4c1e..ba4b2f855d4 100644 --- a/htdocs/theme/eldy/style.css.php +++ b/htdocs/theme/eldy/style.css.php @@ -1266,7 +1266,6 @@ th.liste_titre, td.liste_titre font-weight: normal; border-bottom: 1px solid #FDFFFF; white-space: nowrap; - text-align: ; } th.liste_titre_sel, td.liste_titre_sel { @@ -1278,7 +1277,6 @@ th.liste_titre_sel, td.liste_titre_sel font-weight: normal; border-bottom: 1px solid #FDFFFF; white-space: nowrap; - text-align: ; } input.liste_titre { background: #7699A9;