public function search($type, $limit = 500)
    {
        list($criteria, $sort) = $this->getCriteriaRatingByType($type);

        $exp = new CActiveDataProvider($this, array(
            'criteria' => $criteria,
            'pagination' => array(
                'pageSize' => $limit,
            ),
            'sort' => array(
                'defaultOrder' => $sort,
            ),
        ));
        return $exp;
    }
    public function getCriteriaRatingByType($type)
    {
        $criteria = new CDbCriteria;

        if ($type == 6) {
            $criteria->select = '*, case
                            when t.`rating_workday` >= 10 THEN t.rating_value*1000
                            else rating_value
                            end as rating_value_test';
        } else {
            $criteria->select = '*, rating_value as rating_value_test';
        }

        $criteria->join = 'LEFT OUTER JOIN `admin_user` `rxUser` ON (`t`.`rx_user` = `rxUser`.`uid`)';

        $criteria->compare('rx_ratingtype', $type);
        $criteria->compare('rating_value', $this->rating_value);

        $sort = 'rating_value_test DESC';

        if (isset($_POST['rating_date'])) {
            $this->resetScope();
            $criteria->addCondition("rating_date='" . $_POST['rating_date'] . "'");
            if ($_POST['rating_date'] >= '1506') {
                $sort .= ', rating_workday DESC, rx_user ASC';
            }
        }
        $criteria->addCondition('t.rx_user in (select uid from admin_user WHERE admin_user.role = "USER" and admin_user.role_status = 3)');

        // исключение из рейтинга определенных пользователей
        $criteria->addNotInCondition('t.rx_user', array('896'));

        if (isset($_POST['rx_area']) and (Yii::app()->user->role == User::ROLE_ADMIN or Yii::app()->user->role == User::ROLE_MODERATOR)) {
            $criteria->addCondition("rx_area=" . $_POST['rx_area']);
            return array($criteria, $sort);
        } else {
            if (Yii::app()->user->rx_area) {
                $criteria->addCondition("rx_area=" . Yii::app()->user->rx_area);
                return array($criteria, $sort);
            } else {
                $criteria->addCondition("rx_area=1");
                return array($criteria, $sort);
            }
        }
    }