Skip to content

Commit 35c0107

Browse files
committedFeb 16, 2015
allow comments on commits
1 parent 5ffd274 commit 35c0107

File tree

1 file changed

+16
-5
lines changed

1 file changed

+16
-5
lines changed
 

Diff for: ‎server.js

+16-5
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,11 @@ if (!apiKey) {
66
throw new Error("GITHUB_API_KEY not set");
77
}
88

9-
var makeComment = function(issueNumber, bodyMsg, cb) {
9+
var makeComment = function(issueNumberOrSha, commentType, bodyMsg, cb) {
1010
var postData = JSON.stringify({ body: bodyMsg });
1111
var options = {
1212
hostname: 'api.github.com',
1313
port: 443,
14-
path: '/repos/code-cracker/code-cracker/issues/' + issueNumber + '/comments',
1514
method: 'POST',
1615
headers: {
1716
'Authorization': 'token ' + apiKey,
@@ -20,6 +19,11 @@ var makeComment = function(issueNumber, bodyMsg, cb) {
2019
'User-Agent': 'CodeCracker Bot'
2120
}
2221
};
22+
if (commentType === 'issue') {
23+
options.path = '/repos/code-cracker/code-cracker/issues/' + issueNumberOrSha + '/comments';
24+
} else if (commentType === 'commit') {
25+
options.path = '/repos/code-cracker/code-cracker/commits/' + issueNumberOrSha + '/comments';
26+
}
2327
var error = "";
2428
var callbackCalled = false;
2529
var req = https.request(options, function(res) {
@@ -77,13 +81,20 @@ http.createServer(function (req, res) {
7781
res.end('Body missing in json.');
7882
return;
7983
}
80-
if (!parsedBodyMsg.issueNumber) {
84+
if (!parsedBodyMsg.issueNumber & !parsedBodyMsg.sha) {
8185
res.writeHead(500);
82-
res.end('Issue number missing in json.');
86+
res.end('Issue number and sha missing in json.');
8387
return;
8488
}
8589

86-
makeComment(parsedBodyMsg.issueNumber, parsedBodyMsg.body, function(err){
90+
if (parsedBodyMsg.issueNumber) {
91+
var commentType = 'issue';
92+
var issueNumberOrSha = parsedBodyMsg.issueNumber;
93+
} else {
94+
var commentType = 'commit';
95+
var issueNumberOrSha = parsedBodyMsg.sha;
96+
}
97+
makeComment(issueNumberOrSha, commentType, parsedBodyMsg.body, function(err){
8798
if (err) {
8899
console.log(err);
89100
res.writeHead(500);

0 commit comments

Comments
 (0)