{"action":"created","comment":{"url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/pulls/comments/71986373","id":71986373,"diff_hunk":"@@ -45,157 +53,164 @@ function main () {\n     console.log(\"Server started listening on port: \" + port);\n     io.on('connection', function (socket) {\n         let called = false; //this prevents users from spamming the \"submit\" button on the client and have us execute the same request too many times\n-        let ApiKey = \"\"; //the API-Key we got from the requesting\n         let region = \"\"; //the summoner's region\n         let summonerName = \"\"; //the summoner's name\n-        let version = \"\"; //the current version of the game, for the square pictures we decided to always use the latest ones\n-        let championsMap = {}; //a custom object containing info we need about the summoner's champions\n-        let toSend = {}; //the final thing to send to the client for it to print the info\n \n         socket.on(\"client info\", function (data) {\n             if (called == false){\n                 called = true;\n                 let tmp = data.split(\",\");\n                 summonerName = tmp[0];\n                 region = tmp[1].toLowerCase();\n-                // this async.waterfall is our whole function for the code. It calls other waterfalls and all the function in this file\n-                async.waterfall([\n-                    async.apply(getGameInfo, ApiKey, toSend, championsMap, region, summonerName, version),\n-                ], function (err, ApiKey, toSend, championsMap, region, summonerName, version) {\n-                    if (!err) {\n-                        socket.emit(\"info sent\", toSend);\n-                        called = false;\n-                    }\n-                });\n+                var a = sendInfo();\n+\n+              function sendInfo() {\n+                Promise.all([\n+                    getGameInfo(region),\n+                    getPlayerInfo(region, summonerName)\n+                  ])\n+                  .then(values => {\n+                    var send = mergeInfo(values[0], values[1]);\n+                    socket.emit(\"info sent\", send);\n+                    called = false;\n+                  });\n+\n+                function mergeInfo(versionChampions, playerInfo){\n+                  let toSend = {};\n+\n+                  let championsMap = versionChampions[1];\n+                  let champMasteries = playerInfo[1];\n+                  toSend.infos = playerInfo[0];\n+\n+                  for (let i = 0; i < champMasteries.length; ++i) {\n+                    let champId = champMasteries[i].championId;\n+                    let urlSquare = \"http://ddragon.leagueoflegends.com/cdn/\" + versionChampions[0] + \"/img/champion/\" + championsMap[champId][0] + \".png\";\n+                    champMasteries[i].name = championsMap[champId][1];\n+                    champMasteries[i].riotName = championsMap[champId][0];\n+                    champMasteries[i].urlImage = urlSquare;\n+\n+                    champId = championsMap[champId];\n+                  }\n+                  toSend.champMasteries = champMasteries;\n+                  return toSend;\n+                }\n+              }\n             }\n         });\n     });\n }\n \n-function getGameInfo(ApiKey, toSend, championsMap, region, summonerName, version, callback) {\n-    async.waterfall([\n-        async.apply(getApiKey, pathToYourApiKey, ApiKey, toSend, championsMap, region, summonerName, version),\n-        getVersion,\n-        getChampionsJson,\n-        getPlayerInfo\n-    ], function (err, ApiKey, toSend, championsMap, region, summonerName, version) {\n-        callback(null, ApiKey, toSend, championsMap, region, summonerName, version);\n-    });\n-}\n+function getGameInfo(region) {\n+  function logError(e) {\n+    console.error(\"error is:\" + e);\n+    throw (e);\n+  }\n+  var a = getVersion(region);\n+  var b = a.then(function (version) {\n+    let req = \"http://ddragon.leagueoflegends.com/cdn/\" + version + \"/data/en_US/champion.json \" ;\n \n-function getApiKey(file, ApiKey, toSend, championsMap, region, summonerName, version, callback) {\n-    ApiKey = require(file);\n-    callback(null, ApiKey, toSend, championsMap, region, summonerName, version);\n-}\n+    return new Promise(function(resolve, reject) {\n+      request(req, function (error, response, body) {\n+        let championsMap = {};\n \n-function getVersion (ApiKey, toSend, championsMap, region, summonerName, version, callback) {\n-    let req = \"https://global.api.pvp.net/api/lol/static-data/\" + region + \"/v1.2/versions?api_key=\" + ApiKey;\n-    request(req, function (error, response, body) {\n         if (!error && response.statusCode == 200) {\n-            let str = JSON.parse(body);\n-            version = str[0];\n-            callback(null, ApiKey, toSend, championsMap, region, summonerName, version);\n+          let str = JSON.parse(body);\n+          delete str.type;\n+          delete str.format;\n+          delete str.version;\n+          str = str.data;\n+          for (let champ in str) {\n+            let champTmp = [];\n+            champTmp.push(str[champ].id);\n+            champTmp.push(str[champ].name);\n+            championsMap[str[champ].key] = champTmp;\n+          }\n+          resolve(championsMap);\n         }\n         else {\n-            if (error && response) {\n-                console.log(\"Problem with the request, error is: \" + error + \" with status code \" + response.statusCode);\n-            }\n+          console.log(\"ERROR\");\n+          if (error && response) {\n+            console.log(\"Problem with the request, error is: \" + error + \" with status code \" + response.statusCode);\n+          }\n+          return Promise.resolve(\"Fail\");\n         }\n+      });\n     });\n+  });\n+\n+  var all = b.then(function(val) {\n+    //console.log(val);\n+  });\n+  return Promise.all([a, b]);\n+\n }\n \n-function getChampionsJson (ApiKey, toSend, championsMap, region, summonerName, version, callback) {\n-    let req = \"http://ddragon.leagueoflegends.com/cdn/\" + version + \"/data/en_US/champion.json \" ;\n-    request(req, function (error, response, body) {\n-        if (!error && response.statusCode == 200) {\n+function getVersion (region) {\n+    let req = \"https://global.api.pvp.net/api/lol/static-data/\" + region + \"/v1.2/versions?api_key=\" + ApiKey;\n+    return rp({uri: req, json: true})\n+      .then(function (data) {\n+        let version = \"\";\n+        version = data[0];\n+        return Promise.resolve(version);\n+      })\n+      .catch(function(e) {\n+        console.log(\"get version request failed\");\n+        return Promise.resolve(\"Request Fail\");\n+      })\n+    ;\n+}\n+\n+function getPlayerInfo(region, summonerName) {\n+  let a = getSummonerId(region, summonerName);\n+  let b = a.then(function(infos) {\n+    let req = \"https://\" + region + \".api.pvp.net/championmastery/location/\" + PLATFORMS[region] + \"/player/\" + infos.id + \"/champions?api_key=\" + ApiKey;\n+    return new Promise (function(resolve, reject) {\n+        request(req, function (error, response, body) {\n+          if (!error && response.statusCode == 200) {\n             let str = JSON.parse(body);\n-            delete str.type;\n-            delete str.format;\n-            delete str.version;\n-            str = str.data;\n-            for (let champ in str) {\n-                let champTmp = [];\n-                champTmp.push(str[champ].id);\n-                champTmp.push(str[champ].name);\n-                championsMap[str[champ].key] = champTmp;\n+            for (let i = 0; i < str.length; ++i) {\n+              delete str[i].playerId;\n+              delete str[i].lastPlayTime;\n+              delete str[i].championPointsSinceLastLevel;\n             }\n-            callback(null, ApiKey, toSend, championsMap, region, summonerName, version);\n-        }\n-        else {\n-            if (error && response) {\n-                console.log(\"Problem with the request, error is: \" + error + \" with status code \" + response.statusCode);\n+            resolve(str);\n+          }\n+          else {\n+            if (error && response){\n+              console.log(\"Problem with the request, error is: \" + error + \" with status code \" + response.statusCode);\n             }\n-        }\n-    });\n-}\n-\n-function getPlayerInfo(ApiKey, toSend, championsMap, region, summonerName, version, callback) {\n-    async.waterfall([\n-        async.apply(getSummonerId, ApiKey, toSend, championsMap, region, summonerName, version),\n-        getSummonerMasteries,\n-        mergeInfo\n-    ], function (err, ApiKey, toSend, championsMap, region, summonerName, version) {\n-        callback(null, ApiKey, toSend, championsMap, region, summonerName, version);\n+          }\n+        });\n+      });\n     });\n+  let all = b.then(function (value) {\n+  });\n+return Promise.all([a, b]);\n }\n \n-function getSummonerId(ApiKey, toSend, championsMap, region, summonerName, version, callback) {\n+function getSummonerId(region, summonerName) {\n     let req = \"https://\" + region + \".api.pvp.net/api/lol/\" + region + \"/v1.4/summoner/by-name/\" + summonerName + \"?api_key=\" + ApiKey;\n     let sN = summonerName.replace(/\\s+/g, '');\n     sN = sN.toLowerCase();\n-    request(req, function (error, response, body) {\n+    return new Promise (function(resolve, reject) {\n+      request(req, function (error, response, body) {\n         if (!error && response.statusCode == 200) {\n-            let str = JSON.parse(body);\n-            let id = {};\n-            id.id = str[sN].id;\n-            id.name = str[sN].name;\n-            id.region = region;\n-            id.icon = \"http://ddragon.leagueoflegends.com/cdn/6.9.1/img/profileicon/\" + str[sN].profileIconId + \".png\";\n-            id.level = str[sN].summonerLevel;\n-            callback(null, id, ApiKey, toSend, championsMap, region, summonerName, version);\n+          let str = JSON.parse(body);\n+          let id = {};","path":"server.js","position":253,"original_position":253,"commit_id":"00dc08851ed3930ff9fb77f8b787982ed475b674","original_commit_id":"00dc08851ed3930ff9fb77f8b787982ed475b674","user":{"login":"geekuillaume","id":1301701,"avatar_url":"https://avatars.githubusercontent.com/u/1301701?v=3","gravatar_id":"","url":"https://api.github.com/users/geekuillaume","html_url":"https://github.com/geekuillaume","followers_url":"https://api.github.com/users/geekuillaume/followers","following_url":"https://api.github.com/users/geekuillaume/following{/other_user}","gists_url":"https://api.github.com/users/geekuillaume/gists{/gist_id}","starred_url":"https://api.github.com/users/geekuillaume/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/geekuillaume/subscriptions","organizations_url":"https://api.github.com/users/geekuillaume/orgs","repos_url":"https://api.github.com/users/geekuillaume/repos","events_url":"https://api.github.com/users/geekuillaume/events{/privacy}","received_events_url":"https://api.github.com/users/geekuillaume/received_events","type":"User","site_admin":false},"body":"Directly create the object as: ```\r\nlet id = {\r\n  id: str[sN].id,\r\n  ...\r\n};","created_at":"2016-07-24T10:42:25Z","updated_at":"2016-07-24T10:42:25Z","html_url":"https://github.com/FrancoisPala/RiotAPIChallenge2016/pull/1#discussion_r71986373","pull_request_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/pulls/1","_links":{"self":{"href":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/pulls/comments/71986373"},"html":{"href":"https://github.com/FrancoisPala/RiotAPIChallenge2016/pull/1#discussion_r71986373"},"pull_request":{"href":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/pulls/1"}}},"pull_request":{"url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/pulls/1","id":78574059,"html_url":"https://github.com/FrancoisPala/RiotAPIChallenge2016/pull/1","diff_url":"https://github.com/FrancoisPala/RiotAPIChallenge2016/pull/1.diff","patch_url":"https://github.com/FrancoisPala/RiotAPIChallenge2016/pull/1.patch","issue_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/issues/1","number":1,"state":"open","locked":false,"title":"Promises + closures","user":{"login":"FrancoisPala","id":4431910,"avatar_url":"https://avatars.githubusercontent.com/u/4431910?v=3","gravatar_id":"","url":"https://api.github.com/users/FrancoisPala","html_url":"https://github.com/FrancoisPala","followers_url":"https://api.github.com/users/FrancoisPala/followers","following_url":"https://api.github.com/users/FrancoisPala/following{/other_user}","gists_url":"https://api.github.com/users/FrancoisPala/gists{/gist_id}","starred_url":"https://api.github.com/users/FrancoisPala/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/FrancoisPala/subscriptions","organizations_url":"https://api.github.com/users/FrancoisPala/orgs","repos_url":"https://api.github.com/users/FrancoisPala/repos","events_url":"https://api.github.com/users/FrancoisPala/events{/privacy}","received_events_url":"https://api.github.com/users/FrancoisPala/received_events","type":"User","site_admin":false},"body":"","created_at":"2016-07-23T15:01:11Z","updated_at":"2016-07-24T10:42:25Z","closed_at":null,"merged_at":null,"merge_commit_sha":"433d89e663f647be56685f1708c1c20ae2272abe","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/pulls/1/commits","review_comments_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/pulls/1/comments","review_comment_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/pulls/comments{/number}","comments_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/issues/1/comments","statuses_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/statuses/00dc08851ed3930ff9fb77f8b787982ed475b674","head":{"label":"FrancoisPala:Promises-+-closures","ref":"Promises-+-closures","sha":"00dc08851ed3930ff9fb77f8b787982ed475b674","user":{"login":"FrancoisPala","id":4431910,"avatar_url":"https://avatars.githubusercontent.com/u/4431910?v=3","gravatar_id":"","url":"https://api.github.com/users/FrancoisPala","html_url":"https://github.com/FrancoisPala","followers_url":"https://api.github.com/users/FrancoisPala/followers","following_url":"https://api.github.com/users/FrancoisPala/following{/other_user}","gists_url":"https://api.github.com/users/FrancoisPala/gists{/gist_id}","starred_url":"https://api.github.com/users/FrancoisPala/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/FrancoisPala/subscriptions","organizations_url":"https://api.github.com/users/FrancoisPala/orgs","repos_url":"https://api.github.com/users/FrancoisPala/repos","events_url":"https://api.github.com/users/FrancoisPala/events{/privacy}","received_events_url":"https://api.github.com/users/FrancoisPala/received_events","type":"User","site_admin":false},"repo":{"id":57172428,"name":"RiotAPIChallenge2016","full_name":"FrancoisPala/RiotAPIChallenge2016","owner":{"login":"FrancoisPala","id":4431910,"avatar_url":"https://avatars.githubusercontent.com/u/4431910?v=3","gravatar_id":"","url":"https://api.github.com/users/FrancoisPala","html_url":"https://github.com/FrancoisPala","followers_url":"https://api.github.com/users/FrancoisPala/followers","following_url":"https://api.github.com/users/FrancoisPala/following{/other_user}","gists_url":"https://api.github.com/users/FrancoisPala/gists{/gist_id}","starred_url":"https://api.github.com/users/FrancoisPala/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/FrancoisPala/subscriptions","organizations_url":"https://api.github.com/users/FrancoisPala/orgs","repos_url":"https://api.github.com/users/FrancoisPala/repos","events_url":"https://api.github.com/users/FrancoisPala/events{/privacy}","received_events_url":"https://api.github.com/users/FrancoisPala/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/FrancoisPala/RiotAPIChallenge2016","description":"Project created for the 2016 Riot API Challenge","fork":false,"url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016","forks_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/forks","keys_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/keys{/key_id}","collaborators_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/teams","hooks_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/hooks","issue_events_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/issues/events{/number}","events_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/events","assignees_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/assignees{/user}","branches_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/branches{/branch}","tags_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/tags","blobs_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/git/refs{/sha}","trees_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/git/trees{/sha}","statuses_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/statuses/{sha}","languages_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/languages","stargazers_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/stargazers","contributors_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/contributors","subscribers_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/subscribers","subscription_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/subscription","commits_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/commits{/sha}","git_commits_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/git/commits{/sha}","comments_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/comments{/number}","issue_comment_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/issues/comments{/number}","contents_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/contents/{+path}","compare_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/compare/{base}...{head}","merges_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/merges","archive_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/downloads","issues_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/issues{/number}","pulls_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/pulls{/number}","milestones_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/milestones{/number}","notifications_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/labels{/name}","releases_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/releases{/id}","deployments_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/deployments","created_at":"2016-04-27T01:01:22Z","updated_at":"2016-05-20T20:38:22Z","pushed_at":"2016-07-23T15:01:12Z","git_url":"git://github.com/FrancoisPala/RiotAPIChallenge2016.git","ssh_url":"git@github.com:FrancoisPala/RiotAPIChallenge2016.git","clone_url":"https://github.com/FrancoisPala/RiotAPIChallenge2016.git","svn_url":"https://github.com/FrancoisPala/RiotAPIChallenge2016","homepage":"http://splusplz.us/","size":5377,"stargazers_count":1,"watchers_count":1,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":1,"forks":0,"open_issues":1,"watchers":1,"default_branch":"master"}},"base":{"label":"FrancoisPala:master","ref":"master","sha":"6abcdac0c3c7e74aa1587bf545a3c576316f4347","user":{"login":"FrancoisPala","id":4431910,"avatar_url":"https://avatars.githubusercontent.com/u/4431910?v=3","gravatar_id":"","url":"https://api.github.com/users/FrancoisPala","html_url":"https://github.com/FrancoisPala","followers_url":"https://api.github.com/users/FrancoisPala/followers","following_url":"https://api.github.com/users/FrancoisPala/following{/other_user}","gists_url":"https://api.github.com/users/FrancoisPala/gists{/gist_id}","starred_url":"https://api.github.com/users/FrancoisPala/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/FrancoisPala/subscriptions","organizations_url":"https://api.github.com/users/FrancoisPala/orgs","repos_url":"https://api.github.com/users/FrancoisPala/repos","events_url":"https://api.github.com/users/FrancoisPala/events{/privacy}","received_events_url":"https://api.github.com/users/FrancoisPala/received_events","type":"User","site_admin":false},"repo":{"id":57172428,"name":"RiotAPIChallenge2016","full_name":"FrancoisPala/RiotAPIChallenge2016","owner":{"login":"FrancoisPala","id":4431910,"avatar_url":"https://avatars.githubusercontent.com/u/4431910?v=3","gravatar_id":"","url":"https://api.github.com/users/FrancoisPala","html_url":"https://github.com/FrancoisPala","followers_url":"https://api.github.com/users/FrancoisPala/followers","following_url":"https://api.github.com/users/FrancoisPala/following{/other_user}","gists_url":"https://api.github.com/users/FrancoisPala/gists{/gist_id}","starred_url":"https://api.github.com/users/FrancoisPala/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/FrancoisPala/subscriptions","organizations_url":"https://api.github.com/users/FrancoisPala/orgs","repos_url":"https://api.github.com/users/FrancoisPala/repos","events_url":"https://api.github.com/users/FrancoisPala/events{/privacy}","received_events_url":"https://api.github.com/users/FrancoisPala/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/FrancoisPala/RiotAPIChallenge2016","description":"Project created for the 2016 Riot API Challenge","fork":false,"url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016","forks_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/forks","keys_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/keys{/key_id}","collaborators_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/teams","hooks_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/hooks","issue_events_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/issues/events{/number}","events_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/events","assignees_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/assignees{/user}","branches_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/branches{/branch}","tags_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/tags","blobs_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/git/refs{/sha}","trees_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/git/trees{/sha}","statuses_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/statuses/{sha}","languages_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/languages","stargazers_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/stargazers","contributors_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/contributors","subscribers_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/subscribers","subscription_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/subscription","commits_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/commits{/sha}","git_commits_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/git/commits{/sha}","comments_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/comments{/number}","issue_comment_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/issues/comments{/number}","contents_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/contents/{+path}","compare_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/compare/{base}...{head}","merges_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/merges","archive_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/downloads","issues_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/issues{/number}","pulls_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/pulls{/number}","milestones_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/milestones{/number}","notifications_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/labels{/name}","releases_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/releases{/id}","deployments_url":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/deployments","created_at":"2016-04-27T01:01:22Z","updated_at":"2016-05-20T20:38:22Z","pushed_at":"2016-07-23T15:01:12Z","git_url":"git://github.com/FrancoisPala/RiotAPIChallenge2016.git","ssh_url":"git@github.com:FrancoisPala/RiotAPIChallenge2016.git","clone_url":"https://github.com/FrancoisPala/RiotAPIChallenge2016.git","svn_url":"https://github.com/FrancoisPala/RiotAPIChallenge2016","homepage":"http://splusplz.us/","size":5377,"stargazers_count":1,"watchers_count":1,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":1,"forks":0,"open_issues":1,"watchers":1,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/pulls/1"},"html":{"href":"https://github.com/FrancoisPala/RiotAPIChallenge2016/pull/1"},"issue":{"href":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/issues/1"},"comments":{"href":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/issues/1/comments"},"review_comments":{"href":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/pulls/1/comments"},"review_comment":{"href":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/pulls/1/commits"},"statuses":{"href":"https://api.github.com/repos/FrancoisPala/RiotAPIChallenge2016/statuses/00dc08851ed3930ff9fb77f8b787982ed475b674"}}}}
{"actor":{"display_login":"geekuillaume"}}