add pagination to API

This commit is contained in:
Nihad Abbasov 2012-09-03 04:46:29 -07:00
parent 6817a6a295
commit 76e4d94d43
6 changed files with 16 additions and 5 deletions

View file

@ -14,6 +14,10 @@ module Gitlab
@project
end
def paginate(object)
object.page(params[:page]).per(params[:per_page].to_i)
end
def authenticate!
error!({'message' => '401 Unauthorized'}, 401) unless current_user
end

View file

@ -9,7 +9,7 @@ module Gitlab
# Example Request:
# GET /issues
get do
present current_user.issues, with: Entities::Issue
present paginate(current_user.issues), with: Entities::Issue
end
end
@ -21,7 +21,7 @@ module Gitlab
# Example Request:
# GET /projects/:id/issues
get ":id/issues" do
present user_project.issues, with: Entities::Issue
present paginate(user_project.issues), with: Entities::Issue
end
# Get a single project issue

View file

@ -11,7 +11,7 @@ module Gitlab
# Example Request:
# GET /projects/:id/milestones
get ":id/milestones" do
present user_project.milestones, with: Entities::Milestone
present paginate(user_project.milestones), with: Entities::Milestone
end
# Get a single project milestone

View file

@ -9,7 +9,7 @@ module Gitlab
# Example Request:
# GET /projects
get do
@projects = current_user.projects
@projects = paginate current_user.projects
present @projects, with: Entities::Project
end

View file

@ -9,7 +9,7 @@ module Gitlab
# Example Request:
# GET /users
get do
@users = User.all
@users = paginate User
present @users, with: Entities::User
end