PATH:
home
/
letacommog
/
letaweb
/
protected
/
extensions
/
yiibooster
/
widgets
<?php /** *## TbButtonGroupColumn class file. * * @author Topher Kanyuga <kanjoti@gmail.com> * @copyright * @license [New BSD License](http://www.opensource.org/licenses/bsd-license.php) */ Yii::import('booster.widgets.TbButtonColumn'); /** *## Enhanced bootstrap button column widget. * * Renders the buttons as a button group * * @package booster.widgets.grids.columns */ class TbButtonGroupColumn extends TbButtonColumn { /** * @var string the button size ('mini','small','normal','large') */ public $buttonSize = 'mini'; /** * @var string the view button context ('info','primary','warning','danger','success' defaults to 'info'). */ public $viewButtonContext = 'info'; /** * @var string the update button context ('info','primary','warning','danger','success' defaults to 'warning'). */ public $updateButtonContext = 'warning'; /** * @var string the delete button context ('info','primary','warning','danger','success' defaults to 'danger') */ public $deleteButtonContext = 'danger'; /** *### .initDefaultButtons() * * Initializes the default buttons (view, update and delete). */ protected function initDefaultButtons() { parent::initDefaultButtons(); if ($this->viewButtonContext !== false && !isset($this->buttons['view']['context'])) { $this->buttons['view']['context'] = $this->viewButtonContext; } if ($this->updateButtonContext !== false && !isset($this->buttons['update']['context'])) { $this->buttons['update']['context'] = $this->updateButtonContext; } if ($this->deleteButtonContext !== false && !isset($this->buttons['delete']['context'])) { $this->buttons['delete']['context'] = $this->deleteButtonContext; } } /** *### .renderButton() * * Renders a link button. * * @param string $id the ID of the button * @param array $button the button configuration which may contain 'label', 'url', 'imageUrl' and 'options' elements. * @param integer $row the row number (zero-based) * @param mixed $data the data object associated with the row */ protected function renderButton($id, $button, $row, $data) { if (isset($button['visible']) && !$this->evaluateExpression( $button['visible'], array('row' => $row, 'data' => $data) ) ) { return; } $label = isset($button['label']) ? $button['label'] : $id; $url = isset($button['url']) ? $this->evaluateExpression($button['url'], array('data' => $data, 'row' => $row)) : '#'; $options = isset($button['options']) ? $button['options'] : array(); if (!isset($options['title'])) { $options['title'] = $label; } if (!isset($options['data-toggle'])) { $options['data-toggle'] = 'tooltip'; } if (!isset($options['class'])) { $options['class'] = ''; } $options['class'] .= ' btn btn-' . $this->buttonSize; if (isset($button['context'])) { $options['class'] .= ' btn-' . $button['context']; } if (isset($button['icon'])) { if (strpos($button['icon'], 'icon') === false && strpos($button['icon'], 'fa') === false) { $button['icon'] = 'icon-' . implode(' icon-', explode(' ', $button['icon'])); } echo CHtml::link('<i class="' . $button['icon'] . '"></i>', $url, $options); } else if (isset($button['imageUrl']) && is_string($button['imageUrl'])) { echo CHtml::link(CHtml::image($button['imageUrl'], $label), $url, $options); } else { echo CHtml::link($label, $url, $options); } } /** *### .renderDataCellContent() * * Renders the data cell content. * This method renders the view, update and delete buttons in the data cell. * * @param integer $row the row number (zero-based) * @param mixed $data the data associated with the row */ protected function renderDataCellContent($row, $data) { $tr = array(); ob_start(); foreach ($this->buttons as $id => $button) { $this->renderButton($id, $button, $row, $data); $tr['{' . $id . '}'] = ob_get_contents(); ob_clean(); } ob_end_clean(); echo "<div class='btn-group'>" . strtr($this->template, $tr) . "</div>"; } }
[+]
..
[-] TbTabView.php
[edit]
[-] TbNavbar.php
[edit]
[-] TbHighCharts.php
[edit]
[-] TbPager.php
[edit]
[-] TbLabel.php
[edit]
[-] TbActiveForm.php
[edit]
[-] TbPanel.php
[edit]
[-] TbJsonButtonColumn.php
[edit]
[-] TbModalManager.php
[edit]
[-] TbToggleColumn.php
[edit]
[-] TbUiLayout.php
[edit]
[-] TbBaseMenu.php
[edit]
[-] widgets.md
[edit]
[-] TbEditableDetailView.php
[edit]
[-] TbButtonGroup.php
[edit]
[-] TbEditable.php
[edit]
[-] TbFileUpload.php
[edit]
[-] TbEditableField.php
[edit]
[-] TbTags.php
[edit]
[-] TbFormButtonElement.php
[edit]
[-] TbFormInputElement.php
[edit]
[-] TbJsonPager.php
[edit]
[-] TbCollapse.php
[edit]
[-] TbBulkActions.php
[edit]
[-] TbRelationalColumn.php
[edit]
[-] TbTabs.php
[edit]
[-] TbModal.php
[edit]
[-] TbExtendedGridView.php
[edit]
[-] TbJumbotron.php
[edit]
[-] TbImageGallery.php
[edit]
[-] TbWidget.php
[edit]
[-] TbMenu.php
[edit]
[-] TbProgress.php
[edit]
[-] TbButtonColumn.php
[edit]
[-] TbJsonToggleColumn.php
[edit]
[-] TbJsonPickerColumn.php
[edit]
[-] TbColorPicker.php
[edit]
[-] TbButtonGroupColumn.php
[edit]
[-] TbSwitch.php
[edit]
[-] TbHeroUnit.php
[edit]
[-] TbDatePicker.php
[edit]
[-] TbJsonCheckBoxColumn.php
[edit]
[-] TbButton.php
[edit]
[-] TbTypeahead.php
[edit]
[-] TbForm.php
[edit]
[-] TbPassfield.php
[edit]
[-] TbEditableColumn.php
[edit]
[-] TbMarkdownEditorJs.php
[edit]
[-] TbPopoverColumn.php
[edit]
[-] TbMarkdownEditor.php
[edit]
[-] TbAlert.php
[edit]
[-] TbGroupGridView.php
[edit]
[-] TbBaseInputWidget.php
[edit]
[-] TbWizard.php
[edit]
[-] TbGroupButtonColumn.php
[edit]
[-] TbExtendedFilter.php
[edit]
[-] TbGoogleVisualizationChart.php
[edit]
[-] TbHtml5Editor.php
[edit]
[-] TbGridView.php
[edit]
[-] TbListView.php
[edit]
[-] TbTimePicker.php
[edit]
[-] TbJsonGridView.php
[edit]
[-] TbCKEditor.php
[edit]
[-] TbTotalSumColumn.php
[edit]
[-] TbDateRangePicker.php
[edit]
[-] TbBadge.php
[edit]
[-] TbDropdown.php
[edit]
[-] TbBreadcrumbs.php
[edit]
[-] TbJsonGridColumn.php
[edit]
[-] TbDateTimePicker.php
[edit]
[-] TbDataColumn.php
[edit]
[-] TbCarousel.php
[edit]
[-] TbJsonDataColumn.php
[edit]
[-] TbRedactorJs.php
[edit]
[-] TbThumbnails.php
[edit]
[-] TbScrollSpy.php
[edit]
[-] TbDetailView.php
[edit]
[+]
input
[-] TbSelect2.php
[edit]
[-] TbImageColumn.php
[edit]