Files
koodiklinikka.fi-api/services/github.js
Riku Rouvila 0ddd7e22ad implement service methods for finding users from github by email and for returning every member registered to slack
needed these for inviting people from slack to our github organization
2015-03-05 21:55:22 +02:00

60 lines
1.4 KiB
JavaScript

'use strict';
var request = require('superagent');
var config = require('../lib/config');
var Promise = require('bluebird');
module.exports = {
/**
* Fetch five latest events from GitHub organization
*/
getEvents: function(amount) {
return new Promise(function(resolve, reject) {
request
.get('https://api.github.com/orgs/koodiklinikka/events?per_page=' + amount)
.set('Authorization', 'token ' + config.github.token)
.end(function(error, response){
if(error) {
reject(error);
}
resolve(response.body);
});
});
},
/**
* Fetch all the public members of the GitHub organization
*/
getMembers: function() {
return new Promise(function(resolve, reject) {
request
.get('https://api.github.com/orgs/koodiklinikka/public_members')
.set('Authorization', 'token ' + config.github.token)
.end(function(error, response){
if (error) {
reject(error);
}
resolve(response.body);
});
});
},
/**
* Search member by email
*/
findUserByEmail: function(email) {
return new Promise(function(resolve, reject) {
request
.get('https://api.github.com/search/users')
.query({q: email})
.set('Authorization', 'token ' + config.github.token)
.end(function(error, response){
if (error) {
reject(error);
}
resolve(response.body);
});
});
}
};