/** * Parse BBCode into HTML. * * @param string $data BBCode string to be converted to HTML. * * @return string HTML representation of $data. */ protected static function parse($data) { $bbcodedata = array('b' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<b>', 'close_tag' => '</b>'), 'u' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<u>', 'close_tag' => '</u>'), 'i' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<i>', 'close_tag' => '</i>'), 'list' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<ul>', 'close_tag' => '</ul>', 'childs' => 'li'), 'olist' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<ol>', 'close_tag' => '</ol>', 'childs' => 'li'), 'li' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<li>', 'close_tag' => '</li>', 'parents' => 'list'), 'url' => array('type' => BBCODE_TYPE_OPTARG, 'open_tag' => '<a href="{PARAM}">', 'close_tag' => '</a>', 'default_arg' => '{CONTENT}', 'param_handling' => 'self::cleanUrl'), 'code' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<pre>', 'close_tag' => '</pre>', 'content_handling' => 'self::noBrs'), 'h1' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<h2><u>', 'close_tag' => '</u></h2>'), 'h2' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<h3><u>', 'close_tag' => '</u></h3>'), 'center' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<center>', 'close_tag' => '</center>'), 'img' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<img src="', 'close_tag' => '" />', 'content_handling' => 'self::cleanContentUrl'), 'indexlink' => array('type' => BBCODE_TYPE_ARG, 'open_tag' => '<a href="#{PARAM}">', 'close_tag' => '</a>'), 'index' => array('type' => BBCODE_TYPE_ARG, 'open_tag' => '<a style="padding-top: 50px;" name="{PARAM}">', 'close_tag' => '</a>')); $bbcode = bbcode_create($bbcodedata); $return = "<div align=\"left\">" . str_replace(array('<ul><br />', '</li><br />'), array('<ul>', '</li>'), bbcode_parse($bbcode, nl2br($data))) . "</div>"; return $return; }
/** * {@inheritdoc} */ public function bb2html($text) { $this->handler = bbcode_create($this->tags); $this->addSmiles(); $parsedText = bbcode_parse($this->handler, $text); bbcode_destroy($this->handler); return $parsedText; }
public static function generateHTML($str) { global $bb_code; if ($bb_code === false) { self::initialize($bb_code); } return bbcode_parse($bb_code, $str); }
/** * Replace bbcodes if enabled php extension * @param null $str * @return string */ protected function getBBParsed($str = null) { if ($str === null) { $str = $this->description; } if (!extension_loaded('bbcode')) { return $str; } $arrayBBCode = ['' => ['type' => BBCODE_TYPE_ROOT, 'childs' => '!i'], 'b' => ['type' => BBCODE_TYPE_NOARG, 'open_tag' => '<b>', 'close_tag' => '</b>'], 'i' => ['type' => BBCODE_TYPE_NOARG, 'open_tag' => '<i>', 'close_tag' => '</i>', 'childs' => 'b'], 'u' => ['type' => BBCODE_TYPE_NOARG, 'open_tag' => '', 'close_tag' => ''], 's' => ['type' => BBCODE_TYPE_NOARG, 'open_tag' => '', 'close_tag' => ''], 'img' => ['type' => BBCODE_TYPE_NOARG, 'open_tag' => '<img alt="image" src="', 'close_tag' => '" />', 'childs' => ''], 'url' => ['type' => BBCODE_TYPE_OPTARG, 'open_tag' => '<a href="{PARAM}" rel="nofollow">', 'close_tag' => '</a>', 'default_arg' => '{CONTENT}', 'childs' => 'b,i,img'], 'quote' => ['type' => BBCODE_TYPE_NOARG, 'open_tag' => '', 'close_tag' => ''], 'code' => ['type' => BBCODE_TYPE_NOARG, 'open_tag' => '<pre>', 'close_tag' => '</pre>'], 'size' => ['type' => BBCODE_TYPE_OPTARG, 'open_tag' => '', 'close_tag' => '', 'default_arg' => '{CONTENT}', 'childs' => 'b,i'], 'color' => ['type' => BBCODE_TYPE_OPTARG, 'open_tag' => '', 'close_tag' => '', 'default_arg' => '{CONTENT}', 'childs' => 'b,i']]; $BBHandler = bbcode_create($arrayBBCode); return bbcode_parse($BBHandler, $str); }
function discussion_forum_parse_output($text, $options = array()) { // BBcode part $bbcode_ruleset = array('' => array('type' => BBCODE_TYPE_ROOT), 'i' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<i>', 'close_tag' => '</i>'), 'img' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<img src="', 'close_tag' => '" class="forum_post_image" />', 'childs' => ''), 'b' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<b>', 'close_tag' => '</b>'), 'spoiler' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<div class="spoiler"><span>Spoiler: <button class="spoiler_control">Visa</button></span><span class="spoiler_content">', 'close_tag' => '</span></div>', 'childs' => '')); $text = clickable_links($text); if (isset($options['search_highlight'])) { $options['search_highlight'] = is_array($options['search_highlight']) ? $options['search_highlight'] : explode(' ', $options['search_highlight']); $safe_wordlist = array_map('preg_quote', $options['search_highlight']); $pattern = '/(' . str_replace('/', '\\/', implode('|', $safe_wordlist)) . ')/'; echo $pattern . "\n"; $replacement = '<strong class="search_highlight">$1</strong>'; $text = preg_replace($pattern, $replacement, $text); } $text = nl2br($text); $text = str_replace(array("\n", "\r"), '', $text); $bbcode_handler = bbcode_create($bbcode_ruleset); $text = bbcode_parse($bbcode_handler, $text); $pattern = '/\\[svar:(.+?):([0-9]+?)\\](.*?)(\\[\\/svar\\])/'; $replacement = '<div class="answer" id="forum_answer_to_$2"><strong>Svar till <a href="/traffa/quicksearch.php?username=$1">$1</a></strong> [<a href="/diskussionsforum/gaa_till_post.php?post_id=$2">Gå till post</a>]: $3</div>'; $text = preg_replace($pattern, $replacement, $text); $pattern = '/\\[svar:(.+?)\\](.+?)(\\[\\/svar\\])/'; $replacement = '<div class="answer"><a href="?$1">$1</a>: $2</div>'; $text = preg_replace($pattern, $replacement, $text); $pattern = '/\\[poll:(.+?)\\]/'; $text = preg_replace_callback($pattern, 'discussion_forum_insert_poll', $text); $pattern = '/\\@(.+?)\\@/'; $replacement = '<span class="forum_answer" id="$1">Svar till $1</span>'; $text = preg_replace($pattern, $replacement, $text); $pattern = '/\\[tillagg:(.+?):(.+?)\\](.*?)(\\[\\/tillagg\\])/'; $replacement = '<div class="answer" id="forum_answer_to_$2">Tilläg av <a href="/traffa/quicksearch.php?username=$1">$1</a> klockan $2<br />$3</div>'; $text = preg_replace_callback($pattern, 'discussion_forum_tillagg_callback', $text); $code_languages = array('php', 'html', 'javascript', 'css', 'C#', 'asp', 'joar'); // Note: The pattern modifier /i makes the pattern case-insensitive. $pattern = '/\\[code:(' . implode('|', $code_languages) . ')\\](.*?)(\\[\\/code\\])/i'; $text = preg_replace_callback($pattern, 'discussion_forum_code_tag_callback', $text); // Note: See above for explanation on /i, /e evaluates (an escaped version) of the search string. $pattern = '/\\[code\\](.*?)\\[\\/code\\]/ie'; //$text = preg_replace($pattern, 'discussion_forum_code_tag_callback(array(1 => "", 2 => "$1"))', $text); // $text = ($_SESSION['preferences']['forum_enable_smilies'] == 1) ? setSmilies($text) : $text; if (isset($options['post']['quality_level']) && $options['post']['quality_level'] <= 3 && $_SESSION['preferences']['forum_enable_smilies'] == 1) { $text = setSmilies($text); } return $text; }
function profile_presentation_parse($options) { if (!isset($options['presentation_text'])) { return 'Presentation data does not exist.'; } $bbcode_ruleset = array('' => array('type' => BBCODE_TYPE_ROOT), 'i' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<i>', 'close_tag' => '</i>'), 'b' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<strong>', 'close_tag' => '</strong>'), 'rubrik' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<h2>', 'close_tag' => '</h2>', 'childs' => ''), 'underrubrik' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<h3>', 'close_tag' => '</h3>', 'childs' => ''), 'minirubrik' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<h4>', 'close_tag' => '</h4>', 'childs' => '')); //$options['presentation_text'] = clickable_links($options['presentation_text']); $options['presentation_text'] = nl2br($options['presentation_text']); $options['presentation_text'] = str_replace(array("\n", "\r"), '', $options['presentation_text']); $bbcode_handler = bbcode_create($bbcode_ruleset); $options['presentation_text'] = bbcode_parse($bbcode_handler, $options['presentation_text']); $pattern = '/\\[poll:(.+?)\\]/'; $options['presentation_text'] = preg_replace_callback($pattern, 'profile_presentation_poll_tag_callback', $options['presentation_text']); $options['presentation_text'] = setSmilies($options['presentation_text']); //$options['presentation_text'] = profile_presentation_friends_tag_callback($options); $pattern = '/\\[link:(profile\\]([a-zA-Z0-9_-]+)|webb\\](.+?))\\[\\/link\\]/'; $options['presentation_text'] = preg_replace_callback($pattern, 'profile_presentation_link_tag_callback', $options['presentation_text']); $pattern = '/\\[link:(photos|guestbook)\\]/'; $options['presentation_text'] = preg_replace_callback($pattern, 'profile_presentation_link_tag_callback', $options['presentation_text']); $pattern = '/\\[fotoalbum:([0-9]+)\\]/'; $options['presentation_text'] = str_replace('%USERID%', $options['user_id'], preg_replace_callback($pattern, 'profile_presentation_photos_callback', $options['presentation_text'])); $output .= '<div class="profile_presentation_text">'; $output .= $options['presentation_text']; $output .= '</div>'; return $output; }
function forum_view_topic() { global $enablesidecheck, $forum_skeleton, $forum_lang, $maxqueries, $user_lvl, $user_id, $output, $realm_db, $characters_db, $realm_id, $mmfpm_db; if ($enablesidecheck) { $side = get_side(); } // Better to use it here instead of call it many time in the loop :) $mysql = new SQL(); $link = $mysql->connect($mmfpm_db['addr'], $mmfpm_db['user'], $mmfpm_db['pass'], $mmfpm_db['name']); if (isset($_GET["id"])) { $id = $mysql->quote_smart($_GET["id"]); $post = false; } else { if (isset($_GET["postid"])) { $id = $mysql->quote_smart($_GET["postid"]); $post = true; } else { error($forum_lang["no_such_topic"]); } } if (!isset($_GET["page"])) { $page = 0; } else { $page = $mysql->quote_smart($_GET["page"]); } // Fok you mathafoker haxorz $start = $maxqueries * $page; if (!$post) { $posts = $mysql->query("SELECT id,authorid,authorname,forum,name,text,time,annouced,sticked,closed FROM mm_forum_posts WHERE topic = '{$id}' ORDER BY id ASC LIMIT {$start}, {$maxqueries};"); // Thx qsa for the query structure $link = $mysql->connect($realm_db['addr'], $realm_db['user'], $realm_db['pass'], $realm_db['name']); $query = "SELECT account,name,gender,race,class,\r\n level,(SELECT gmlevel FROM `{$realm_db['name']}`.account_access WHERE `{$realm_db['name']}`.account_access.id = `{$characters_db[$realm_id]['name']}`.characters.account) as gmlevel\r\nFROM `{$characters_db[$realm_id]['name']}`.characters WHERE totaltime IN ( SELECT MAX(totaltime) FROM `{$characters_db[$realm_id]['name']}`.characters WHERE account IN ("; while ($post = $mysql->fetch_row($posts)) { $query .= "{$post['1']},"; } mysql_data_seek($posts, 0); $query .= "0) GROUP BY account);"; $link = $mysql->connect($characters_db[$realm_id]['addr'], $characters_db[$realm_id]['user'], $characters_db[$realm_id]['pass'], $characters_db[$realm_id]['name']); $results = $mysql->query($query); while ($avatar = $mysql->fetch_row($results)) { $char_gender = str_pad(dechex($avatar[2]), 8, 0, STR_PAD_LEFT); $avatars[$avatar[0]]["name"] = $avatar[1]; $avatars[$avatar[0]]["sex"] = $char_gender[3]; $avatars[$avatar[0]]["race"] = $avatar[3]; $avatars[$avatar[0]]["class"] = $avatar[4]; $avatars[$avatar[0]]["level"] = $avatar[5]; $avatars[$avatar[0]]["gm"] = $avatar[6]; } // $link = $mysql->connect($realm_db['addr'], $realm_db['user'], $realm_db['pass'], $realm_db['name']); $replies = $mysql->num_rows($posts); if ($replies == 0) { error($forum_lang["no_such_topic"]); } $post = $mysql->fetch_row($posts); $fid = $post[3]; $cat = 0; foreach ($forum_skeleton as $cid => $category) { foreach ($category["forums"] as $fid_ => $forum) { if ($fid_ == $fid) { $cat = $cid; } } } if (empty($forum_skeleton[$cat]["forums"][$fid])) { error($forum_lang["no_such_forum"]); } $forum = $forum_skeleton[$cat]["forums"][$fid]; if ($forum_skeleton[$cat]["level_read"] > $user_lvl || $forum["level_read"] > $user_lvl) { error($forum_lang["no_access"]); } if ($user_lvl == 0 && $enablesidecheck) { if ($forum_skeleton[$cat]["side_access"] != "ALL") { // Not an all side forum if ($side == "NO") { // No char continue; } else { if ($forum_skeleton[$cat]["side_access"] != $side) { // Forumside different of the user side continue; } } } if ($forum["side_access"] != "ALL") { // Not an all side forum if ($side == "NO") { // No char continue; } else { if ($forum["side_access"] != $side) { // Forumside different of the user side continue; } } } } $post[4] = htmlspecialchars($post[4]); $post[5] = htmlspecialchars($post[5]); $post[5] = bbcode_parse($post[5]); $output .= "<div class=\"top\"><h1>{$forum_lang["forums"]}</h1>{$forum_lang["you_are_here"]} : <a href=\"forum.php\">{$forum_lang["forum_index"]}</a> -> <a href=\"forum.php?action=view_forum&id={$fid}\">{$forum["name"]}</a> -> <a href=\"forum.php?action=view_topic&id={$id}\">{$post[4]}</a></div>\r\n <center><table class=\"lined\">\r\n <tr>\r\n <td style=\"width:15%;\">{$forum_lang["info"]}</td>\r\n <td style=\"text-align:left;\">{$forum_lang["text"]}</td>\r\n <td style=\"width:50%;text-align:right;\">"; if ($user_lvl > 0) { if ($post[8] == "1") { if ($post[7] == "1") { // Annoucement $output .= "{$forum_lang["annoucement"]}\r\n <a href=\"forum.php?action=edit_announce&id={$post[0]}&state=0\"><img src=\"img/forums/down.gif\" border=\"0\" alt=\"{$forum_lang["down"]}\" /></a>"; } else { // Sticky $output .= "{$forum_lang["sticky"]}\r\n <a href=\"forum.php?action=edit_stick&id={$post[0]}&state=0\"><img src=\"img/forums/down.gif\" border=\"0\" alt=\"{$forum_lang["down"]}\" /></a>\r\n <a href=\"forum.php?action=edit_announce&id={$post[0]}&state=1\"><img src=\"img/forums/up.gif\" border=\"0\" alt=\"{$forum_lang["up"]}\" /></a>"; } } else { if ($post[7] == "1") { // Annoucement $output .= "{$forum_lang["annoucement"]}\r\n <a href=\"forum.php?action=edit_announce&id={$post[0]}&state=0\"><img src=\"img/forums/down.gif\" border=\"0\" alt=\"{$forum_lang["down"]}\" /></a>"; } else { // Normal Topic $output .= "{$forum_lang["normal"]}\r\n <a href=\"forum.php?action=edit_stick&id={$post[0]}&state=1\"><img src=\"img/forums/up.gif\" border=\"0\" alt=\"{$forum_lang["up"]}\" /></a>"; } } if ($post[9] == "1") { $output .= " <a href=\"forum.php?action=edit_close&id={$post[0]}&state=0\"><img src=\"img/forums/lock.gif\" border=\"0\" alt=\"{$forum_lang["open"]}\" /></a>"; } else { $output .= " <a href=\"forum.php?action=edit_close&id={$post[0]}&state=1\"><img src=\"img/forums/unlock.gif\" border=\"0\" alt=\"{$forum_lang["close"]}\" /></a>"; } $output .= " <a href=\"forum.php?action=move_topic&id={$post[0]}\"><img src=\"img/forums/move.gif\" border=\"0\" alt=\"{$forum_lang["move"]}\" /></a>"; } if (isset($avatars[$post[1]])) { $avatar = gen_avatar_panel($avatars[$post[1]]["level"], $avatars[$post[1]]["sex"], $avatars[$post[1]]["race"], $avatars[$post[1]]["class"], 1, $avatars[$post[1]]["gm"]); } else { $avatar = ""; } $output .= "<tr><td style=\"width:15%;text-align:center;\"><center>{$avatar}</center>{$forum_lang["author"]} : "; if ($user_lvl > 0) { $output .= "<a href=\"user.php?action=edit_user&error=11&id={$post[1]}\">"; } if (isset($avatars[$post[1]])) { $output .= $avatars[$post[1]]["name"]; } else { $output .= $post[2]; } if ($user_lvl > 0) { $output .= "</a>"; } $output .= "<br /> {$forum_lang["at"]} : {$post[6]}</td>\r\n <td colspan=\"2\" style=\"text-align:left\">{$post[5]}<br /><div style=\"text-align:right;\">"; if ($user_lvl > 0 || $user_id == $post[1]) { $output .= "<a href=\"forum.php?action=edit_post&id={$post[0]}\"><img src=\"img/forums/edit.gif\" border=\"0\" alt=\"{$forum_lang["edit"]}\" /></a>\r\n <a href=\"forum.php?action=delete_post&id={$post[0]}\"><img src=\"img/forums/delete.gif\" border=\"0\" alt=\"{$forum_lang["delete"]}\" /></a>"; } $output .= "</div></td></tr>"; $closed = $post[9]; while ($post = $mysql->fetch_row($posts)) { $post[5] = htmlspecialchars($post[5]); $post[5] = bbcode_parse($post[5]); if (isset($avatars[$post[1]])) { $avatar = gen_avatar_panel($avatars[$post[1]]["level"], $avatars[$post[1]]["sex"], $avatars[$post[1]]["race"], $avatars[$post[1]]["class"], 1, $avatars[$post[1]]["gm"]); } else { $avatar = ""; } $output .= "<tr><td style=\"width:15%;text-align:center;\"><center>{$avatar}</center>{$forum_lang["author"]} : "; if ($user_lvl > 0) { $output .= "<a href=\"user.php?action=edit_user&error=11&id={$post[1]}\">"; } if (isset($avatars[$post[1]])) { $output .= $avatars[$post[1]]["name"]; } else { $output .= $post[2]; } if ($user_lvl > 0) { $output .= "</a>"; } $output .= "<br /> {$forum_lang["at"]} : {$post[6]}</td>\r\n <td colspan=\"2\" style=\"text-align:left;\">{$post[5]}<br />"; if ($user_lvl > 0 || $user_id == $post[1]) { $output .= "<div style=\"text-align:right;\"><a href=\"forum.php?action=edit_post&id={$post[0]}\"><img src=\"img/forums/edit.gif\" border=\"0\" alt=\"{$forum_lang["edit"]}\" /></a>\r\n <a href=\"forum.php?action=delete_post&id={$post[0]}\"><img src=\"img/forums/delete.gif\" border=\"0\" alt=\"{$forum_lang["delete"]}\" /></a></div>"; } $output .= "</td></tr>"; } $link = $mysql->connect($mmfpm_db['addr'], $mmfpm_db['user'], $mmfpm_db['pass'], $mmfpm_db['name']); $totalposts = $mysql->query("SELECT id FROM mm_forum_posts WHERE topic = '{$id}';"); $totalposts = $mysql->num_rows($totalposts); $pages = ceil($totalposts / $maxqueries); $output .= "<tr><td align=\"right\" colspan=\"3\">{$forum_lang["pages"]} : "; for ($x = 1; $x <= $pages; $x++) { $y = $x - 1; $output .= "<a href=\"forum.php?action=view_topic&id={$id}&page={$y}\">{$x}</a> "; } $output .= "</td></tr><tr><td align=\"right\" class=\"hidden\"></td></tr></table>"; // Quick reply form if (($user_lvl > 0 || !$closed) && ($forum_skeleton[$cat]["level_post"] <= $user_lvl && $forum["level_post"] <= $user_lvl)) { $output .= "<form action=\"forum.php?action=do_add_post\" method=\"POST\" name=\"form\">\r\n <table class=\"top_hidden\">\r\n <tr>\r\n <td align=\"left\">"; makebutton($forum_lang["post"], "javascript:do_submit()", 100); $output .= "</td><td align=\"right\">{$forum_lang["quick_reply"]}</td></tr>\r\n <tr><td colspan=\"2\">" . bbcode_editor_js() . "\r\n <a href=\"javascript:ajtBBCode('[b]','[/b]')\">{$forum_lang["bold"]}</a>,\r\n <a href=\"javascript:ajtBBCode('[i]','[/i]')\">{$forum_lang["italic"]}</a>,\r\n <a href=\"javascript:ajtBBCode('[u]','[/u]')\">{$forum_lang["underline"]}</a>,\r\n <a href=\"javascript:ajtBBCode('[img]','[/img]')\">{$forum_lang["image"]}</a>,\r\n <a href=\"javascript:ajtBBCode('[url]','[/url]')\">{$forum_lang["url"]}</a>,\r\n <a href=\"javascript:ajtBBCode('[url=Click here]','[/url]')\">{$forum_lang["url2"]}</a>,\r\n <a href=\"javascript:ajtBBCode('[code]','[/code]')\">{$forum_lang["code"]}</a>,\r\n <a href=\"javascript:ajtBBCode('[quote]','[/quote]')\">{$forum_lang["quote"]}</a>,\r\n <a href=\"javascript:ajtBBCode('[quote=Someone]','[/quote]')\">{$forum_lang["quote2"]}</a>,\r\n <a href=\"javascript:ajtBBCode('[media]','[/media]')\">{$forum_lang["media"]}</a>\r\n <a href=\"javascript:ajtBBCode('[youtube]','[/youtube]')\">{$forum_lang["YouTube"]}</a>\r\n {$forum_lang["color"]} : <select name=\"fontcolor\" onChange=\"ajtBBCode('[color=' + this.form.fontcolor.options[this.form.fontcolor.selectedIndex].value + ']', '[/color]'); this.selectedIndex=0;\" onMouseOver=\"helpline('fontcolor')\" style=\"background-color:#D7D7D7\">\r\n <option value=\"black\" style=\"color:black\">Black</option>\r\n <option value=\"silver\" style=\"color:silver\">Silver</option>\r\n <option value=\"gray\" style=\"color:gray\">Gray</option>\r\n <option value=\"maroon\" style=\"color:maroon\">Maroon</option>\r\n <option value=\"red\" style=\"color:red\">Red</option>\r\n <option value=\"purple\" style=\"color:purple\">Purple</option>\r\n <option value=\"fuchsia\" style=\"color:fuchsia\">Fuchsia</option>\r\n <option value=\"navy\" style=\"color:navy\">Navy</option>\r\n <option value=\"blue\" style=\"color:blue\">Blue</option>\r\n <option value=\"aqua\" style=\"color:aqua\">Aqua</option>\r\n <option value=\"teal\" style=\"color:teal\">Teal</option>\r\n <option value=\"lime\" style=\"color:lime\">Lime</option>\r\n <option value=\"green\" style=\"color:green\">Green</option>\r\n <option value=\"olive\" style=\"color:olive\">Olive</option>\r\n <option value=\"yellow\" style=\"color:yellow\">Yellow</option>\r\n <option value=\"white\" style=\"color:white\">White</option>\r\n </select>\r\n </td></tr><tr><td colspan=\"2\">\r\n <a href=\"javascript:ajtTexte(':)')\"><img style=\"border:0px;\" src=\"img/emoticons/smile.gif\"></a><a href=\"javascript:ajtTexte(':|')\"><img style=\"border:0px;\" src=\"img/emoticons/neutral.gif\"></a><a href=\"javascript:ajtTexte(':(')\"><img style=\"border:0px;\" src=\"img/emoticons/sad.gif\"></a><a href=\"javascript:ajtTexte(':D')\"><img style=\"border:0px;\" src=\"img/emoticons/razz.gif\"></a><a href=\"javascript:ajtTexte(':o')\"><img style=\"border:0px;\" src=\"img/emoticons/yikes.gif\"></a><a href=\"javascript:ajtTexte(';)')\"><img style=\"border:0px;\" src=\"img/emoticons/wink.gif\"></a><a href=\"javascript:ajtTexte(':/')\"><img style=\"border:0px;\" src=\"img/emoticons/hmm.gif\" /></a><a href=\"javascript:ajtTexte(':p')\"><img style=\"border:0px;\" src=\"img/emoticons/tongue.gif\"></a><a href=\"javascript:ajtTexte(':lol:')\"><img style=\"border:0px;\" src=\"img/emoticons/lol.gif\"></a><a href=\"javascript:ajtTexte(':mad:')\"><img style=\"border:0px;\" src=\"img/emoticons/angry.gif\"></a><a href=\"javascript:ajtTexte(':rolleyes:')\"><img style=\"border:0px;\" src=\"img/emoticons/roll.gif\"></a><a href=\"javascript:ajtTexte(':cool:')\"><img style=\"border:0px;\" src=\"img/emoticons/cool.gif\"></a>\r\n </td></tr></table><TEXTAREA NAME=\"msg\" ROWS=8 COLS=93></TEXTAREA><br/>\r\n <input type=\"hidden\" name=\"forum\" value=\"{$fid}\" />\r\n <input type=\"hidden\" name=\"topic\" value=\"{$id}\" />\r\n </form>"; } $output .= "</center>"; $mysql->close(); } else { $output .= "<div class=\"top\"><h1>Stand by...</h1></div>"; $post = $mysql->query("SELECT topic, id FROM mm_forum_posts WHERE id = '{$id}'"); // Get our post id if ($mysql->num_rows($post) == 0) { error($forum_lang["no_such_topic"]); } $post = $mysql->fetch_row($post); if ($post[0] == $post[1]) { redirect("forum.php?action=view_topic&id={$id}"); } $topic = $post[0]; $posts = $mysql->query("SELECT id FROM mm_forum_posts WHERE topic = '{$topic}';"); // Get posts in our topic $replies = $mysql->num_rows($posts); if ($replies == 0) { error($forum_lang["no_such_topic"]); } $row = 0; while ($post = $mysql->fetch_row($posts)) { // Find the row of our post, so we could have his ratio (topic x/total topics) and knew the page to show $row++; if ($topic == $id) { break; } } $page = 0; while ($page * $maxqueries < $row) { $page++; } $page--; $mysql->close(); redirect("forum.php?action=view_topic&id={$topic}&page={$page}"); } // Queries : 2 with id || 2 (+2) with postid }
public static function micsText($text, $mode = 'format') { // init and configure BBcode engine if (!isset($GLOBALS['bbcodeEngine'])) { function bbcode_clean_list($text) { return preg_replace("/[\r\n]/", '', $text); } $GLOBALS['bbcodeEngine'] = bbcode_create(array('' => array('type' => BBCODE_TYPE_ROOT, 'childs' => '!*'), 'h2' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<h2>', 'close_tag' => '</h2>'), 'h3' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<h3>', 'close_tag' => '</h3>'), 'h4' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<h4>', 'close_tag' => '</h4>'), 'h5' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<h5>', 'close_tag' => '</h5>'), 'h6' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<h6>', 'close_tag' => '</h6>'), 'i' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<i>', 'close_tag' => '</i>'), 'cite' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<cite>', 'close_tag' => '</cite>'), 'b' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<b>', 'close_tag' => '</b>'), 'u' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<u>', 'close_tag' => '</u>'), 's' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<s>', 'close_tag' => '</s>'), 'small' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<small>', 'close_tag' => '</small>'), 'quote' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<blockquote>', 'close_tag' => '</blockquote>'), 'sig' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<div class="sig">', 'close_tag' => '</div>'), 'url' => array('type' => BBCODE_TYPE_OPTARG, 'open_tag' => '<a href="{PARAM}" target="_blank">', 'close_tag' => '</a>', 'default_arg' => '{CONTENT}', 'childs' => 'b,i'), 'img' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<img src="', 'close_tag' => '" />', 'childs' => ''), 'list' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<ul>', 'close_tag' => '</ul>', 'childs' => '*', 'content_handling' => 'bbcode_clean_list'), '*' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<li>', 'close_tag' => '</li>', 'parent' => 'list', 'flags' => BBCODE_FLAGS_ONE_OPEN_PER_LEVEL), 'l' => array('type' => BBCODE_TYPE_SINGLE, 'open_tag' => '['), 'r' => array('type' => BBCODE_TYPE_SINGLE, 'open_tag' => ']'))); } if ($mode == 'strip') { return preg_replace('/\\[[^\\[]+\\]/', '', htmlspecialchars($text)); } else { // block elements $blockEls = 'h[1-6]|ul'; // encode and parse bbcode $text = @bbcode_parse($GLOBALS['bbcodeEngine'], htmlspecialchars($text)); // pad block elements with double newlines to break paragraphs $text = preg_replace('/\\s*<(' . $blockEls . ')>(.*?)<\\/\\1>\\s*/i', "\n\n<\$1>\$2</\$1>\n\n", $text); // trim ends $text = trim($text); // replace 4+ dashes with <hr> $text = preg_replace('/-{4,}/i', '<hr />', $text); // turn 2+ newlines into paragraphs $text = '<p>' . preg_replace('/\\s*\\n\\s*\\n\\s*/', '</p><p>', $text) . '</p>'; // remove paragraphs and newlines wrapping block-level elements $text = preg_replace('/\\s*<p>\\s*<(' . $blockEls . ')>(.*?)<\\/\\1>\\s*<\\/p>\\s*/i', '<$1>$2</$1>', $text); // simple character replacements $text = str_replace(array('--', '(r)', '(tm)', '(c)'), array('—', '®', '™', '©'), $text); // ordinals $text = preg_replace('/(\\d+)(st|nd|rd|th|st)\\b/i', '$1<sup>$2</sup>', $text); // turn remaining single newlines into brs $text = nl2br($text); return $text; } }
'url'=> array('type'=>BBCODE_TYPE_OPTARG, 'open_tag'=>'<a href="{PARAM}">', 'close_tag'=>'</a>', 'default_arg'=>'{CONTENT}', 'childs'=>'b,i'), 'img'=> array('type'=>BBCODE_TYPE_NOARG, 'open_tag'=>'<img src="', 'close_tag'=>'" />', 'childs'=>''), 'b'=> array('type'=>BBCODE_TYPE_NOARG, 'open_tag'=>'<b>', 'close_tag'=>'</b>'), 'br'=> array('type'=>BBCODE_TYPE_NOARG, 'open_tag'=>'<br>', 'close_tag'=>''), ); $BBHandler=bbcode_create($arrayBBCode); $comment = strip_tags($comment, ""); $comment = bbcode_parse($BBHandler,$comment); $xxx = "INSERT INTO `homepage` (text,postid) VALUES ('$comment','$_POST[id]')"; $result = mysql_query($xxx); if (!$result) { die('Invalid query'); } echo "Comment Submitted. Redirecting in 1..."; echo "<meta http-equiv=\"refresh\" content=\"1;url=http://cryptum.net/post_view.php?id=".$_POST[id].'"'.">"; } ?>
'url'=> array('type'=>BBCODE_TYPE_OPTARG, 'open_tag'=>'<a href="{PARAM}">', 'close_tag'=>'</a>', 'default_arg'=>'{CONTENT}', 'childs'=>'b,i'), 'img'=> array('type'=>BBCODE_TYPE_NOARG, 'open_tag'=>'<img src="', 'close_tag'=>'" />', 'childs'=>''), 'b'=> array('type'=>BBCODE_TYPE_NOARG, 'open_tag'=>'<b>', 'close_tag'=>'</b>'), 'br'=> array('type'=>BBCODE_TYPE_NOARG, 'open_tag'=>'<br>', 'close_tag'=>''), ); $BBHandler=bbcode_create($arrayBBCode); $text = strip_tags($_POST[text], ""); $text = bbcode_parse($BBHandler,$text); $user = encrypt($_SESSION["chatusername"],$key); $text = encrypt($text,$key); $q = "INSERT INTO `a` (`text`,`user`) VALUES ('$text','$user')"; //echo $q; mysql_query($q); //echo mysql_error(); } ?> <form action="channela.php" method="POST" id="forma"> <input type="hidden" id="chname" name="chname" value="a">
function bbcode_kotoba_mark($text, $board) { static $arrayBBCode = array('i' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<i>', 'close_tag' => '</i>', 'childs' => 'b,s,u'), 'b' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<b>', 'close_tag' => '</b>', 'childs' => 'i,s,u'), 'code' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<pre>', 'close_tag' => '</pre>'), 'spoiler' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<span class="spoiler" style="color: black;" onmouseover="this.style.color=\'white\';" onmouseout="this.style.color=\'black\'">', 'close_tag' => '</span>'), 's' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<s>', 'close_tag' => '</s>', 'childs' => 'b,i'), 'u' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<u>', 'close_tag' => '</u>', 'childs' => 'b,i'), 'ul' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<ul>', 'close_tag' => '</ul>', 'childs' => 'li'), 'ol' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<ol>', 'close_tag' => '</ol>', 'childs' => 'li'), 'li' => array('type' => BBCODE_TYPE_NOARG, 'open_tag' => '<li>', 'close_tag' => '</li>', 'childs' => 'i,b,s,u,spoiler'), 'url' => array('type' => BBCODE_TYPE_OPTARG, 'open_tag' => '<a href="{PARAM}">', 'close_tag' => '</a>', 'default_arg' => '{CONTENT}'), 'google' => array('type' => BBCODE_TYPE_OPTARG, 'open_tag' => '<a href="http://www.google.ru/search?q={PARAM}">', 'close_tag' => '</a>', 'content_handling' => 'google_content_handler', 'param_handling' => 'param_handler'), 'wiki' => array('type' => BBCODE_TYPE_OPTARG, 'open_tag' => '<a href="http://ru.wikipedia.org/wiki/{PARAM}">', 'close_tag' => '</a>', 'content_handling' => 'wiki_content_handler', 'param_handling' => 'param_handler'), 'quote' => array('type' => BBCODE_TYPE_OPTARG, 'open_tag' => '<span style="color:green;">', 'close_tag' => '</span>'), 'lurl' => array('type' => BBCODE_TYPE_OPTARG, 'open_tag' => '<a {PARAM}>', 'close_tag' => '</a>', 'content_handling' => 'lurl_content_handler', 'param_handling' => 'lurl_param_handler'), 'gurl' => array('type' => BBCODE_TYPE_OPTARG, 'open_tag' => '<a {PARAM}>', 'close_tag' => '</a>', 'content_handling' => 'gurl_content_handler', 'param_handling' => 'gurl_param_handler')); static $BBHandler = NULL; if ($BBHandler == NULL) { $BBHandler = bbcode_create($arrayBBCode); } $text = preg_replace('/>>>\\/(\\w+?)\\/(\\d+)/', '[gurl=$1/$2]/$1/$2[/gurl]', $text); $text = preg_replace('/>>(\\d+)/', "[lurl={$board}/\$1]\$1[/lurl]", $text); $text = preg_replace('/(>.+)/', '[quote]$1[/quote]', $text); return bbcode_parse($BBHandler, $text); }
/** * Performs the ::toHtml() processing using the BBCode extension * @param string $string * @return string * @access protected */ protected function _toHtmlExtension($string = '') { return bbcode_parse(bbcode_create(), $string); }
'b'=> array('type'=>BBCODE_TYPE_NOARG, 'open_tag'=>'<b>', 'close_tag'=>'</b>'), 'br'=> array('type'=>BBCODE_TYPE_NOARG, 'open_tag'=>'<br>', 'close_tag'=>''), ); $BBHandler=bbcode_create($arrayBBCode); $text = strip_tags($_POST[text], ""); $title = strip_tags($_POST[title], ""); $author = strip_tags($_POST[author], ""); $topic = strip_tags($_POST[topic], ""); $text = bbcode_parse($BBHandler,$text); $title = bbcode_parse($BBHandler,$title); $author = bbcode_parse($BBHandler,$author); $topic = bbcode_parse($BBHandler,$topic); if ($_SESSION['myusername'] != null) { $host="localhost"; // Host name $username="******"; // Mysql username $password=""; // Mysql password $db_name=""; // Database name $tbl_name="homepage"; // Table name // Connect to server and select databse. mysql_connect("$host", "$username", "$password")or die("cannot connect");
public function parse($str) { return bbcode_parse($this->bbcode, $str); }