/** * Assign navigation tabs to the template. * * @param string $page Current active page. * @return null */ protected function generate_navigation($page) { $nav_ary = $this->get_navigation_options(); // Display nav menu $this->display->generate_nav($nav_ary, $page, 'attention'); // Generate the main breadcrumbs $this->display->generate_breadcrumbs(array($this->user->lang['MANAGE'] => $this->helper->route('phpbb.titania.manage'))); if ($page) { $this->display->generate_breadcrumbs(array($nav_ary[$page]['title'] => $nav_ary[$page]['url'])); } }
/** * Generate navigation tabs. * * @param string $page Active page. * @return null */ protected function generate_navigation($page) { $nav_ary = array('details' => array('title' => 'AUTHOR_DETAILS', 'url' => $this->author->get_url()), 'contributions' => array('title' => 'AUTHOR_CONTRIBS', 'url' => $this->author->get_url('contributions')), 'support' => array('title' => 'AUTHOR_SUPPORT', 'url' => $this->author->get_url('support'), 'auth' => $this->is_owner && $this->cache->get_author_contribs($this->author->user_id, $this->types, $this->user)), 'create' => array('title' => 'NEW_CONTRIBUTION', 'url' => $this->author->get_url('create'), 'auth' => $this->is_owner && $this->auth->acl_get('u_titania_contrib_submit')), 'manage' => array('title' => 'MANAGE_AUTHOR', 'url' => $this->author->get_url('manage'), 'auth' => $this->is_owner || $this->auth->acl_get('u_titania_mod_author_mod'))); // Display nav menu $this->display->generate_nav($nav_ary, $page, 'details'); // Generate the main breadcrumbs $this->display->generate_breadcrumbs(array($this->author->username => $this->author->get_url())); if ($page != 'details') { $this->display->generate_breadcrumbs(array($nav_ary[$page]['title'] => $nav_ary[$page]['url'])); } }
/** * Assign navigation tabs. * * @param string $page Current active page. * @return null */ protected function generate_navigation($page) { // Count the number of FAQ items to display $flags = count::get_flags($this->access->get_level()); $faq_count = count::from_db($this->contrib->contrib_faq_count, $flags); $is_disabled = in_array($this->contrib->contrib_status, array(TITANIA_CONTRIB_CLEANED, TITANIA_CONTRIB_DISABLED)); /** * Menu Array * * 'filename' => array( * 'title' => 'nav menu title', * 'url' => $page_url, * 'auth' => ($can_see_page) ? true : false, // Not required, always true if missing * ), */ $nav_ary = array('details' => array('title' => 'CONTRIB_DETAILS', 'url' => $this->contrib->get_url()), 'faq' => array('title' => 'CONTRIB_FAQ', 'url' => $this->contrib->get_url('faq'), 'auth' => !$this->access->is_public() || $faq_count, 'count' => $faq_count), 'support' => array('title' => 'CONTRIB_SUPPORT', 'url' => $this->contrib->get_url('support'), 'auth' => $this->ext_config->support_in_titania || $this->access->get_level() < access::PUBLIC_LEVEL), 'demo' => array('title' => 'CONTRIB_DEMO', 'url' => '', 'auth' => !empty($this->contrib->contrib_demo)), 'manage' => array('title' => 'CONTRIB_MANAGE', 'url' => $this->contrib->get_url('manage'), 'auth' => $this->is_author && $this->auth->acl_get('u_titania_post_edit_own') && !$is_disabled || $this->auth->acl_get('u_titania_mod_contrib_mod') || $this->contrib->type->acl_get('moderate'))); if ($this->contrib->contrib_demo) { $demo_menu = array(); $allowed_branches = $this->contrib->type->get_allowed_branches(true); krsort($allowed_branches); $is_external = $this->contrib->contrib_status != TITANIA_CONTRIB_APPROVED || !$this->contrib->options['demo']; foreach ($allowed_branches as $branch => $name) { $demo_url = $this->contrib->get_demo_url($branch, !$is_external); if ($demo_url) { $demo_menu[] = array('url' => $demo_url, 'title' => $name, 'external' => $is_external); } } if (sizeof($demo_menu) == 1) { $nav_ary['demo']['url'] = $demo_menu[0]['url']; $nav_ary['demo']['external'] = $demo_menu[0]['external']; } else { if (!empty($demo_menu)) { $nav_ary['demo']['sub_menu'] = $demo_menu; } else { unset($nav_ary['demo']); } } } $this->display->generate_nav($nav_ary, $page, 'details'); }