diff options
author | Emruz Hossain <hossainemruz@gmail.com> | 2022-03-30 22:57:40 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-03-30 22:57:40 +0300 |
commit | a50f947384081797aa6a08301185c4058c77b355 (patch) | |
tree | dac2f9bdf6af61ab46289fc847ab20455fdee733 | |
parent | a1bff160502857b51c9a11e28316b4356f06e1ea (diff) |
Add commento.io support (#564)
Signed-off-by: hossainemruz <hossainemruz@gmail.com>
-rw-r--r-- | layouts/_default/single.html | 21 | ||||
-rw-r--r-- | layouts/partials/comments.html | 11 | ||||
-rw-r--r-- | layouts/partials/comments/commento.html | 12 | ||||
-rw-r--r-- | layouts/partials/comments/disqus.html | 29 | ||||
-rw-r--r-- | layouts/partials/comments/giscus.html | 28 | ||||
-rw-r--r-- | layouts/partials/comments/utteranc.html (renamed from layouts/partials/utteranc.html) | 8 | ||||
-rw-r--r-- | layouts/partials/comments/valine.html | 18 | ||||
-rw-r--r-- | layouts/partials/disqus.html | 32 | ||||
-rw-r--r-- | layouts/partials/giscus.html | 25 | ||||
-rw-r--r-- | layouts/partials/valine.html | 17 |
10 files changed, 107 insertions, 94 deletions
diff --git a/layouts/_default/single.html b/layouts/_default/single.html index dc80acf..72ec18c 100644 --- a/layouts/_default/single.html +++ b/layouts/_default/single.html @@ -157,26 +157,13 @@ <hr /> <!----- Add comment support -----> - {{ with site.Params.features.comment }} - {{ if .enable }} - <!-- Add Disqus forum --> - {{ if .disqus.shortName }} - {{ partial "disqus.html" . }} - <!-- Add valine --> - {{ else if .valine }} - {{ partial "valine.html" . }} - <!-- Add utteranc --> - {{ else if .utteranc }} - {{ partial "utteranc.html" . }} - <!-- Add giscus --> - {{ else if .giscus }} - {{ partial "giscus.html" . }} - {{ end }} - {{ end }} + {{ if site.Params.features.comment.enable }} + {{ partial "comments.html" site.Params.features.comment }} {{ end }} + <!-- Keep backward compatibility with old config.yaml --> {{ if site.DisqusShortname }} - {{ partial "disqus.html" . }} + {{ partial "comments/disqus.html" (dict (slice "disqus" "shortName") site.DisqusShortname) }} {{ end }} </div> diff --git a/layouts/partials/comments.html b/layouts/partials/comments.html new file mode 100644 index 0000000..3abfbb9 --- /dev/null +++ b/layouts/partials/comments.html @@ -0,0 +1,11 @@ +{{ if .disqus.shortName }} + {{ partial "comments/disqus.html" . }} +{{ else if .valine }} + {{ partial "comments/valine.html" . }} +{{ else if .utteranc }} + {{ partial "comments/utteranc.html" . }} +{{ else if .giscus }} + {{ partial "comments/giscus.html" . }} +{{ else if .commento }} + {{ partial "comments/commento.html" . }} +{{ end }} diff --git a/layouts/partials/comments/commento.html b/layouts/partials/comments/commento.html new file mode 100644 index 0000000..d230ef1 --- /dev/null +++ b/layouts/partials/comments/commento.html @@ -0,0 +1,12 @@ +{{ with .commento }} + {{ $serverURL := .serverURL }} + {{ $autoInit := .autoInit | default "true"}} + {{ $hideDeleted := .hideDeleted | default "false"}} + + <script defer + src="http://{{ $serverURL }}/js/commento.js" + data-auto-init="{{ $autoInit }}" + data-hide-deleted="{{ $hideDeleted }}" + ></script> + <div id="commento"></div> +{{ end }} diff --git a/layouts/partials/comments/disqus.html b/layouts/partials/comments/disqus.html new file mode 100644 index 0000000..1846ae9 --- /dev/null +++ b/layouts/partials/comments/disqus.html @@ -0,0 +1,29 @@ +{{ with .disqus }} + <div id="disqus_thread"></div> + <script type="text/javascript"> + (function () { + // Don't ever inject Disqus on localhost--it creates unwanted + // discussions from 'localhost:1313' on your Disqus account... + if (window.location.hostname == "localhost") return; + + var dsq = document.createElement("script"); + dsq.type = "text/javascript"; + dsq.async = true; + var disqus_shortname = "{{ .shortName }}"; + dsq.src = "//" + disqus_shortname + ".disqus.com/embed.js"; + ( + document.getElementsByTagName("head")[0] || + document.getElementsByTagName("body")[0] + ).appendChild(dsq); + })(); + </script> + <noscript + >{{ i18n "comments_javascript" }} + <a href="https://disqus.com/?ref_noscript" + >{{ i18n "comments_by" }} Disqus.</a + ></noscript + > + <a href="https://disqus.com/" class="dsq-brlink" + >{{ i18n "comments_by" }} <span class="logo-disqus">Disqus</span></a + > +{{ end }} diff --git a/layouts/partials/comments/giscus.html b/layouts/partials/comments/giscus.html new file mode 100644 index 0000000..dacac4e --- /dev/null +++ b/layouts/partials/comments/giscus.html @@ -0,0 +1,28 @@ +{{ with .giscus }} +{{ $repo := .repo }} +{{ $repoID := .repoID }} +{{ $category := .category | default "General" }} +{{ $categoryID := .categoryID }} +{{ $theme := .theme | default "light" }} +{{ $map := .map | default "url" }} +{{ $reaction := .reaction | default "1" }} +{{ $metadata := .metadata | default "0" }} +{{ $inputPosition := .inputPosition | default "bottom" }} +{{ $crossOrigin := .crossOrigin | default "anonymous" }} + +<script src="https://giscus.app/client.js" + data-repo="{{ $repo }}" + data-repo-id="{{ $repoID }}" + data-category="{{ $category }}" + data-category-id="{{ $categoryID }}" + data-mapping="{{ $map }}" + data-reactions-enabled="{{ $reaction }}" + data-emit-metadata="{{ $metadata }}" + data-input-position="{{ $inputPosition }}" + data-theme="{{ $theme }}" + data-lang="{{ .Site.Language.Lang }}" + crossorigin="{{ $crossOrigin }}" + async> +</script> +{{ end }} + diff --git a/layouts/partials/utteranc.html b/layouts/partials/comments/utteranc.html index 0bbaaad..40e37f7 100644 --- a/layouts/partials/utteranc.html +++ b/layouts/partials/comments/utteranc.html @@ -1,6 +1,7 @@ -{{ $repo := site.Params.features.comment.utteranc.repo }} -{{ $issueTerm := site.Params.features.comment.utteranc.issueTerm }} -{{ $theme := site.Params.features.comment.utteranc.theme }} +{{ with .utteranc }} +{{ $repo := .repo }} +{{ $issueTerm := .issueTerm }} +{{ $theme := .theme }} <div id="utteranc_thread"></div> <div id="comments" class="comments"> @@ -20,3 +21,4 @@ document.getElementById('comments-container').appendChild(utterances); })(); </script> +{{ end }} diff --git a/layouts/partials/comments/valine.html b/layouts/partials/comments/valine.html new file mode 100644 index 0000000..264077e --- /dev/null +++ b/layouts/partials/comments/valine.html @@ -0,0 +1,18 @@ +{{ with .valine }} +<div id="vcomments"></div> +<script src="//cdn1.lncld.net/static/js/3.0.4/av-min.js"></script> +<script src="//unpkg.com/valine/dist/Valine.min.js"></script> +<script type="text/javascript"> + new Valine({ + el: "#vcomments", + appId: "{{ .appId }}", + appKey: "{{ .appKey }}", + avatar: "{{ .avatar }}", + placeholder: "{{ .placeholder }}", + visitor: "{{ .visitor }}", + lang: "{{ .lang }}", + recordIP: "{{ .recordIP }}", + enableQQ: "{{ .enableQQ }}", + }); +</script> +{{ end }} diff --git a/layouts/partials/disqus.html b/layouts/partials/disqus.html deleted file mode 100644 index 7235257..0000000 --- a/layouts/partials/disqus.html +++ /dev/null @@ -1,32 +0,0 @@ -{{ $disqusShortName := site.DisqusShortname }} -{{ if site.Params.features.comment.disqus.shortName }} - {{ $disqusShortName = site.Params.features.comment.disqus.shortName }} -{{ end }} - -<div id="disqus_thread"></div> -<script type="text/javascript"> - (function () { - // Don't ever inject Disqus on localhost--it creates unwanted - // discussions from 'localhost:1313' on your Disqus account... - if (window.location.hostname == "localhost") return; - - var dsq = document.createElement("script"); - dsq.type = "text/javascript"; - dsq.async = true; - var disqus_shortname = "{{ $disqusShortName }}"; - dsq.src = "//" + disqus_shortname + ".disqus.com/embed.js"; - ( - document.getElementsByTagName("head")[0] || - document.getElementsByTagName("body")[0] - ).appendChild(dsq); - })(); -</script> -<noscript - >{{ i18n "comments_javascript" }} - <a href="https://disqus.com/?ref_noscript" - >{{ i18n "comments_by" }} Disqus.</a - ></noscript -> -<a href="https://disqus.com/" class="dsq-brlink" - >{{ i18n "comments_by" }} <span class="logo-disqus">Disqus</span></a -> diff --git a/layouts/partials/giscus.html b/layouts/partials/giscus.html deleted file mode 100644 index 8d9c689..0000000 --- a/layouts/partials/giscus.html +++ /dev/null @@ -1,25 +0,0 @@ -{{ $repo := site.Params.features.comment.giscus.repo }} -{{ $repoID := site.Params.features.comment.giscus.repoID }} -{{ $category := site.Params.features.comment.giscus.category | default "General" }} -{{ $categoryID := site.Params.features.comment.giscus.categoryID }} -{{ $theme := site.Params.features.comment.giscus.theme | default "light" }} -{{ $map := site.Params.features.comment.giscus.map | default "url" }} -{{ $reaction := site.Params.features.comment.giscus.reaction | default "1" }} -{{ $metadata := site.Params.features.comment.giscus.metadata | default "0" }} -{{ $inputPosition := site.Params.features.comment.giscus.inputPosition | default "bottom" }} -{{ $crossOrigin := site.Params.features.comment.giscus.crossOrigin | default "anonymous" }} - -<script src="https://giscus.app/client.js" - data-repo="{{ $repo }}" - data-repo-id="{{ $repoID }}" - data-category="{{ $category }}" - data-category-id="{{ $categoryID }}" - data-mapping="{{ $map }}" - data-reactions-enabled="{{ $reaction }}" - data-emit-metadata="{{ $metadata }}" - data-input-position="{{ $inputPosition }}" - data-theme="{{ $theme }}" - data-lang="{{ .Site.Language.Lang }}" - crossorigin="{{ $crossOrigin }}" - async> -</script> diff --git a/layouts/partials/valine.html b/layouts/partials/valine.html deleted file mode 100644 index c72e28a..0000000 --- a/layouts/partials/valine.html +++ /dev/null @@ -1,17 +0,0 @@ -<!-- valine --> -<div id="vcomments"></div> -<script src="//cdn1.lncld.net/static/js/3.0.4/av-min.js"></script> -<script src="//unpkg.com/valine/dist/Valine.min.js"></script> -<script type="text/javascript"> - new Valine({ - el: "#vcomments", - appId: "{{ .valine.appId }}", - appKey: "{{ .valine.appKey }}", - avatar: "{{ .valine.avatar }}", - placeholder: "{{ .valine.placeholder }}", - visitor: "{{ .valine.visitor }}", - lang: "{{ .valine.lang }}", - recordIP: "{{ .valine.recordIP }}", - enableQQ: "{{ .valine.enableQQ }}", - }); -</script> |