public function getIndex() { $page = 1; if (Input::has('page')) { $page = Input::get('page'); } $query = User::orderBy('display_name', 'asc')->where('track_count', '>', 0); $count = $query->count(); $perPage = 40; $query->skip(($page - 1) * $perPage)->take($perPage); $users = []; foreach ($query->get() as $user) { $users[] = ['id' => $user->id, 'name' => $user->display_name, 'slug' => $user->slug, 'url' => $user->url, 'is_archived' => $user->is_archived, 'avatars' => ['small' => $user->getAvatarUrl(Image::SMALL), 'normal' => $user->getAvatarUrl(Image::NORMAL)], 'created_at' => $user->created_at]; } return Response::json(["artists" => $users, "current_page" => $page, "total_pages" => ceil($count / $perPage)], 200); }