3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
6 * Copyright (c) 2001-2019 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
9 * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
10 * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
11 \***************************************************************************/
14 * Définit les fonctions utiles du plugin forum
16 * @package SPIP\Forum\Fonctions
19 if (!defined("_ECRIRE_INC_VERSION")) {
24 include_spip('public/forum');
27 * Un filtre appliqué à `#PARAMETRES_FORUM`, qui donne l'adresse de la page
32 * [<p class="repondre">
33 * <a href="(#PARAMETRES_FORUM|url_reponse_forum)">
34 * <:repondre_article:>
40 * @see balise_PARAMETRES_FORUM_dist()
42 * @param string $parametres
43 * @return string URL de la page de réponse
45 function filtre_url_reponse_forum($parametres) {
50 return generer_url_public('forum', $parametres);
54 * Un filtre qui, étant donné un `#PARAMETRES_FORUM`, retourne une URL de suivi rss
57 * Attention : appliqué à un `#PARAMETRES_FORUM` complexe (`id_article=x&id_forum=y`)
58 * ça retourne une URL de suivi du thread `y` (que le thread existe ou non)
61 * @see balise_PARAMETRES_FORUM_dist()
63 * @param string $param
64 * @return string URL pour le suivi RSS
66 function filtre_url_rss_forum($param) {
67 if (!preg_match(',.*(id_(\w*?))=([0-9]+),S', $param, $regs)) {
70 list(, $k, $t, $v) = $regs;
72 $k = 'id_' . ($t = 'thread');
75 return generer_url_public("rss_forum_$t", array($k => $v));
79 * Empêche l'exécution de code HTML
81 * Permet si la constante `_INTERDIRE_TEXTE_HTML` est définie
82 * (ce n'est pas le cas par défaut) d'échapper les balises HTML
83 * d'un texte (de sorte qu'elles seront affichées et non traitées par
86 * @see forum_declarer_tables_interfaces()
88 * @param string $texte
91 function interdit_html($texte) {
92 if (defined('_INTERDIRE_TEXTE_HTML')) {
93 $texte = str_replace("<", "<", $texte);