in src/server/api/cla.js [127:162]
async countCLA(req) {
let params = req.args
try {
if (params.gist && params.gist.gist_url && params.gist.gist_version && (params.repoId || params.orgId)) {
throw 'invalid parameters provided'
}
const item = await this.getLinkedItem(req)
if (!item) {
throw new Error('no item found')
}
params.token = item.token
params.sharedGist = item.sharedGist
if (item.orgId) {
params.orgId = item.orgId
} else if (item.repoId) {
params.repoId = item.repoId
}
params.gist = params.gist && params.gist.gist_url ? params.gist : {
gist_url: item.gist
}
const gist = await cla.getGist(params)
if (!gist) {
let error = `No gist found ${removeToken(req.args)}`
logger.warn(new Error(error).stack)
throw error
}
params.gist.gist_version = gist.history[0].version
} catch (e) {
logger.info(`${e} There is no such item for args: ${removeToken(req.args)}`)
throw (`${e} There is no such item`)
}
const clas = await cla.getAll(params)
return clas.length
}