github-buttons.js 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. /**
  2. * GitHub Buttons on the homepage
  3. * Adapted from https://github.com/mdo/github-buttons/
  4. * Copyright 2014 Mark Otto. Released under Apache 2.0.
  5. */
  6. var user = "handsontable",
  7. repo = "handsontable",
  8. head = document.getElementsByTagName('head')[0];
  9. // Add commas to numbers
  10. function addCommas(n) {
  11. return String(n).replace(/(\d)(?=(\d{3})+$)/g, '$1,')
  12. }
  13. function jsonp(path) {
  14. var el = document.createElement('script');
  15. el.src = path + '?callback=callback';
  16. head.insertBefore(el, head.firstChild);
  17. }
  18. function callback(obj) {
  19. if(obj.data.watchers) {
  20. var watchCount = document.getElementById("githubWatch").querySelector(".gh-count");
  21. var forkCount = document.getElementById("githubFork").querySelector(".gh-count");
  22. watchCount.innerHTML = addCommas(obj.data.watchers);
  23. forkCount.innerHTML = addCommas(obj.data.forks);
  24. watchCount.style.display = 'block';
  25. forkCount.style.display = 'block';
  26. }
  27. }
  28. //cross browser DOMContentLoaded, works also in async scripts
  29. contentLoaded(window, function() {
  30. jsonp('https://api.github.com/repos/' + user + '/' + repo);
  31. });