/** * Display the specified resource. * * @param int $id * @param int $statusHttp * * @return Response */ public function show($id, $statusHttp = 200) { $user = User::with('teacher', 'student', 'admin')->findOrFail($id, array('id', 'first_name', 'middle_name', 'last_name', 'email', 'phone')); return Response::json(['user' => $user], $statusHttp); }
/** * Выдает список пользователей, * с выборкой по полю enabled, либо всех пользователей. * * Параметры: * state = enabled|disabled|all выборка по полю "enabled", значение по умолчанию "enabled" * sort = created|updated Сортировка по полю "created_at" или "updated_at", по умолчанию "created" * direction = asc|desc Направление сортировки, по умолчанию "desc" * * Для использования параметров запроса — предваритрельн вызвать "validateParameters()" * * Постранично. Параметры запроса страниц (не обязательные): * page — N страницы, * per_page — количество на странице. * * @return \Illuminate\Pagination\Paginator */ public function showUsers() { $params = $this->getParameters(); $users = null; if ($params->state == 'all') { $users = User::with('teacher', 'student', 'admin')->orderBy($params->sort, $params->direction)->paginate($params->per_page, array('id', 'first_name', 'middle_name', 'last_name', 'created_at', 'updated_at')); } else { $users = User::with('teacher', 'student', 'admin')->whereEnabled($params->state)->orderBy($params->sort, $params->direction)->paginate($params->per_page, array('id', 'first_name', 'middle_name', 'last_name', 'created_at', 'updated_at')); } return $users; }