From 13768fdb9b2925f31f49fb5f42de30ba0a0f3c0b Mon Sep 17 00:00:00 2001 From: Andrew Manning Date: Wed, 28 Dec 2016 14:58:25 -0500 Subject: Zot structures doco integrated into the Zot page. Added nowrap option to [code] BBcode tag. --- include/bbcode.php | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'include/bbcode.php') diff --git a/include/bbcode.php b/include/bbcode.php index f0cf861f3..00d22d26d 100644 --- a/include/bbcode.php +++ b/include/bbcode.php @@ -511,6 +511,20 @@ function bb_code($match) { return '' . trim($match[1]) . ''; } +function bb_code_options($match) { + if(strpos($match[0], "
")) { + $class = ""; + } else { + $class = "inline-code"; + } + if(strpos($match[1], 'nowrap')) { + $style = "overflow-x: auto; white-space: pre;"; + } else { + $style = ""; + } + return '' . trim($match[2]) . ''; +} + function bb_highlight($match) { $lang = ((in_array(strtolower($match[1]),['php','css','mysql','sql','abap','diff','html','perl','ruby', 'vbscript','avrc','dtd','java','xml','cpp','python','javascript','js','json','sh'])) @@ -933,6 +947,11 @@ function bbcode($Text, $preserve_nl = false, $tryoembed = true, $cache = false) $Text = preg_replace_callback("/\[code\](.*?)\[\/code\]/ism", 'bb_code', $Text); } + // Check for [code options] text + if (strpos($Text,'[code ') !== false) { + $Text = preg_replace_callback("/\[code(.*?)\](.*?)\[\/code\]/ism", 'bb_code_options', $Text); + } + // Check for [spoiler] text $endlessloop = 0; while ((strpos($Text, "[/spoiler]")!== false) and (strpos($Text, "[spoiler]") !== false) and (++$endlessloop < 20)) { -- cgit v1.2.3