You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							42 lines
						
					
					
						
							1003 B
						
					
					
				
			
		
		
	
	
							42 lines
						
					
					
						
							1003 B
						
					
					
				<?php | 
						|
namespace frontend\widgets; | 
						|
 | 
						|
use Yii; | 
						|
use yii\base\Widget; | 
						|
 | 
						|
class Alert extends Widget | 
						|
{ | 
						|
    public $alertTypes = [ | 
						|
        'error'   => 'alert-danger', | 
						|
        'danger'  => 'alert-danger', | 
						|
        'success' => 'alert-success', | 
						|
        'info'    => 'alert-info', | 
						|
        'warning' => 'alert-warning' | 
						|
    ]; | 
						|
 | 
						|
    public function run() | 
						|
    { | 
						|
        $session = Yii::$app->session; | 
						|
        $flashes = $session->getAllFlashes(); | 
						|
 | 
						|
        foreach ($flashes as $type => $flash) { | 
						|
            if (!isset($this->alertTypes[$type])) { | 
						|
                continue; | 
						|
            } | 
						|
 | 
						|
	        foreach ((array) $flash as $i => $message) { | 
						|
 | 
						|
		        $html = <<<HTML | 
						|
<div class="alert {$this->alertTypes[$type]} alert-dismissible fade show" role="alert"> | 
						|
  {$message} | 
						|
  <!--<button type="button" class="close" data-dismiss="alert" aria-label="Close"> | 
						|
    <span aria-hidden="true">×</span> | 
						|
  </button>--> | 
						|
</div> | 
						|
HTML; | 
						|
		        echo $html; | 
						|
	        } | 
						|
            $session->removeFlash($type); | 
						|
        } | 
						|
    } | 
						|
}
 | 
						|
 |