Commit 70f41387 by Kartik Visweswaran

Update Alert.php to add some refinements and clean up bugs.

Added closeButton parameter, assignment of CSS class corrected, and added php doc comments.
parent 1c56edd0
...@@ -24,8 +24,17 @@ use yii\bootstrap\Alert as BsAlert; ...@@ -24,8 +24,17 @@ use yii\bootstrap\Alert as BsAlert;
*/ */
class Alert extends Widget class Alert extends Widget
{ {
private $_doNotRender = true; /**
* @var array the allowed bootstrap alert types.
*/
public $allowedTypes = ['error', 'danger', 'success', 'info', 'warning']; public $allowedTypes = ['error', 'danger', 'success', 'info', 'warning'];
/**
* @var array the options for rendering the close button tag.
*/
public $closeButton = [];
private $_doNotRender = true;
public function init() public function init()
{ {
...@@ -35,11 +44,12 @@ class Alert extends Widget ...@@ -35,11 +44,12 @@ class Alert extends Widget
foreach ($flashes as $type => $message) { foreach ($flashes as $type => $message) {
if (in_array($type, $this->allowedTypes)) { if (in_array($type, $this->allowedTypes)) {
$class = ($type === 'error') ? 'alert-danger' : 'alert-' . $type; $class = ($type === 'error') ? 'alert-danger' : 'alert-' . $type;
Html::addCssClass($this->options, $class); $this->options['class'] = $class;
echo BsAlert::widget([ echo BsAlert::widget([
'body' => $message, 'body' => $message,
'closeButton' => $this->closeButton,
'options' => $this->options 'options' => $this->options
]); ]);
$session->removeFlash($type); $session->removeFlash($type);
$this->_doNotRender = false; $this->_doNotRender = false;
} }
......
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