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.
		
		
		
		
			
				
					43 lines
				
				1003 B
			
		
		
			
		
	
	
					43 lines
				
				1003 B
			| 
											8 years ago
										 | <?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);
 | ||
|  |         }
 | ||
|  |     }
 | ||
|  | }
 |