/** * Parses the text inside a new size bbcode node. * * @param SizeBbcodeNode $node * @return SizeBbcodeNode */ protected function parseSizeBbcodeNode(SizeBbcodeNode $node) { $first_rbracket_pos = strpos($this->_string, ']', $this->_pos - 1); $equal_pos = strpos($this->_string, '=', $this->_pos - 1); if ($equal_pos !== false && $first_rbracket_pos !== false && $equal_pos < $first_rbracket_pos) { $sizeval = substr($this->_string, $equal_pos + 1, $first_rbracket_pos - $equal_pos - 1); if (preg_match('#^\\d+(px|%|em|cm|mm|in|pt|pc)?$#', $sizeval)) { $node->setSize($sizeval); } $this->_pos = $first_rbracket_pos + 1; $this->parseContent(); } // else treat as text return $node; }
public function test_isEmpty2() { $nnode = new SizeBbcodeNode(); $nnode->setSize("14px"); $this->assertTrue($nnode->isEmpty()); }