|
| 1 | +<?php |
| 2 | + |
| 3 | +// Retrieved from http://wiki.modxcms.com/index.php/PHx/CustomModifiers |
| 4 | +// description: parse bb code (also escapes all html and MODx tags characters) |
| 5 | +// usage: [+variable:bbcode+] |
| 6 | + |
| 7 | +$string = preg_replace("/&(#[0-9]+|[a-z]+);/i", "&$1;", htmlspecialchars($output)); |
| 8 | +$string = preg_replace('~\[b\](.+?)\[/b\]~is', '<b>\1</b>', $string); |
| 9 | +$string = preg_replace('~\[i\](.+?)\[/i\]~is', '<i>\1</i>', $string); |
| 10 | +$string = preg_replace('~\[u\](.+?)\[/u\]~is', '<u>\1</u>', $string); |
| 11 | +$string = preg_replace('~\[link\]www.(.+?)\[/link\]~is', '<a href="http://www.\1">www.\1</a>', $string); |
| 12 | +$string = preg_replace('~\[link\](.+?)\[/link\]~is', '<a href="\1">\1</a>', $string); |
| 13 | +$string = preg_replace('~\[link=(.+?)\](.+?)\[/link\]~is', '<a href="\1">\2</a>', $string); |
| 14 | +$string = preg_replace('~\[url\]www.(.+?)\[/url\]~is', '<a href="http://www.\1">www.\1</a>', $string); |
| 15 | +$string = preg_replace('~\[url\](.+?)\[/url\]~is', '<a href="\1">\1</a>', $string); |
| 16 | +$string = preg_replace('~\[url=(.+?)\](.+?)\[/url\]~is', '<a href="\1">\2</a>', $string); |
| 17 | +$string = preg_replace('~\[img\](.+?)\[/img\]~is', '<img src="\1" alt="[image]" style="margin: 5px 0px 5px 0px" />', $string); |
| 18 | +$string = preg_replace('~\[img-l\](.+?)\[/img\]~is', '<img src="\1" alt="[image]" style="border: thin solid #DFE5F2; FLOAT: left; MARGIN-RIGHT: 20px" />', $string); |
| 19 | +$string = preg_replace('~\[img-r\](.+?)\[/img\]~is', '<img src="\1" alt="[image]" style="border: thin solid #DFE5F2; FLOAT: right; MARGIN-LEFT: 20px;" />', $string); |
| 20 | +$string = str_replace(array("[","]","`"),array("[","]","`"),$string); |
| 21 | +return $string; |
| 22 | + |
| 23 | + |
| 24 | +?> |
0 commit comments