diff options
author | Thibaud Lepretre <thibaud.lepretre@gmail.com> | 2021-07-29 22:55:26 +0300 |
---|---|---|
committer | Thibaud Lepretre <thibaud.lepretre@gmail.com> | 2021-08-11 15:02:36 +0300 |
commit | f35170151c6619d11a7d5b47e7a0af7fadf56345 (patch) | |
tree | 980b0302cd08e8a210eefd052b47e9db231aa723 | |
parent | c4d494feb34be4f4076db57c1d0f7fb97cb2813a (diff) |
Add gitalk support
-rw-r--r-- | exampleSite/config.toml | 13 | ||||
-rw-r--r-- | layouts/partials/head.html | 7 | ||||
-rw-r--r-- | layouts/partials/post/actions.html | 10 | ||||
-rw-r--r-- | layouts/partials/post/comment.html | 29 | ||||
-rwxr-xr-x | src/scss/utils/mixins/_sidebar.scss | 3 |
5 files changed, 55 insertions, 7 deletions
diff --git a/exampleSite/config.toml b/exampleSite/config.toml index 9b3d602..adec42a 100644 --- a/exampleSite/config.toml +++ b/exampleSite/config.toml @@ -298,6 +298,19 @@ canonifyurls = true [params.comment.disqus] enable = true shortname = "hugo-tranquilpeak-theme" + [params.comment.gitalk] + enable = false + # clientId = + # clientSecret = + # owner = + # repo = + # See all options: https://github.com/gitalk/gitalk#options + [params.comment.gitalk.options] + language = "en" + perPage = 10 + distractionFreeMode = false + enableHotKey = true + pagerDirection = "first" # -------------------- # Header configuration diff --git a/layouts/partials/head.html b/layouts/partials/head.html index b6ca630..f17f6d2 100644 --- a/layouts/partials/head.html +++ b/layouts/partials/head.html @@ -42,8 +42,11 @@ <!--EXTERNAL STYLES--> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css" integrity="sha512-iBBXm8fW90+nuLcSKlbmrPcLa0OT92xO1BIsZ+ywDWZCvqsWgccV3gFoRBv0z+8dLJgyAHIhR35VZc2oM/gI1w==" crossorigin="anonymous" referrerpolicy="no-referrer" /> - <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/fancybox/2.1.4/jquery.fancybox.min.css" integrity="sha256-vuXZ9LGmmwtjqFX1F+EKin1ThZMub58gKULUyf0qECk=" crossorigin="anonymous" /> - <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/fancybox/2.1.4/helpers/jquery.fancybox-thumbs.min.css" integrity="sha256-SEa4XYAHihTcEP1f5gARTB2K26Uk8PsndQYHQC1f4jU=" crossorigin="anonymous" /> + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/fancybox/2.1.4/jquery.fancybox.min.css" integrity="sha256-vuXZ9LGmmwtjqFX1F+EKin1ThZMub58gKULUyf0qECk=" crossorigin="anonymous" referrerpolicy="no-referrer" /> + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/fancybox/2.1.4/helpers/jquery.fancybox-thumbs.min.css" integrity="sha256-SEa4XYAHihTcEP1f5gARTB2K26Uk8PsndQYHQC1f4jU=" crossorigin="anonymous" referrerpolicy="no-referrer" /> + {{ if .Site.Params.comment.gitalk.enable }} + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/gitalk/1.7.2/gitalk.css" integrity="sha512-MLcK/YRapzET1qTBXrOiZE6bGBgtATMo2bIyalVJ8EKDEGNoeA3SPQkvWAR0zNS650YG13ocXBMeioDuZcSRuQ==" crossorigin="anonymous" referrerpolicy="no-referrer" /> + {{ end }} <!--EXTERNAL STYLES END--> <!--STYLES--> <link rel="stylesheet" href="{{ "css/style-tvdxyfs1kx18wykmq8bosyiv5wlpt23i6jnyiy07iapt2cejsqiwu5dieacr.min.css" | absURL}}" /> diff --git a/layouts/partials/post/actions.html b/layouts/partials/post/actions.html index e929581..4bc1d27 100644 --- a/layouts/partials/post/actions.html +++ b/layouts/partials/post/actions.html @@ -62,12 +62,18 @@ </li> {{ end }} {{ end }} - {{ if and (not (eq .Params.comment.disqus.enable false)) .Site.DisqusShortname }} + {{ if and (and (.Site.Params.comment.disqus.enable) (not (.Site.Config.Privacy.Disqus.Disable))) .Site.DisqusShortname }} <li class="post-action"> - <a class="post-action-btn btn btn--default" href="#disqus_thread"> + <a class="post-action-btn btn btn--default" href="#disqus_thread" aria-label="{{ i18n "post.comment" }}"> <i class="far fa-comment"></i> </a> </li> + {{ else if .Site.Params.comment.gitalk.enable }} + <li class="post-action"> + <a class="post-action-btn btn btn--default" href="#gitalk" aria-label="{{ i18n "post.comment" }}"> + <i class="fa fa-comment"></i> + </a> + </li> {{ end }} <li class="post-action"> {{ if findRE "<!--\\s*[t|T][o|O][c|C]\\s*-->" .Content }} diff --git a/layouts/partials/post/comment.html b/layouts/partials/post/comment.html index b29c439..eae88ae 100644 --- a/layouts/partials/post/comment.html +++ b/layouts/partials/post/comment.html @@ -1,7 +1,7 @@ {{ if .IsPage }} - {{ if .Site.Params.comment.disqus.enable }} + {{ if and (.Site.Params.comment.disqus.enable) (not (.Site.Config.Privacy.Disqus.Disable)) }} <div id="disqus_thread"> - <noscript>Please enable JavaScript to view the <a href="//disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript> + <noscript>Please enable JavaScript to view the comments powered by Disqus.</noscript> </div> <script type="text/javascript"> var disqus_config = function() { @@ -15,7 +15,8 @@ (function() { // Don't ever inject Disqus on localhost--it creates unwanted // discussions from 'localhost:1313' on your Disqus account... - if (window.location.hostname == "localhost") { + if (["localhost", "127.0.0.1"].indexOf(window.location.hostname) != -1) { + document.getElementById('disqus_thread').innerHTML = 'Disqus comments not available by default when the website is previewed locally.'; return; } var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true; @@ -24,5 +25,27 @@ (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq); })(); </script> + {{ else if .Site.Params.comment.gitalk.enable }} + <div id="gitalk"> + <noscript>Please enable JavaScript to view the comments powered by Gitalk.</noscript> + </div> + <script src="https://cdnjs.cloudflare.com/ajax/libs/gitalk/1.7.2/gitalk.min.js" integrity="sha512-EcTCcXV46teiNwe0VcnM5A038tcY+BaQYO4nW6Gh2i7v4/HjBVg7xx3+JBLl9WofDds//INJAiEGAtdgr8PWyA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script> + <script type="text/javascript"> + (function() { + if (["localhost", "127.0.0.1"].indexOf(window.location.hostname) != -1) { + document.getElementById('gitalk').innerHTML = 'Gitalk comments not available by default when the website is previewed locally.'; + return; + } + new Gitalk({ + clientID: '{{ .Site.Params.comment.gitalk.client_id }}', + clientSecret: '{{ .Site.Params.comment.gitalk.client_secret }}', + repo: '{{ .Site.Params.comment.gitalk.repo }}', + owner: '{{ .Site.Params.comment.gitalk.owner }}', + admin: ['{{ .Site.Params.comment.gitalk.owner }}'], + id: '{{ .RelPermalink }}', + ...{{ .Site.Params.comment.gitalk.options | jsonify | safeJS }} + }).render('gitalk') + })() + </script> {{ end }} {{ end }} diff --git a/src/scss/utils/mixins/_sidebar.scss b/src/scss/utils/mixins/_sidebar.scss index f4b9b65..32e1426 100755 --- a/src/scss/utils/mixins/_sidebar.scss +++ b/src/scss/utils/mixins/_sidebar.scss @@ -32,6 +32,7 @@ .sidebar-button-icon { font-size: 2rem; + font-weight: 600; display: inline-block; text-align: center; width: 30px; @@ -86,6 +87,7 @@ // Font-awesome icon .sidebar-button-icon { font-size: 2rem; + font-weight: 600; display: inline-block; text-align: center; width: 30px; @@ -171,6 +173,7 @@ // Font-awesome icon .sidebar-button-icon { font-size: 2rem; + font-weight: 600; float: left; text-align: center; width: 30px; |