--- layout: post title: Post date: 17-07-01 13:01:42 categories: random ghcommentid: 4 short_description: My thoughts on the degridation of Canada day
Your content
| // Change references to my github repo to your own | |
| <script> | |
| // use of ajax vs getJSON for headers use to get markdown (body vs body_htmml) | |
| // todo: pages, configure issue url, open in new window? | |
| var CurrentPage = 0; | |
| function ParseLinkHeader(link) | |
| { | |
| var entries = link.split(","); | |
| var links = { }; | |
| for (var i in entries) | |
| { | |
| var entry = entries[i]; | |
| var link = { }; | |
| link.name = entry.match(/rel=\"([^\"]*)/)[1]; | |
| link.url = entry.match(/<([^>]*)/)[1]; | |
| link.page = entry.match(/page=(\d+).*$/)[1]; | |
| links[link.name] = link; | |
| } | |
| return links; | |
| } | |
| function DoGithubComments(comment_id, page_id) | |
| { | |
| var repo_name = "kirkins/notes"; | |
| if (page_id === undefined) | |
| page_id = 1; | |
| var api_url = "https://api.github.com/repos/" + repo_name; | |
| var api_issue_url = api_url + "/issues/" + comment_id; | |
| var api_comments_url = api_url + "/issues/" + comment_id + "/comments" + "?page=" + page_id; | |
| var url = "https://github.com/kirkins/notes/issues/" + comment_id; | |
| $(document).ready(function () | |
| { | |
| $.getJSON(api_issue_url, function(data) { | |
| NbComments = data.comments; | |
| }); | |
| $.ajax(api_comments_url, { | |
| headers: {Accept: "application/vnd.github.v3.html+json"}, | |
| dataType: "json", | |
| success: function(comments, textStatus, jqXHR) { | |
| // Add post button to first page | |
| if (page_id == 1) | |
| $("#gh-comments-list").append("<a href='" + url + "#new_comment_field' rel='nofollow' class='btn'>Post a comment on Github</a>"); | |
| // Individual comments | |
| $.each(comments, function(i, comment) { | |
| var date = new Date(comment.created_at); | |
| var t = "<div id='gh-comment'>"; | |
| t += "<img src='" + comment.user.avatar_url + "' width='24px'>"; | |
| t += "<b><a href='" + comment.user.html_url + "'>" + comment.user.login + "</a></b>"; | |
| t += " posted at "; | |
| t += "<em>" + date.toUTCString() + "</em>"; | |
| t += "<div id='gh-comment-hr'></div>"; | |
| t += comment.body_html; | |
| t += "</div>"; | |
| $("#gh-comments-list").append(t); | |
| }); | |
| // Setup comments button if there are more pages to display | |
| var links = ParseLinkHeader(jqXHR.getResponseHeader("Link")); | |
| if ("next" in links) | |
| { | |
| $("#gh-load-comments").attr("onclick", "DoGithubComments(" + comment_id + "," + (page_id + 1) + ");"); | |
| $("#gh-load-comments").show(); | |
| } | |
| else | |
| { | |
| $("#gh-load-comments").hide(); | |
| } | |
| }, | |
| error: function() { | |
| $("#gh-comments-list").append("Comments are not open for this post yet."); | |
| } | |
| }); | |
| }); | |
| } | |
| </script> | |
| <div id="gh-comments"> | |
| <br/><br/> | |
| <h6>COMMENTS</h6> | |
| <div id="gh-comments-list"></div> | |
| <a href="javascript:void(0)" id="gh-load-comments" class="btn" style="display:none">Load more comments</a> | |
| </div> | |
| <script type="text/javascript"> | |
| DoGithubComments({{ page.ghcommentid }}); | |
| </script> |
| <!-- Add the following to your post layout --> | |
| {% include comments.html %} |
| // Add the following to your CSS | |
| #gh-comments { | |
| text-align: center; | |
| } | |
| #gh-comment { | |
| text-align: left; | |
| color:#FFF; | |
| background-color:#272822; | |
| border:1px solid #b3b3b3; | |
| margin:2.5em 0; | |
| padding:10px; | |
| } | |
| #gh-comment-hr { | |
| border-top: inset 1px white; | |
| margin: 8px 0px; | |
| } | |
| #gh-comment p { | |
| margin:0px; | |
| } | |
| #gh-comment img { | |
| display: inline; | |
| vertical-align: middle; | |
| margin: 2px 10px 2px 2px; | |
| } |