gitlab
Version:
GitLab API Nodejs library.
57 lines (45 loc) • 1.43 kB
text/coffeescript
BaseModel = require '../BaseModel'
class Users extends BaseModel
init: =>
= 'UserKeys'
all: (params = {}, fn = null) =>
if 'function' is typeof params
fn = params
params = {}
"Users::all()"
params.page ?= 1
params.per_page ?= 100
data = []
cb = (err, retData) =>
if err
return fn(retData || data) if fn
else if retData.length == params.per_page
"Recurse Users::all()"
data = data.concat(retData)
params.page++
return "users", params, cb
else
data = data.concat(retData)
return fn data if fn
"users", params, cb
current: (fn = null) =>
"Users::current()"
"user", (data) -> fn data if fn
show: (userId, fn = null) =>
"Users::show()"
"users/#{parseInt userId}", (data) => fn data if fn
create: (params = {}, fn = null) =>
"Users::create()", params
"users", params, (data) -> fn data if fn
session: (email, password, fn = null) =>
"Users::session()"
params =
email: email
password: password
"session", params, (data) -> fn data if fn
search: (emailOrUsername, fn = null) =>
"Users::search(#{emailOrUsername})"
params =
search: emailOrUsername
"users", params, (data) -> fn data if fn
module.exports = (client) -> new Users client