diff --git a/theme/noname/classes/output/core_renderer.php b/theme/noname/classes/output/core_renderer.php index 3dc30c382a8..e302adef7b9 100644 --- a/theme/noname/classes/output/core_renderer.php +++ b/theme/noname/classes/output/core_renderer.php @@ -16,6 +16,7 @@ namespace theme_noname\output; +use coding_exception; use html_writer; use tabobject; use tabtree; @@ -168,14 +169,8 @@ class core_renderer extends \core_renderer { if (empty($tabtree->subtree)) { return ''; } - $firstrow = $secondrow = ''; - foreach ($tabtree->subtree as $tab) { - $firstrow .= $this->render($tab); - if (($tab->selected || $tab->activated) && !empty($tab->subtree) && $tab->subtree !== array()) { - $secondrow = $this->tabtree($tab->subtree); - } - } - return html_writer::tag('ul', $firstrow, array('class' => 'nav nav-tabs')) . $secondrow; + $data = $tabtree->export_for_template($this); + return $this->render_from_template('core/tabtree', $data); } /** @@ -188,20 +183,7 @@ class core_renderer extends \core_renderer { * @return string HTML fragment */ protected function render_tabobject(tabobject $tab) { - if (($tab->selected and (!$tab->linkedwhenselected)) or $tab->activated) { - return html_writer::tag('li', html_writer::tag('a', $tab->text), array('class' => 'active')); - } else if ($tab->inactive) { - return html_writer::tag('li', html_writer::tag('a', $tab->text), array('class' => 'disabled')); - } else { - if (!($tab->link instanceof moodle_url)) { - // backward compartibility when link was passed as quoted string - $link = "link\" title=\"$tab->title\">$tab->text"; - } else { - $link = html_writer::link($tab->link, $tab->text, array('title' => $tab->title)); - } - $params = $tab->selected ? array('class' => 'active') : null; - return html_writer::tag('li', $link, $params); - } + throw new coding_exception('Tab objects should not be directly rendered.'); } /** diff --git a/theme/noname/templates/core/tabtree.mustache b/theme/noname/templates/core/tabtree.mustache new file mode 100644 index 00000000000..de2cf736fde --- /dev/null +++ b/theme/noname/templates/core/tabtree.mustache @@ -0,0 +1,10 @@ +
+{{#secondrow}} + {{>core/tabtree}} +{{/secondrow}}