Example #1
0
 /**
  * Parse children. We override this because the xml DOM hierarchy has rows, columns, and cells as children of table
  * we need to change the idml element hierarchy so tables are parents of rows which are parents of cells
  * @param DOMElement $parentNode
  */
 protected function parseChildren($parentNode)
 {
     foreach ($parentNode->childNodes as $childNode) {
         if (IdmlParserHelper::isParsableChildIdmlObjectNode($childNode)) {
             $parsableObject = IdmlElementFactory::createFromNode($childNode);
             if (is_object($parsableObject)) {
                 //set the parent first since sometimes parse requires or sets parent data
                 $parsableObject->parentElement = $this;
                 if (!IdmlParserHelper::isIdmlTagNode($childNode) && IdmlParserHelper::getIdmlObjectType($parsableObject) != "TableCell") {
                     $this->childrenElements[] = $parsableObject;
                     //don't set IdmlTable as parent for IdmlTableCell
                 }
                 $parsableObject->parse($childNode);
             }
         }
     }
 }