10 Yii::import(
'booster.widgets.TbTabs');
47 $hasActiveItem =
false;
48 foreach (
$tabs as $tab) {
49 $hasActiveItem = isset($tab[
'active']) ? $tab[
'active'] :
false;
56 foreach (
$tabs as $tab) {
59 if (isset($item[
'visible']) && $item[
'visible'] ===
false) {
65 if (!$hasActiveItem &&
$i == 0) {
66 $item[
'active'] =
true;
70 if (isset($item[
'title'])) {
71 if (!isset($item[
'label'])) {
72 $item[
'label'] = $item[
'title'];
74 unset($item[
'title']);
78 if (!isset($item[
'itemOptions'])) {
79 $item[
'itemOptions'] = array();
82 $item[
'linkOptions'][
'data-toggle'] =
'tab';
84 if (isset($tab[
'items'])) {
87 if (!isset($item[
'id'])) {
88 $item[
'id'] = $id .
'_tab_' . (
$i + 1);
91 $item[
'url'] =
'#' . $item[
'id'];
97 if (!isset($item[
'content'])) {
98 if (isset($item[
'view'])) {
99 if (isset($item[
'data'])) {
100 if (is_array($this->viewData)) {
101 $data = array_merge($this->viewData, $item[
'data']);
103 $data = $item[
'data'];
106 unset($item[
'data']);
111 $item[
'content'] = $this->getController()->renderPartial($item[
'view'],
$data,
true);
113 unset($item[
'view']);
115 $item[
'content'] =
'';
120 $content = $item[
'content'];
121 unset($item[
'content']);
123 if (!isset($item[
'paneOptions'])) {
124 $item[
'paneOptions'] = array();
127 $paneOptions = $item[
'paneOptions'];
128 unset($item[
'paneOptions']);
130 $paneOptions[
'id'] = $item[
'id'];
132 $classes = array(
'tab-pane fade');
134 if (isset($item[
'active']) && $item[
'active']) {
135 $classes[] =
'active in';
138 $classes = implode(
' ', $classes);
139 if (isset($paneOptions[
'class'])) {
140 $paneOptions[
'class'] .=
' ' . $classes;
142 $paneOptions[
'class'] = $classes;
145 $panes[] = CHtml::tag(
'div', $paneOptions, $content);