/** * Make a Bootstrap3 Nav * * @author Giuseppe Di Terlizzi <*****@*****.**> * * @param string $html * @param string $type (= pills, tabs, navbar) * @param boolean $staked * @param string $optional_class * @return string **/ function bootstrap3_nav($html, $type = '', $stacked = false, $optional_class = '') { $classes[] = 'nav'; $classes[] = $optional_class; switch ($type) { case 'navbar': case 'navbar-nav': $classes[] = 'navbar-nav'; break; case 'pills': case 'tabs': $classes[] = "nav-{$type}"; break; } if ($stacked) { $classes[] = 'nav-stacked'; } $class = implode(' ', $classes); $output = str_replace(array('<ul class="', '<ul>'), array("<ul class=\"{$class} ", "<ul class=\"{$class}\">"), $html); $output = bootstrap3_lists($output); return $output; }
/** * Return the TOC rendered to XHTML with Bootstrap3 style * * @author Andreas Gohr <*****@*****.**> * @author Giuseppe Di Terlizzi <*****@*****.**> * * @param array $toc * @return string html */ function bootstrap3_html_toc($toc) { if (!count($toc)) { return ''; } global $lang; $out = ''; $out .= '<!-- TOC START -->' . DOKU_LF; $out .= '<nav id="dokuwiki__toc" role="navigation" class="small">' . DOKU_LF; $out .= '<h6 data-toggle="collapse" data-target="#dokuwiki__toc .toc-body" title="' . $lang['toc'] . '" class="toc-title"><i class="fa fa-fw fa-th-list"></i> '; $out .= '<span>' . $lang['toc'] . '</span>'; $out .= ' <i class="caret"></i></h6>' . DOKU_LF; $out .= '<div class="toc-body collapse in">' . DOKU_LF; $out .= bootstrap3_lists(html_buildlist($toc, 'nav toc', 'html_list_toc', 'html_li_default', true)) . DOKU_LF; $out .= '</div>' . DOKU_LF; $out .= '</nav>' . DOKU_LF; $out .= '<!-- TOC END -->' . DOKU_LF; return $out; }