/** * Adds a section in the table of contents * * @param \Xily\Xml $xmlNode */ public function addSection($xmlNode) { if ($xmlNode->tag() == 'sect1') { $this->arrSections[] = array($xmlNode, array()); return sizeof($this->arrSections); } else { $key1 = sizeof($this->arrSections); if ($xmlNode->tag() == 'sect2') { $this->arrSections[$key1][1][] = array($xmlNode, array()); return $key1 . '.' . sizeof($this->arrSections[$key1][1]); } else { $key2 = sizeof($this->arrSections[$key1][1]); if ($xmlNode->tag() == 'sect3') { $this->arrSections[$key1][1][$key2][1] = array($xmlNode, array()); return $key1 . '.' . $key2 . '.' . sizeof($this->arrSections[$key1][1][$key2][1]); } else { $key3 = sizeof($this->arrSections[$key1][1][$key2][1]) - 1; if ($xmlNode->tag() == 'sect4') { $this->arrSections[$key1][1][$key2][1][$key3][1] = array($xmlNode, array()); return $key1 . '.' . $key2 . '.' . $key3 . '.' . sizeof($this->arrSections[$key1][1][$key2][1][$key3][1]); } } } } return false; }