protected function build_thirdlevelsubmenu($docid, rsContainer $Li, $alt_select_first = false)
 {
     $Menu = new rsMenu($Li->subordinate('div', array('class' => 'menu thirdlevel')), $this->db);
     $first = true;
     foreach ($this->get_sublevel_documents($docid) as $menuItem) {
         $Li = $Menu->add_doc($menuItem);
         if ($first) {
             $firstLi = $Li;
             $firstId = $menuItem['id'];
             if ($Menu->is_active($menuItem['id'])) {
                 $Menu->select_item($Li, $menuItem['id']);
             }
             $first2 = false;
         }
     }
     if ($alt_select_first && $Menu->get_active() == null) {
         $Menu->select_item($firstLi, $firstId);
         $this->build_thirdlevelsubmenu($Menu->get_active(), $firstLi);
         $this->docid = $firstId;
     }
 }
Example #2
0
 protected function build_submenu(rsContainer $Container, $root = null, $active = null)
 {
     if (!$root) {
         $root = $this->active_menu_element;
     }
     $Page = new rsPage($this->active_menu_element, $this->db);
     $Submenu = $Container->subordinate('div', array('id' => 'submenu'));
     $Menu = new rsMenu($Submenu, $this->db, $active ? $active : $this->docid);
     foreach ($this->get_sublevel_documents($root) as $menuItem) {
         $Li = $Menu->add_doc($menuItem);
         if ($menuItem['id'] == $Menu->get_active() && $menuItem['offspring'] > 0) {
             $Menu2 = new rsMenu($Li->subordinate('div', array('class' => 'menu thirdlevel')), $this->db);
             foreach ($this->get_sublevel_documents($menuItem['id']) as $menuItem2) {
                 $Menu2->add_doc($menuItem2);
             }
         }
     }
     return $Submenu;
 }