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); }