Skip to content
Extraits de code Groupes Projets
Valider 58c96b26 rédigé par marcimat's avatar marcimat
Parcourir les fichiers

Introduction d'un filtre "spip_str_label" qui enlève les deux points (:) en...

Introduction d'un filtre "spip_str_label" qui enlève les deux points (:) en fin d'une chaine de caractère.
C'est un peu (beaucoup) spécifique aux chaines de langues historiques présentes dans SPIP qui ont beaucoup de ces deux-points,
que l'on ne désire pas dans tous les contextes d'affichage ou pour homogénéiser entre plusieurs chaines disparates
(certaines avec, d'autres sans).

Exemple : `<th><:info_maximum|spip_str_label:></th>`

Un jour il y aura un travail de nettoyage / mise au propres des chaines de langues, un jour...
parent ea700c87
Branches
Étiquettes
Aucune requête de fusion associée trouvée
......@@ -5265,3 +5265,24 @@ function identifiant_slug($texte, $type = '', $options = array()) {
return $texte;
}
/**
* Prépare un texte (issu d'une chaine de langue historique) pour un affichage en label ou titre
*
* Enlève un ':' à la fin d'une chaine de caractère, ainsi que les espaces qui pourraient l'accompagner,
* Met la première lettre en majuscule (par défaut)
*
* Utile afficher dans un contexte de titre des chaines de langues qui contiennent des ':'
*
* @exemple `<:info_maximum|spip_str_label:>`
*/
function spip_str_label(string $text, bool $ucfirst = true) : string {
$label = rtrim($text, " : \t\n\r\0\x0B\xc2\xa0");
if ($label and $label[-1] === ';') {
$label = preg_replace("#(\&nbsp;)+$#", "", $label);
}
if ($ucfirst) {
$label = spip_ucfirst($label);
}
return $label;
}
\ No newline at end of file
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter