<?php require_once "../Parser.php"; require_once "../visitors/SmileyVisitor.php"; error_reporting(E_ALL); $parser = new JBBCode\Parser(); $parser->addCodeDefinitionSet(new JBBCode\DefaultCodeDefinitionSet()); if (count($argv) < 2) { die("Usage: " . $argv[0] . " \"bbcode string\"\n"); } $inputText = $argv[1]; $parser->parse($inputText); $smileyVisitor = new \JBBCode\visitors\SmileyVisitor(); $parser->accept($smileyVisitor); echo $parser->getAsHTML() . "\n";
public function testAttributes() { $parser = new JBBCode\Parser(); $builder = new JBBCode\CodeDefinitionBuilder('img', '<img src="{param}" height="{height}" alt="{alt}" />'); $parser->addCodeDefinition($builder->setUseOption(true)->setParseContent(false)->build()); $expected = 'Multiple <img src="http://jbbcode.com/img.png" height="50" alt="alt text" /> options.'; $code = 'Multiple [img height="50" alt="alt text"]http://jbbcode.com/img.png[/img] options.'; $parser->parse($code); $result = $parser->getAsHTML(); $this->assertEquals($expected, $result); $code = 'Multiple [img height=50 alt="alt text"]http://jbbcode.com/img.png[/img] options.'; $parser->parse($code); $result = $parser->getAsHTML(); $this->assertEquals($expected, $result); }
/** * Gets html from bbcode. * * @param string $bbcode * @return string */ public function getHtmlFromBBCode($bbcode) { require_once APPLICATION_PATH . '/libraries/jbbcode/Parser.php'; $parser = new \JBBCode\Parser(); $parser->addCodeDefinitionSet(new \JBBCode\DefaultCodeDefinitionSet()); $builder = new \JBBCode\CodeDefinitionBuilder('quote', '<div class="quote">{param}</div>'); $parser->addCodeDefinition($builder->build()); $builder = new \JBBCode\CodeDefinitionBuilder('list', '<ul>{param}</ul>'); $parser->addCodeDefinition($builder->build()); $builder = new \JBBCode\CodeDefinitionBuilder('*', '<li>{param}</li>'); $parser->addCodeDefinition($builder->build()); $builder = new \JBBCode\CodeDefinitionBuilder('email', '<a href="mailto:{param}">{param}</a>'); $parser->addCodeDefinition($builder->build()); $builder = new \JBBCode\CodeDefinitionBuilder('img', '<img src="{param}" alt="Image">'); $parser->addCodeDefinition($builder->build()); $builder = new \JBBCode\CodeDefinitionBuilder('i', '<em>{param}</em>'); $parser->addCodeDefinition($builder->build()); $builder = new \JBBCode\CodeDefinitionBuilder('u', '<u>{param}</u>'); $parser->addCodeDefinition($builder->build()); $builder = new \JBBCode\CodeDefinitionBuilder('url', '<a href="{option}">{param}</a>'); $builder->setUseOption(true)->setOptionValidator(new \JBBCode\validators\UrlValidator()); $parser->addCodeDefinition($builder->build()); $builder = new \JBBCode\CodeDefinitionBuilder('code', '<pre class="code">{param}</pre>'); $builder->setParseContent(false); $parser->addCodeDefinition($builder->build()); $parser->parse($bbcode); return $parser->getAsHTML(); }
foreach ($rows as $r) { $parser->parse($mtg->format($r['message'], true)); ?> <tr> <td width="25%" valign="top"> <strong><?php echo $_GET['ID'] == $r['sender'] ? $users->name($_GET['ID']) : 'You'; ?> wrote:</strong><br /> <span class="small"><?php echo date('F j, Y, g:i:s a', strtotime($r['time_sent'])); ?> </span> </td> <td valign="top"><?php echo str_replace('[username]', $users->name($my['id']), $parser->getAsHTML()); ?> </td> </tr><?php } } ?> </table><?php } } else { if ($set['captcha_messages']) { $_POST['captcha_code'] = array_key_exists('captcha_code', $_POST) && ctype_digit($_POST['captcha_code']) && strlen($_POST['captcha_code']) == 6 ? $_POST['captcha_code'] : null; if ($securimage->check($_POST['captcha_code']) == false) { $mtg->error('You didn\'t enter a valid code'); } }