diff options
Diffstat (limited to '.themes/classic')
-rw-r--r-- | .themes/classic/sass/partials/_syntax.scss | 2 | ||||
-rw-r--r-- | .themes/classic/source/_includes/asides/github.html | 30 | ||||
-rw-r--r-- | .themes/classic/source/javascripts/github.js | 43 | ||||
-rw-r--r-- | .themes/classic/source/javascripts/twitter.js | 4 |
4 files changed, 76 insertions, 3 deletions
diff --git a/.themes/classic/sass/partials/_syntax.scss b/.themes/classic/sass/partials/_syntax.scss index 7e8ed8d5..25e8d329 100644 --- a/.themes/classic/sass/partials/_syntax.scss +++ b/.themes/classic/sass/partials/_syntax.scss @@ -177,7 +177,7 @@ li code { .s1 { color: $solar-cyan !important; } /* Literal.String.Single */ //.ss { color: #990073 } /* Literal.String.Symbol */ //.il { color: #009999 } /* Literal.Number.Integer.Long */ - div { .gd, .gd .x, .gi, .gi .x { display: block; }} + div { .gd, .gd .x, .gi, .gi .x { display: inline-block; width: 100%; }} } .highlight, .gist-highlight { diff --git a/.themes/classic/source/_includes/asides/github.html b/.themes/classic/source/_includes/asides/github.html new file mode 100644 index 00000000..935ccff0 --- /dev/null +++ b/.themes/classic/source/_includes/asides/github.html @@ -0,0 +1,30 @@ +{% if site.github_user %} +<section> + <h1>Github Repos</h1> + <ul id="gh_repos"> + <li class="loading">Status updating...</li> + </ul> + {% if site.github_show_profile_link %} + <a href="https://github.com/{{site.github_user}}">@{{site.github_user}}</a> on Github + {% endif %} + <script type="text/javascript"> + $.domReady(function(){ + if (!window.jXHR){ + var jxhr = document.createElement('script'); + jxhr.type = 'text/javascript'; + jxhr.src = '{{ root_url}}/javascripts/libs/jXHR.js'; + var s = document.getElementsByTagName('script')[0]; + s.parentNode.insertBefore(jxhr, s); + } + + github.showRepos({ + user: '{{site.github_user}}', + count: {{site.github_repo_count}}, + skip_forks: {{site.github_skip_forks}}, + target: '#gh_repos' + }); + }); + </script> + <script src="{{ root_url }}/javascripts/github.js" type="text/javascript"> </script> +</section> +{% endif %} 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 diff --git a/.themes/classic/source/javascripts/twitter.js b/.themes/classic/source/javascripts/twitter.js index 1f1b2f91..a4e85557 100644 --- a/.themes/classic/source/javascripts/twitter.js +++ b/.themes/classic/source/javascripts/twitter.js @@ -68,7 +68,7 @@ function prettyDate(time) { var diff = ((current_date_full - date.getTime()) / 1000); var day_diff = Math.floor(diff / 86400); - if (isNaN(day_diff) || day_diff < 0 || day_diff >= 31) return; + if (isNaN(day_diff) || day_diff < 0) return "<span>∞</span>"; return day_diff == 0 && ( diff < 60 && say.just_now || @@ -78,5 +78,5 @@ function prettyDate(time) { diff < 86400 && Math.floor(diff / 3600) + say.hours_ago) || day_diff == 1 && say.yesterday || day_diff < 7 && day_diff + say.days_ago || - day_diff < 31 && Math.ceil(day_diff / 7) + say.weeks_ago; + day_diff > 7 && Math.ceil(day_diff / 7) + say.weeks_ago; } |