コード例 #1
0
 public function actionIndex($user_id, $type = null)
 {
     $user = User::model()->throw404IfNull()->findByPk($user_id);
     switch ($type) {
         case null:
             $friends_ids = Friend::userFriendsIds($user->id);
             break;
         case 'in':
             $friends_ids = Friend::getIncomingFriendsIds($user_id);
             break;
         case 'out':
             $friends_ids = Friend::getOutcomingFriendsIds($user_id);
             break;
     }
     $model = new User();
     $model->unsetAttributes();
     if (isset($_GET['User'])) {
         $model->attributes = $_GET['User'];
     }
     $criteria = new CDbCriteria();
     $criteria->addInCondition('id', $friends_ids);
     $criteria->compare('name', trim($model->name), true);
     $criteria->compare('email', $model->email, true);
     $data_provider = new CActiveDataProvider('User', array('criteria' => $criteria));
     $this->render('index', array('data_provider' => $data_provider, 'user' => $user, 'type' => $type));
 }