source: spip-zone/_plugins_/bbcode_propre/bbcode_propre.php @ 97235

Last change on this file since 97235 was 2205, checked in by pierre.andrews@…, 15 years ago

bug: on ne fait la recherche que si on n'a rien trouve encore (Marc W Lebas)

File size: 3.3 KB
Line 
1<?php
2
3/* Code modifié à partir de:
4 *   +----------------------------------+
5 *    Nom du Filtre :    BBcode                                               
6 *   +----------------------------------+
7 *    Date : mardi 27 d cmbre 2005
8 *    Auteur : FLORENT POINSAUT (flo.saut@wanadoo.fr)                                     
9 *    Source : LAURENT STEPHANE (sl@adequates.com)
10 *   +-------------------------------------+
11 *    Fonctions de ce filtre :
12 *     Rendre utilisable le BBcode dans la r    daction d'article
13 *   +-------------------------------------+
14 * 
15 * Pour toute suggestion, remarque, proposition d'ajout
16 * reportez-vous au forum de l'article :
17 * http://www.spip-contrib.net/Du-BBcode-dans-SPIP
18*/
19
20function bbcode($chaine) {
21  $chaine = stripslashes($chaine);
22  $chaine = str_replace("[code]","<html><code>",$chaine);       
23  $chaine = str_replace("[/code]","</code></html>",$chaine);
24  $chaine = preg_replace("!\\[url\\]\\[img\\](.+)\\[/img\\]\\[/url\\]!Umi","<html><a href=\"\\1\" title=\"img\"><img src=\"\\1\" alt=\"img\"/></a></html>",$chaine);
25  $chaine = preg_replace("!\\[url=(.+)\\]\\[img\\](.+)\\[/img\\]\\[/url\\]!Umi","<html><a href=\"\\1\" title=\"img\"><img src=\"\\2\" alt=\"img\"/></a></html>",$chaine);
26  $chaine = preg_replace("!\\[url\\](.+)\\[/url\\]!Umi","<html><a href=\"\\1\" title=\"\\1\">\\1</a></html>",$chaine);
27  $chaine = preg_replace("!\\[url=(.+)\\](.+)\\[/url\\]!Umi","<html><a href=\"\\1\" title=\"\\2\">\\2</a></html>",$chaine);
28  $chaine = preg_replace("!\\[email\\](.+)\\[/email\\]!Umi","<html><a href=mailto:\"\\1\">\\1</a></html>",$chaine);
29  $chaine = preg_replace("!\\[email=(.+)\\](.+)\\[/email\\]!Umi","<html><a href=mailto:\"\\1\">\\2</a></html>",$chaine);
30  $chaine = preg_replace("!\\[color=(.+)\\](.+)\\[/color\\]!Umi","<html><span style=\"color:\\1\">\\2</span></html>",$chaine);
31  $chaine = preg_replace("!\\[size=(.+)\\](.+)\\[/size\\]!Umi","<html><span style=\"font-size:\\1px\">\\2</span></html>",$chaine);
32  $chaine = preg_replace("!\[list\](.+)\[/list\]!Umi","<html><ul> \\1 </ul></html>",$chaine);
33  $chaine = preg_replace("!\[list=1\](.+)\[/list\]!Umi","<html><ol> \\1 </ol></html>",$chaine); 
34  $chaine = preg_replace("!\[list=a\](.+)\[/list\]!Umi","<html><ol type='a'> \\1 </ol></html>",$chaine);
35  $chaine = preg_replace("!\[\*\](.+)(?=(\[\*\]|</ul>))!Umi","<li>\\1</li>",$chaine);
36  $chaine = str_replace("[b]","<html><b>",$chaine);
37  $chaine = str_replace("[/b]","</b></html>",$chaine);
38  $chaine = str_replace("[i]","<html><i>",$chaine);
39  $chaine = str_replace("[/i]","</i></html>",$chaine);
40  $chaine = str_replace("[u]","<html><span style='text-decoration:underline;'>",$chaine);
41  $chaine = str_replace("[/u]","</span></html>",$chaine);
42  $chaine = str_replace("[center]","<html><center>",$chaine);
43  $chaine = str_replace("[/center]","</center></html>",$chaine);
44  $chaine = str_replace("[img]","<html><img src=\"",$chaine);   
45  $chaine = str_replace("[/img]","\" alt=\"img\" /></html>",$chaine);   
46  $chaine = str_replace("[quote]","<quote>",$chaine);   
47  $chaine = str_replace("[/quote]","</quote>",$chaine);
48  $chaine = str_replace("[scroll]","<cadre>",$chaine); 
49  $chaine = str_replace("[/scroll]","</cadre>",$chaine);
50  return echappe_html($chaine);
51}
52
53// FIN du Filtre BBcode
54
55function bbcode_propre_pre_propre($texte) {
56  if($texte) {
57   return bbcode($texte);
58  }
59}
60
61?>
Note: See TracBrowser for help on using the repository browser.