Commit f651e723 by Antonio Ramirez

refactored label render

parent 3647c3f1
...@@ -64,6 +64,10 @@ class Button extends Widget ...@@ -64,6 +64,10 @@ class Button extends Widget
*/ */
public $label; public $label;
/** /**
* @var array the HTML attributes of the button.
*/
public $buttonOptions = array();
/**
* @var array list of menu items in the dropdown. Each array element represents a single * @var array list of menu items in the dropdown. Each array element represents a single
* menu with the following structure: * menu with the following structure:
* *
...@@ -120,16 +124,23 @@ class Button extends Widget ...@@ -120,16 +124,23 @@ class Button extends Widget
protected function renderLabel() protected function renderLabel()
{ {
$label = $this->encodeLabels ? Html::encode($this->label) : $this->label; $label = $this->encodeLabels ? Html::encode($this->label) : $this->label;
$options = array('class' => 'btn dropdown-toggle', 'data-toggle' => 'dropdown'); $this->addCssClass($this->buttonOptions, 'btn');
$splitButton = '';
if ($this->split) { if ($this->split) {
$tag = 'button'; $tag = 'button';
$label .= Html::tag('button', '<span class="caret"></span>', $options); $options = $this->buttonOptions;
$options = array('class' => 'btn'); $this->buttonOptions['data-toggle'] = 'dropdown';
$this->addCssClass($this->buttonOptions, 'dropdown-toggle');
$splitButton = Html::tag('button', '<span class="caret"></span>', $this->buttonOptions);
} else { } else {
$tag = 'a'; $tag = 'a';
$options = $this->buttonOptions;
if (!isset($options['href'])) {
$options['href'] = '#'; $options['href'] = '#';
} }
return Html::tag($tag, $label, $options); $options['data-toggle'] = 'dropdown';
}
return Html::tag($tag, $label, $options) . "\n" . $splitButton;
} }
/** /**
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment