summaryrefslogtreecommitdiff
path: root/src/HTML5/Serializer/Traverser.php
diff options
context:
space:
mode:
authorMatt Farina <[email protected]>2013-04-16 22:44:43 -0400
committerMatt Farina <[email protected]>2013-04-16 22:44:43 -0400
commit09de792de309eaaffe6153bf12e7a9b2bfe97f82 (patch)
treebd37b026611e9275810f7faf2fc7c1644f13f89c /src/HTML5/Serializer/Traverser.php
parentd1ea5d11c015bbad698af0dd300eb658fa532c5e (diff)
Converted the isBlock method to use a case insensitive mask and added tests for it.
Diffstat (limited to 'src/HTML5/Serializer/Traverser.php')
-rw-r--r--src/HTML5/Serializer/Traverser.php35
1 files changed, 8 insertions, 27 deletions
diff --git a/src/HTML5/Serializer/Traverser.php b/src/HTML5/Serializer/Traverser.php
index 9acc617..34faf5c 100644
--- a/src/HTML5/Serializer/Traverser.php
+++ b/src/HTML5/Serializer/Traverser.php
@@ -12,32 +12,7 @@ namespace HTML5\Serializer;
*/
class Traverser {
- // TODO: Refactor this into an element mask.
- static $block_elements = array(
- 'html' => 1,
- 'body' => 1,
- 'head' => 1,
- 'p' => 1,
- 'div' => 1,
- 'h1' => 1,
- 'h2' => 1,
- 'h3' => 1,
- 'h4' => 1,
- 'h5' => 1,
- 'h6' => 1,
- 'title' => 1,
- 'script' => 1,
- 'link' => 1,
- 'meta' => 1,
- 'section' => 1,
- 'article' => 1,
- 'table' => 1,
- 'tbody' => 1,
- 'tr' => 1,
- 'th' => 1,
- 'td' => 1,
- //'form' => 1,
- );
+ static $block_elements = 'html|body|head|p|div|h[1-6]|title|script|link|meta|section|article|table|tbody|tr|th|td';
// TODO: Refactor this into an element mask.
static $literal_elements = array(
@@ -300,9 +275,15 @@ class Traverser {
/**
* Is block element.
+ *
+ * @param string $name
+ * The name of the element to test if a block level element
+ *
+ * @return bool
+ * If the element is block level or not.
*/
protected function isBlock($name) {
- return isset(self::$block_elements[$name]);
+ return (bool)preg_match('/^(' . self::$block_elements . ')$/i', $name);
}
protected function isLiteral($element) {