diff options
author | Brandon Mathis <brandon@imathis.com> | 2011-09-03 10:04:25 -0500 |
---|---|---|
committer | Brandon Mathis <brandon@imathis.com> | 2011-09-03 10:04:25 -0500 |
commit | 3cedd387a0fd4522023ef335307cbc096a3c2005 (patch) | |
tree | ef48885f71e7d3e99082792a2d61a0a8ceab7134 /.themes/classic/source/javascripts | |
parent | 597c7eb2b1868752cbfca13b2ec7f2d265a32cd8 (diff) | |
parent | c8eded1d0e016a0e702353e3bfa57f0e08bac668 (diff) | |
download | my_new_personal_website-3cedd387a0fd4522023ef335307cbc096a3c2005.tar.xz my_new_personal_website-3cedd387a0fd4522023ef335307cbc096a3c2005.zip |
Merge branch 'pilif-github-repositories-plugin'
Diffstat (limited to '.themes/classic/source/javascripts')
-rw-r--r-- | .themes/classic/source/javascripts/github.js | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/.themes/classic/source/javascripts/github.js b/.themes/classic/source/javascripts/github.js new file mode 100644 index 00000000..623d493f --- /dev/null +++ b/.themes/classic/source/javascripts/github.js @@ -0,0 +1,43 @@ +github = (function(){ + function render(target, repos){ + var i = 0, fragment = '', t = $(target)[0]; + + for(i = 0; i < repos.length; i++) + fragment += '<li><a href="'+repos[i].url+'">'+repos[i].name+'</a><p>'+repos[i].description+'</p></li>'; + + t.innerHTML = fragment; + } + return { + showRepos: function(options){ + var feed = new jXHR(); + feed.onerror = function (msg,url) { + $(options.target + ' li.loading').addClass('error').text("Error loading feed"); + } + feed.onreadystatechange = function(data){ + if (feed.readyState === 4) { + var repos = []; + var i; + for (i = 0; i < data.repositories.length; i++){ + if (options.skip_forks && data.repositories[i].fork) + continue; + repos.push(data.repositories[i]); + } + repos.sort(function(a, b){ + var a = new Date(a.pushed_at), + b = new Date(b.pushed_at); + + if (a.valueOf() == b.valueOf()) return 0; + return a.valueOf() > b.valueOf() ? -1 : 1; + }); + + if (options.count) + repos.splice(options.count); + + render(options.target, repos) + } + }; + feed.open("GET","http://github.com/api/v2/json/repos/show/"+options.user+"?callback=?"); + feed.send(); + } + }; +})();
\ No newline at end of file |