Ejemplo n.º 1
0
 /**
  * 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;
 }