forked from Ermlab/nxt-gitlab
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathProjectIssues.coffee
More file actions
31 lines (26 loc) · 877 Bytes
/
ProjectIssues.coffee
File metadata and controls
31 lines (26 loc) · 877 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
BaseModel = require '../BaseModel'
Utils = require '../Utils'
class ProjectIssues extends BaseModel
list: (projectId, params = {}, fn = null) =>
@debug "ProjectIssues::issues()"
if 'function' is typeof params
fn = params
params = {}
params.page ?= 1
params.per_page ?= 100
do (->
data = []
cb = (err, retData) =>
if err
return fn data if fn
if retData.length == params.per_page
@debug "Recurse ProjectIssues::list()"
data = data.concat(retData)
params.page++
return @get "projects/#{Utils.parseProjectId projectId}/issues", params, cb
else
data = data.concat(retData)
return fn data if fn
@get "projects/#{Utils.parseProjectId projectId}/issues", params, cb
).bind(@)
module.exports = (client) -> new ProjectIssues client