Skip to content

Commit

Permalink
Sécurisation data out HTML, préparation pour les textes de langues.
Browse files Browse the repository at this point in the history
  • Loading branch information
pitch314 committed Mar 26, 2020
1 parent 3fa9ee5 commit d681632
Showing 1 changed file with 32 additions and 1 deletion.
33 changes: 32 additions & 1 deletion lang/lang_main.php
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,36 @@ function load_lang_file($ui_lang, $filename, $parent_dir = ".") {
require_once ($default_file_path);
}

/**
* Encode du texte pour un affichage sans problème en HTML avec prise en compte \n.
*
* @param string $texte Le texte à sécuriser
* @param string $format Le type de format final à encoder [défaut=HTML]
* @return string le texte encodé.
*/
function print_lang($texte, $format = 'HTML') {
//Pour HTML
$text = htmlspecialchars($texte, ENT_QUOTES | ENT_HTML5 | ENT_SUBSTITUTE, 'UTF-8');
// $text = nl2br($text, false);
$text = str_replace( array("\r\n", "\r", "\n"), '<br>', $text ); //Afin de retirer les retours à ligne, non supp par nl2br

return $text;
}

/**
* @brief Sécurise en formatant correctement les textes de langues.
*
* @param [in] $s_lang Tableau des textes de langue
* @return tableau encodé
*
*/
function secure_lang($s_lang) {
foreach($s_lang as $key => $value){
$s_lang[$key] = print_lang($value);
}
return $s_lang;
}

global $lang;
$lang = array();

Expand Down Expand Up @@ -55,4 +85,5 @@ function load_lang_file($ui_lang, $filename, $parent_dir = ".") {
load_lang_file($ui_lang, "lang_help.php");
}


//TODO: Nettoyer les fichiers de lang avant !
// $lang = secure_lang($lang);

1 comment on commit d681632

@pitch314
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#169 Première étape

Please sign in to comment.