Scenarios are an extremely useful tool for separating validation tasks on any class you use derived from CModel. In this tutorial we will use CActiveRecord.
Like gmail, if you have tree or more unsuccessful login attemps a captcha appears
Search Models are a very elegant and powerful way to build an Active Data Provider. If you use them a lot, you'll quickly need to use scenarios, which will lead you to a very DRY Controller code.
Ok, it is a little bit difficult to full understanding the unsafe validator.