Beispiel #1
0
 public function actionFollowListTrainer()
 {
     if (empty(\Yii::$app->request->get('access-token'))) {
         return ApiHelper::errorResponse(["Incorrect Access."], 403);
     }
     $search = \Yii::$app->request->get('search_name');
     $model = new $this->modelClass();
     $return = array();
     $follower = $model->findIdentityByAccessToken(\Yii::$app->request->get('access-token'));
     $users = User::find()->innerJoin('payment_informations', 'users.user_id = payment_informations.payment_user_id')->andWhere("`users`.`user_id` IN (SELECT `user_id` FROM `user_followers` WHERE `follower_id` = {$follower->id})")->orderBy('`payment_informations`.`payment_user_status`');
     if ($search) {
         $users = $users->andWhere("(payment_informations.payment_first_name LIKE '%{$search}%' OR payment_informations.payment_last_name LIKE '%{$search}%')");
     }
     $provider = new ActiveDataProvider(['query' => $users]);
     $users = $this->serializeData($provider);
     foreach ($users['items'] as $user) {
         $return[] = array_merge($user, ["following" => User::isUserFollowing($user['user_id'], null, \Yii::$app->request->get('access-token'))]);
     }
     return ApiHelper::successResponse($return);
 }