nav() public static method

Generates a navigation menu.
public static nav ( string $type, array $items, array $htmlOptions = [] ) : string
$type string the menu type.
$items array the menu items.
$htmlOptions array additional HTML attributes.
return string the generated menu.
Esempio n. 1
0
 /**
  * Runs the widget.
  */
 public function run()
 {
     if (!empty($this->items)) {
         //echo TbHtml::nav($this->type, $this->items, $this->htmlOptions);
         echo TbHtml::nav($this->type, $this->items, $this->htmlOptions, $this->submenuHtmlOptions);
         //add submenuHtmlOptions parameter
     }
 }
Esempio n. 2
0
 /**
  * Runs the widget.
  */
 public function run()
 {
     if (!empty($this->items)) {
         echo TbHtml::nav($this->type, $this->items, $this->htmlOptions);
     }
 }
Esempio n. 3
0
 /**
  * Renders tab navigation
  */
 public function renderTabsNavigation()
 {
     $navOptions = TbHtml::popOption('menuOptions', $this->htmlOptions, array());
     echo TbHtml::nav($this->type, $this->menuItems, $navOptions);
 }
Esempio n. 4
0
 public function testNav()
 {
     $I = $this->codeGuy;
     $html = TbHtml::nav(TbHtml::NAV_TYPE_NONE, array(array('label' => 'Link', 'url' => '#')), array('stacked' => true));
     $nav = $I->createNode($html, 'ul.nav');
     $I->seeNodeCssClass($nav, 'nav-stacked');
 }
Esempio n. 5
0
 /**
  * Generates a tabbable menu.
  * @param string $type the menu type.
  * @param array $tabs the tab configurations.
  * @param array $htmlOptions additional HTML attributes.
  * @return string the generated menu.
  */
 public static function tabbable($type, $tabs, $htmlOptions = array())
 {
     $htmlOptions = self::addClassName('tabbable', $htmlOptions);
     $placement = self::popOption('placement', $htmlOptions);
     if (!empty($placement)) {
         $htmlOptions = self::addClassName('tabs-' . $placement, $htmlOptions);
     }
     $menuOptions = self::popOption('menuOptions', $htmlOptions, array());
     $contentOptions = self::popOption('contentOptions', $htmlOptions, array());
     $contentOptions = self::addClassName('tab-content', $contentOptions);
     $panes = array();
     $menu = TbHtml::nav($type, self::normalizeTabs($tabs, $panes), $menuOptions);
     $content = TbHtml::tag('div', $contentOptions, implode('', $panes));
     $output = TbHtml::openTag('div', $htmlOptions);
     $output .= $placement === self::TABS_PLACEMENT_BELOW ? $content . $menu : $menu . $content;
     $output .= '</div>';
     return $output;
 }