public static function createComplaint($fromId, $onId, $content) { $model = new UserComplaints(); if ($model->findByAttributes(array('from_id' => $fromId, 'on_id' => $onId))) { return; } $model->from_id = $fromId; $model->on_id = $onId; $model->content = $content; $model->created_at = time(); if ($model->save()) { $count = $model->countByAttributes(array('on_id' => $onId)); if ($count % Yii::app()->params['user']['complaintsLimitBeforeBan'] == 0) { /** @var $user User */ $user = User::model()->findByPk($onId); $user->is_banned = TRUE; $user->save(); } } }