source: spip-zone/_core_/plugins/forum/forum_fonctions.php @ 93640

Last change on this file since 93640 was 93640, checked in by marcimat@…, 5 years ago

Meilleure compatibilité avec PSR-2 et nos règles d'écriture, en appliquant
différents fix avec php-cs-fixers. Fixers appliqués ici :

'encoding', utf8
'eof_ending',
un saut de ligne en fin de fichier
'elseif', elseif plutôt que else if
'function_call_space',
espaces sur fonctions
'function_declaration', espaces sur fonctions
'function_typehint_space',
espaces sur fonctions
'linefeed', sauts de ligne \n uniquement
'lowercase_constants',
true, false, null en munuscule
'lowercase_keywords', mots clés PHP en lowercase
'method_argument_space',
espaces sur appels de fonctions
'multiple_use', use unique sur fonctions anonymes
'newline_after_open_tag',
ouverture de php… et c'est tout sur cette ligne
'operators_spaces', espaces de part et d'autres des opérateurs binaires
'parenthesis',
pas d'espace juste après parenthèse ouvrante, ou avant parenthèse fermante
'php_closing_tag', pas de fermeture de php
'short_tag',
tag PHP corrects
'trailing_spaces', pas d'espace qui traîne en fin de ligne
'visibility',
déclarer 'public / private / protected' sur les méthodes

File size: 2.6 KB
Line 
1<?php
2
3/***************************************************************************\
4 *  SPIP, Systeme de publication pour l'internet                           *
5 *                                                                         *
6 *  Copyright (c) 2001-2014                                                *
7 *  Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James  *
8 *                                                                         *
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\***************************************************************************/
12
13/**
14 * Définit les fonctions utiles du plugin forum
15 *
16 * @package SPIP\Forum\Fonctions
17 **/
18
19if (!defined("_ECRIRE_INC_VERSION")) {
20        return;
21}
22
23
24include_spip('public/forum');
25
26/**
27 * Un filtre appliqué à `#PARAMETRES_FORUM`, qui donne l'adresse de la page
28 * de réponse
29 *
30 * @example
31 *     ```
32 *     [<p class="repondre">
33 *          <a href="(#PARAMETRES_FORUM|url_reponse_forum)">
34 *          <:repondre_article:>
35 *          </a>
36 *      </p>]
37 *      ```
38 *
39 * @filtre
40 * @see balise_PARAMETRES_FORUM_dist()
41 *
42 * @param string $parametres
43 * @return string URL de la page de réponse
44 */
45function filtre_url_reponse_forum($parametres) {
46        if (!$parametres) {
47                return '';
48        }
49
50        return generer_url_public('forum', $parametres);
51}
52
53/**
54 * Un filtre qui, étant donné un `#PARAMETRES_FORUM`, retourne une URL de suivi rss
55 * dudit forum
56 *
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)
59 *
60 * @filtre
61 * @see balise_PARAMETRES_FORUM_dist()
62 *
63 * @param string $param
64 * @return string URL pour le suivi RSS
65 */
66function filtre_url_rss_forum($param) {
67        if (!preg_match(',.*(id_(\w*?))=([0-9]+),S', $param, $regs)) {
68                return '';
69        }
70        list(, $k, $t, $v) = $regs;
71        if ($t == 'forum') {
72                $k = 'id_' . ($t = 'thread');
73        }
74
75        return generer_url_public("rss_forum_$t", array($k => $v));
76}
77
78/**
79 * Empêche l'exécution de code HTML
80 *
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
84 * le navigateur).
85 *
86 * @see forum_declarer_tables_interfaces()
87 *
88 * @param string $texte
89 * @return string
90 **/
91function interdit_html($texte) {
92        if (defined('_INTERDIRE_TEXTE_HTML')) {
93                $texte = str_replace("<", "&lt;", $texte);
94        }
95
96        return $texte;
97}
Note: See TracBrowser for help on using the repository browser.