Step 1. Put this method into your WebUser class:
public function getFlashKeys ( )
{
$counters=$this->getState(self::FLASH_COUNTERS);
if(empty($counters))
return array();
return array_keys($counters);
}
Step 2. Put this piece of code into your layout or view where a flash message would be appropriate:
<?php
$user=Yii::app()->user();
foreach($user->getFlashKeys() as $key):
if($user->hasFlash($key)): ?>
<div class="flash-<?php echo $key; ?>">
<?php echo $user->getFlash($key); ?>
</div>
<?php
endif;
endforeach;
?>
Step 3. Put lines of code similar to these where appropriate to notify the user of the corresponding event types:
Yii::app()->user()->setFlash('error','Could not save data to the database.');
Yii::app()->user()->setFlash('notice','There was nothing to save.');
Yii::app()->user()->setFlash('success','The data was successfully saved to the database.');
Step 4. Put these lines of code your css file
div.flash-error, div.flash-notice, div.flash-success
{ padding:.8em; margin-bottom:1em; border:2px solid #ddd; }
div.flash-error{ background:#FBE3E4; color:#8a1f11; border-color:#FBC2C4; }
div.flash-notice { background:#FFF6BF; color:#514721; border-color:#FFD324; }
div.flash-success { background:#E6EFC2; color:#264409; border-color:#C6D880; }
div.flash-error a { color:#8a1f11; }
div.flash-notice a { color:#514721; }
div.flash-success a { color:#264409; }