{"action":"created","comment":{"url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/pulls/comments/77832284","id":77832284,"diff_hunk":"@@ -0,0 +1,639 @@\n+\n+\n+\n+function slippy (dom, opt) {\n+\n+  var svg = { };\n+  var chart;\n+  var container;\n+  var scales = { x: { }, y: { } };\n+  var dom_width, dom_height, width, height;\n+  var scaleExtent = [ 0, 200 ];\n+  var zoomer;\n+\n+  var margin = {top: 20, right: 50, bottom: 20, left: 50};\n+  // get_dimensions( );\n+\n+\n+  function frame ( ) {\n+    get_dimensions( );\n+    var range = frame.getRange( );\n+    // var width = dom.width( );\n+    // var height = dom.height( );\n+    svg.attr('width', dom_width)\n+       // .attr('height', height - margin.right - margin.left)\n+       ;\n+    var begin = scales.x.invert(0);\n+    var end = scales.x.invert(width);\n+    range = frame.setRange(begin, end);\n+    var delta = moment(begin).from(moment(end));\n+    // .replace(' ago', '');\n+    opt.controls.find('.begin-input').val(delta);\n+    opt.controls.find('.end-input').val(end.format(Date.ISO8601_DATETIME));\n+    opt.controls.data('range', {begin: begin, end: end});\n+    // console.log(width, height, delta)\n+\n+    // console.log(opt);\n+    chart.select(\".x.axis\").call(frame.xAxis);\n+    dom.trigger('refocus', [range, frame]);\n+\n+  }\n+\n+  frame.getRange = function _getRange ( ) {\n+    return [frame.begin, frame.end];\n+  }\n+\n+  frame.setRange = function _setRange (begin, end) {\n+    frame.begin = Date.create(begin);\n+    frame.end = Date.create(end);\n+    return frame.getRange( );\n+  }\n+\n+  function get_dimensions( ) {\n+    dom_width = dom.width( );\n+    margin = {top: 20, right: 50, bottom: 20, left: 50};\n+    width = dom_width - margin.left - margin.right;\n+    dom_height = dom.height( );\n+    height = dom_height - margin.top - margin.bottom;\n+  }\n+\n+  function init ( ) {\n+    get_dimensions( );\n+    var begin = opt.begin || opt.controls.find('INPUT.begin-input').val( );\n+    var end = opt.end || opt.controls.find('INPUT.end-input').val( );\n+    var range = frame.setRange(begin, end);\n+    // var width = dom.width( );\n+    // var height = dom.height( );\n+    svg = d3.select(dom.get(0)).append('svg')\n+      .attr('class', 'slippy-chart')\n+      ;\n+       ;\n+    chart = svg.append('g')\n+      .attr('class', 'widget')\n+      .attr(\"tranform\", \"translate(\" + 0 + \", \" + margin.top + \")\")\n+      ;\n+    scales.x = d3.time.scale( )\n+      .domain(range)\n+      .nice(d3.time.week)\n+      .rangeRound([0, dom.width( )])\n+      ;\n+    scales.y = d3.scale.log( )\n+      .domain([ 40, 400 ])\n+      .rangeRound([1, dom.height( )])\n+      ;\n+    frame.xAxis = d3.svg.axis( )\n+        .scale(scales.x)\n+        .ticks(7)\n+        .tickSize(12, 1, 1)\n+        ;\n+    chart.append(\"g\")\n+      .attr(\"transform\", \"translate(\" + 0 + \", \" + (height / 2) + \")\")\n+      .attr(\"class\", \"x axis\")\n+      .call(frame.xAxis)\n+      ;\n+\n+    zoomer = d3.behavior.zoom( )\n+      .x(scales.x)\n+      .scaleExtent(scaleExtent)\n+      .on('zoom', frame);\n+      ;\n+    svg.call(zoomer);\n+\n+    // frame.setRange(begin, end);\n+    opt.controls.on('change', 'INPUT', refocus);\n+    frame( );\n+    $(window).on('resize', resize);\n+    return frame;\n+  }\n+\n+  function adjust_sizes (ev) {\n+    get_dimensions( );\n+    scales.x\n+      .rangeRound([0, dom.width( )])\n+      ;\n+    scales.y\n+      .rangeRound([1, dom.height( )])\n+      ;\n+    chart.selectAll('.x.axis')\n+      .call(frame.xAxis)\n+  }\n+\n+  function resize (ev) {\n+    adjust_sizes(ev);\n+    frame( );\n+  }\n+\n+  function refocus (ev) {\n+    var target = $(ev.target);\n+    if (target.is('INPUT')) {\n+      var begin = opt.controls.find('INPUT.begin-input').val( );\n+      var end = opt.controls.find('INPUT.end-input').val( );\n+      var range = frame.setRange(begin, end);\n+    }\n+    scales.x.domain(range)\n+      .nice(d3.time.week)\n+      ;\n+    frame( );\n+  }\n+\n+  return init( );\n+  // return frame;\n+}\n+\n+function cached (opts) {\n+  var storage = opts.storage || crossfilter([ ]);\n+  var dims = {\n+    byDate: storage.dimension(dateStringDate)\n+  };\n+  function api ( ) {\n+  }\n+\n+  function within (start, end) {\n+    start = Date.create(start);\n+    end = Date.create(end);\n+    return dims.byDate.filterRange([start, end]).top(Infinity);\n+  }\n+\n+  function cx ( ) {\n+    return storage;\n+  }\n+\n+  function get ( ) {\n+  }\n+\n+  function add (records) {\n+    storage.add(records);\n+  }\n+\n+  function dateString (d) { return d.dateString; }\n+  function dateStringDate (d) { return Date.create(d.dateString); }\n+  function sgv (d) { return d.sgv; }\n+  function is_clean (d) { return sgv(d) > 39; }\n+  function is_in_range (d) { return sgv(d) >= range.low && sgv(d) <= range.high; }\n+  function is_high (d) { return sgv(d) > range.high; }\n+  function is_low (d) { return sgv(d) < range.low; }\n+\n+  api.dims = dims;\n+  api.get = get;\n+  api.add = add;\n+  api.within = within;\n+  api.cx = cx;\n+  return api;\n+}\n+\n+function manager (view, data, opts) {\n+\n+  // var colorize = d3.scale.category20b( );\n+  var colorize = d3.scale.ordinal( )\n+    .domain([0, 10])\n+    .range(colorbrewer.Set3[10]);\n+  var templates = opts.templates;\n+  var item_opts = opts.item_opts || { };\n+  var pools = [ ];\n+  var master = { };\n+  var cache = opts.cache || cached({ });\n+  function manage ( ) {\n+  }\n+\n+  function init ( ) {\n+    rows = view.find('.reticle');\n+    if (rows.length > 0) {\n+    } else {\n+      var item = make({ });\n+      pools.push(item);\n+    }\n+    view.on('refocus', '.reticle', on_refocus);\n+    return manage;\n+  }\n+\n+  function make (data) {\n+    var item = templates.find('.reticle').clone(true);\n+    var pool = templates.find('.pool').clone(true);\n+    var end = data.end || Date.create('now').format(Date.ISO8601_DATETIME);\n+    var begin = data.begin || Date.create(end).rewind({weeks: 6}).format(Date.ISO8601_DATETIME);\n+    view.find('.ranges').append(item);\n+    view.find('.observations').append(pool);\n+    var control = slippy(item.find('.timeline'),\n+      { controls: item.find('.controls')\n+      , begin: begin\n+      , end: end\n+    } );\n+    var reticle =  {dom: item, control: control};\n+    var color = colorize(pools.length);\n+    var lense = ranger(pool, {color: color, begin: begin, end: end, cache: cache});\n+    var display =  { dom: pool, control: lense };\n+    reticle.dom.find('.timeline').css('border', '1px solid ' + color);\n+    display.dom.css('border-color', color);\n+    reticle.dom.find(\"span, :input\").css('color', color);\n+    // reticle.dom.find(\".x.axis line\").('styl', color);\n+    var axis = d3.select(reticle.dom.get(0)).selectAll('.x.axis');\n+    axis.selectAll('line').style('stroke', color);\n+    axis.selectAll('path').style('stroke', color);\n+    axis.selectAll('text').style('color', color);\n+    return { reticle: reticle, display: display, color: color };\n+  }\n+\n+  function on_refocus (ev, range) {\n+    var target = $(ev.target);\n+    var pool = pools.filter(function (pool) {\n+      var timeline = pool.reticle.dom.find('.timeline');\n+      return timeline.is(target);\n+    }).pop( );\n+    if (pool) {\n+      pool.display.control.setRange(range[0], range[1]);\n+    }\n+  }\n+\n+  function add_new ( ) {\n+    var item = make({ });\n+    pools.push(item);\n+  }\n+\n+  manage.add_new = add_new;\n+\n+  return init( );\n+}\n+\n+function pager (opts) {\n+  var query = { };\n+  var url = opts.url || '/api/v1/entries.json?find[type]=sgv&find[sgv][$gt]=39&count=500000&';\n+  query.begin = opts.begin;\n+  query.end = opts.end;\n+  var payload = [ ];\n+  var days = { };\n+  var cache = opts.cache;\n+  var DATE_FMT = \"{yyyy}-{MM}-{dd}\";\n+\n+  var bisect = d3.bisector(function (d) { return Date.create(d.dateString); });\n+  function page ( ) {\n+  }\n+\n+  function refresh (start, end) {\n+    // console.log(\"PAYLOAD?\", payload);\n+    var q = {\n+      start: Date.create(Date.create(start).format(DATE_FMT))\n+    , end: Date.create(Date.create(end).format(DATE_FMT))\n+    };\n+    query.begin = start;\n+    query.end = end;\n+    var range = d3.time.days(q.start, q.end);\n+    days = { };\n+    console.log('QUERY FOR', range.length, 'days', q, query);\n+    iter_query(range);\n+    return;\n+    if (payload && payload.length > 0) {\n+      console.log(\"NUM DAYS\", range.length);\n+      // TODO: soft update, only get deltas against the edges of the\n+      // cursor.\n+      // start.isBefore\n+      // start.isBetween\n+      // start.isAfter\n+      // end.isBefore\n+      // end.isBetween\n+      // end.isAfter\n+      var holding = {\n+          begin: Date.create(payload[0].dateString)\n+        , last:  Date.create(payload.slice(-1).pop( ).dateString)\n+      }\n+      console.log(\"BISECT LEFT start\", bisect.left(payload, { dateString: start }));\n+      console.log(\"BISECT LEFT end\", end, bisect.right(payload, { dateString: end }));\n+      do_query(start, end, first_page);\n+    } else {\n+      do_query(start, end, first_page);\n+    }\n+    query.begin = start;\n+    query.end = end;\n+  }\n+\n+  function param_string (begin, end) {\n+    return [\n+      \"find[dateString][$gte]=\" + Date.create(begin).format(DATE_FMT)\n+    , \"find[dateString][$lte]=\" + Date.create(end).format(DATE_FMT)\n+    ].join('&')\n+  }\n+\n+  function iter (prev, current, index, tail) {\n+  }\n+\n+  function iter_query (range) {\n+    payload = [ ];\n+    range.forEach(function (day, i) {\n+      var start = day;\n+      var end = d3.time.day.offset(start, 1);\n+      var data = cache.within(start, end);\n+      if (data.length < 10) {\n+        do_query(start, end, function _iter_ (resp) {\n+          days[Date.create(day).format(DATE_FMT)] = true;\n+          collate(resp);\n+        });\n+      } else {\n+        days[Date.create(day).format(DATE_FMT)] = true;\n+        payload = payload.concat(data);\n+        if (Object.keys(days).length >= range.length) {\n+          do_payload( );\n+        }\n+      }\n+    });\n+\n+  }\n+\n+  function accrue (begin, end, cb) {\n+    var q = {\n+      start: Date.create(Date.create(start).format(DATE_FMT))\n+    , end: Date.create(Date.create(end).format(DATE_FMT))\n+    };\n+    var range = d3.time.days(q.start, q.end);\n+    if (range.length > 3) {\n+      var half = range.length / 2;\n+      var head = range.slice(0, half);\n+      var tail = range.slice(half);","path":"static/report/js/compare.js","position":349,"original_position":349,"commit_id":"e6bd7e45794c5eee300b144992b13a45848ef5a2","original_commit_id":"e6bd7e45794c5eee300b144992b13a45848ef5a2","user":{"login":"codacy-bot","id":19940114,"avatar_url":"https://avatars.githubusercontent.com/u/19940114?v=3","gravatar_id":"","url":"https://api.github.com/users/codacy-bot","html_url":"https://github.com/codacy-bot","followers_url":"https://api.github.com/users/codacy-bot/followers","following_url":"https://api.github.com/users/codacy-bot/following{/other_user}","gists_url":"https://api.github.com/users/codacy-bot/gists{/gist_id}","starred_url":"https://api.github.com/users/codacy-bot/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/codacy-bot/subscriptions","organizations_url":"https://api.github.com/users/codacy-bot/orgs","repos_url":"https://api.github.com/users/codacy-bot/repos","events_url":"https://api.github.com/users/codacy-bot/events{/privacy}","received_events_url":"https://api.github.com/users/codacy-bot/received_events","type":"User","site_admin":false},"body":"![Codacy](https://www.codacy.com/assets/images/favicon.png) Issue found: [\"tail\" is defined but never used](https://www.codacy.com/app/Nightscout/cgm-remote-monitor/file/2737385840/issues/source?bid=2452374&fileBranchId=3679108#l349)","created_at":"2016-09-07T14:26:31Z","updated_at":"2016-09-07T14:26:31Z","html_url":"https://github.com/nightscout/cgm-remote-monitor/pull/1936#discussion_r77832284","pull_request_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/pulls/1936","_links":{"self":{"href":"https://api.github.com/repos/nightscout/cgm-remote-monitor/pulls/comments/77832284"},"html":{"href":"https://github.com/nightscout/cgm-remote-monitor/pull/1936#discussion_r77832284"},"pull_request":{"href":"https://api.github.com/repos/nightscout/cgm-remote-monitor/pulls/1936"}}},"pull_request":{"url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/pulls/1936","id":84306838,"html_url":"https://github.com/nightscout/cgm-remote-monitor/pull/1936","diff_url":"https://github.com/nightscout/cgm-remote-monitor/pull/1936.diff","patch_url":"https://github.com/nightscout/cgm-remote-monitor/pull/1936.patch","issue_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/issues/1936","number":1936,"state":"closed","locked":false,"title":"0.9 beta3","user":{"login":"bdr1177","id":8519000,"avatar_url":"https://avatars.githubusercontent.com/u/8519000?v=3","gravatar_id":"","url":"https://api.github.com/users/bdr1177","html_url":"https://github.com/bdr1177","followers_url":"https://api.github.com/users/bdr1177/followers","following_url":"https://api.github.com/users/bdr1177/following{/other_user}","gists_url":"https://api.github.com/users/bdr1177/gists{/gist_id}","starred_url":"https://api.github.com/users/bdr1177/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bdr1177/subscriptions","organizations_url":"https://api.github.com/users/bdr1177/orgs","repos_url":"https://api.github.com/users/bdr1177/repos","events_url":"https://api.github.com/users/bdr1177/events{/privacy}","received_events_url":"https://api.github.com/users/bdr1177/received_events","type":"User","site_admin":false},"body":"","created_at":"2016-09-07T14:07:28Z","updated_at":"2016-09-07T14:26:31Z","closed_at":"2016-09-07T14:26:02Z","merged_at":null,"merge_commit_sha":null,"assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/pulls/1936/commits","review_comments_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/pulls/1936/comments","review_comment_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/pulls/comments{/number}","comments_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/issues/1936/comments","statuses_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/statuses/e6bd7e45794c5eee300b144992b13a45848ef5a2","head":{"label":"nightscout:0.9-beta3","ref":"0.9-beta3","sha":"e6bd7e45794c5eee300b144992b13a45848ef5a2","user":{"login":"nightscout","id":7661012,"avatar_url":"https://avatars.githubusercontent.com/u/7661012?v=3","gravatar_id":"","url":"https://api.github.com/users/nightscout","html_url":"https://github.com/nightscout","followers_url":"https://api.github.com/users/nightscout/followers","following_url":"https://api.github.com/users/nightscout/following{/other_user}","gists_url":"https://api.github.com/users/nightscout/gists{/gist_id}","starred_url":"https://api.github.com/users/nightscout/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nightscout/subscriptions","organizations_url":"https://api.github.com/users/nightscout/orgs","repos_url":"https://api.github.com/users/nightscout/repos","events_url":"https://api.github.com/users/nightscout/events{/privacy}","received_events_url":"https://api.github.com/users/nightscout/received_events","type":"Organization","site_admin":false},"repo":{"id":20042152,"name":"cgm-remote-monitor","full_name":"nightscout/cgm-remote-monitor","owner":{"login":"nightscout","id":7661012,"avatar_url":"https://avatars.githubusercontent.com/u/7661012?v=3","gravatar_id":"","url":"https://api.github.com/users/nightscout","html_url":"https://github.com/nightscout","followers_url":"https://api.github.com/users/nightscout/followers","following_url":"https://api.github.com/users/nightscout/following{/other_user}","gists_url":"https://api.github.com/users/nightscout/gists{/gist_id}","starred_url":"https://api.github.com/users/nightscout/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nightscout/subscriptions","organizations_url":"https://api.github.com/users/nightscout/orgs","repos_url":"https://api.github.com/users/nightscout/repos","events_url":"https://api.github.com/users/nightscout/events{/privacy}","received_events_url":"https://api.github.com/users/nightscout/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/nightscout/cgm-remote-monitor","description":"nightscout web monitor","fork":false,"url":"https://api.github.com/repos/nightscout/cgm-remote-monitor","forks_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/forks","keys_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/keys{/key_id}","collaborators_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/teams","hooks_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/hooks","issue_events_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/issues/events{/number}","events_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/events","assignees_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/assignees{/user}","branches_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/branches{/branch}","tags_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/tags","blobs_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/git/refs{/sha}","trees_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/git/trees{/sha}","statuses_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/statuses/{sha}","languages_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/languages","stargazers_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/stargazers","contributors_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/contributors","subscribers_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/subscribers","subscription_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/subscription","commits_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/commits{/sha}","git_commits_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/git/commits{/sha}","comments_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/comments{/number}","issue_comment_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/issues/comments{/number}","contents_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/contents/{+path}","compare_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/compare/{base}...{head}","merges_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/merges","archive_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/downloads","issues_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/issues{/number}","pulls_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/pulls{/number}","milestones_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/milestones{/number}","notifications_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/labels{/name}","releases_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/releases{/id}","deployments_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/deployments","created_at":"2014-05-22T00:32:28Z","updated_at":"2016-09-01T15:00:33Z","pushed_at":"2016-09-07T14:07:29Z","git_url":"git://github.com/nightscout/cgm-remote-monitor.git","ssh_url":"git@github.com:nightscout/cgm-remote-monitor.git","clone_url":"https://github.com/nightscout/cgm-remote-monitor.git","svn_url":"https://github.com/nightscout/cgm-remote-monitor","homepage":"","size":16016,"stargazers_count":201,"watchers_count":201,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":6347,"mirror_url":null,"open_issues_count":94,"forks":6347,"open_issues":94,"watchers":201,"default_branch":"master"}},"base":{"label":"nightscout:master","ref":"master","sha":"78611356b1f48872c72bc8ca78855bceefd04e6c","user":{"login":"nightscout","id":7661012,"avatar_url":"https://avatars.githubusercontent.com/u/7661012?v=3","gravatar_id":"","url":"https://api.github.com/users/nightscout","html_url":"https://github.com/nightscout","followers_url":"https://api.github.com/users/nightscout/followers","following_url":"https://api.github.com/users/nightscout/following{/other_user}","gists_url":"https://api.github.com/users/nightscout/gists{/gist_id}","starred_url":"https://api.github.com/users/nightscout/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nightscout/subscriptions","organizations_url":"https://api.github.com/users/nightscout/orgs","repos_url":"https://api.github.com/users/nightscout/repos","events_url":"https://api.github.com/users/nightscout/events{/privacy}","received_events_url":"https://api.github.com/users/nightscout/received_events","type":"Organization","site_admin":false},"repo":{"id":20042152,"name":"cgm-remote-monitor","full_name":"nightscout/cgm-remote-monitor","owner":{"login":"nightscout","id":7661012,"avatar_url":"https://avatars.githubusercontent.com/u/7661012?v=3","gravatar_id":"","url":"https://api.github.com/users/nightscout","html_url":"https://github.com/nightscout","followers_url":"https://api.github.com/users/nightscout/followers","following_url":"https://api.github.com/users/nightscout/following{/other_user}","gists_url":"https://api.github.com/users/nightscout/gists{/gist_id}","starred_url":"https://api.github.com/users/nightscout/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nightscout/subscriptions","organizations_url":"https://api.github.com/users/nightscout/orgs","repos_url":"https://api.github.com/users/nightscout/repos","events_url":"https://api.github.com/users/nightscout/events{/privacy}","received_events_url":"https://api.github.com/users/nightscout/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/nightscout/cgm-remote-monitor","description":"nightscout web monitor","fork":false,"url":"https://api.github.com/repos/nightscout/cgm-remote-monitor","forks_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/forks","keys_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/keys{/key_id}","collaborators_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/teams","hooks_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/hooks","issue_events_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/issues/events{/number}","events_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/events","assignees_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/assignees{/user}","branches_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/branches{/branch}","tags_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/tags","blobs_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/git/refs{/sha}","trees_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/git/trees{/sha}","statuses_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/statuses/{sha}","languages_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/languages","stargazers_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/stargazers","contributors_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/contributors","subscribers_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/subscribers","subscription_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/subscription","commits_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/commits{/sha}","git_commits_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/git/commits{/sha}","comments_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/comments{/number}","issue_comment_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/issues/comments{/number}","contents_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/contents/{+path}","compare_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/compare/{base}...{head}","merges_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/merges","archive_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/downloads","issues_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/issues{/number}","pulls_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/pulls{/number}","milestones_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/milestones{/number}","notifications_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/labels{/name}","releases_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/releases{/id}","deployments_url":"https://api.github.com/repos/nightscout/cgm-remote-monitor/deployments","created_at":"2014-05-22T00:32:28Z","updated_at":"2016-09-01T15:00:33Z","pushed_at":"2016-09-07T14:07:29Z","git_url":"git://github.com/nightscout/cgm-remote-monitor.git","ssh_url":"git@github.com:nightscout/cgm-remote-monitor.git","clone_url":"https://github.com/nightscout/cgm-remote-monitor.git","svn_url":"https://github.com/nightscout/cgm-remote-monitor","homepage":"","size":16016,"stargazers_count":201,"watchers_count":201,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":6347,"mirror_url":null,"open_issues_count":94,"forks":6347,"open_issues":94,"watchers":201,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/nightscout/cgm-remote-monitor/pulls/1936"},"html":{"href":"https://github.com/nightscout/cgm-remote-monitor/pull/1936"},"issue":{"href":"https://api.github.com/repos/nightscout/cgm-remote-monitor/issues/1936"},"comments":{"href":"https://api.github.com/repos/nightscout/cgm-remote-monitor/issues/1936/comments"},"review_comments":{"href":"https://api.github.com/repos/nightscout/cgm-remote-monitor/pulls/1936/comments"},"review_comment":{"href":"https://api.github.com/repos/nightscout/cgm-remote-monitor/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/nightscout/cgm-remote-monitor/pulls/1936/commits"},"statuses":{"href":"https://api.github.com/repos/nightscout/cgm-remote-monitor/statuses/e6bd7e45794c5eee300b144992b13a45848ef5a2"}}}}
{"actor":{"display_login":"codacy-bot"}}