/** * * @param Model_Navigation_Page $page * @param integer $priority * @return \Model_Navigation_Section */ public function add_page(Model_Navigation_Abstract &$page, $priority = 1) { $priority = (int) $priority; if (!ACL::check($page->permissions)) { return $this; } if (isset($page->priority)) { $priority = (int) $page->priority; } if ($page instanceof Model_Navigation_Section) { $this->_sections[] = $page; $page->set_section($this); } else { if (isset($this->_pages[$priority])) { while (isset($this->_pages[$priority])) { $priority++; } } $this->_pages[$priority] = $page; } $page->set_section($this); return $this->update()->sort(); }
/** * * @param boolean $status * @return \Model_Navigation_Page */ public function set_active($status = TRUE) { parent::set_active($status); $this->_section->set_active($status); return $this; }