giscus.html (1777B)
1 {{- if isset .Site.Params "giscus" -}} 2 {{- if and (isset .Site.Params.giscus "repo") (not (eq .Site.Params.giscus.repo "" )) (eq (.Params.disableComments | default false) false) -}} 3 <div class="comments"> 4 <script> 5 6 let getTheme = window.localStorage && window.localStorage.getItem("colorscheme"); 7 8 getTheme = getTheme == null ? '{{$.Site.Params.giscus.theme}}' : getTheme; 9 10 let s = document.createElement('script'); 11 s.src = 'https://giscus.app/client.js'; 12 s.setAttribute('data-repo', '{{ .Site.Params.giscus.repo }}'); 13 s.setAttribute('data-repo-id', '{{ .Site.Params.giscus.repoID }}'); 14 s.setAttribute('data-category', '{{ .Site.Params.giscus.category }}'); 15 s.setAttribute('data-category-id', '{{ .Site.Params.giscus.categoryID }}'); 16 s.setAttribute('data-mapping', '{{ default "pathname" .Site.Params.giscus.mapping }}'); 17 s.setAttribute('data-term', '{{ .Site.Params.giscus.term }}'); 18 s.setAttribute('data-strict', '{{ default "0" .Site.Params.giscus.strict }}'); 19 s.setAttribute('data-reactions-enabled', '{{ default "1" .Site.Params.giscus.reactionsEnabled }}'); 20 s.setAttribute('data-emit-metadata', '{{ default "0" .Site.Params.giscus.emitMetadata }}'); 21 s.setAttribute('data-input-position', '{{ default "bottom" .Site.Params.giscus.inputPosition }}'); 22 s.setAttribute('data-theme', getTheme); 23 s.setAttribute('data-lang', '{{ default "en" .Site.Params.giscus.lang }}'); 24 s.setAttribute('data-loading', '{{ .Site.Params.giscus.loading }}'); 25 s.setAttribute('crossorigin', 'anonymous'); 26 s.setAttribute('async', ''); 27 document.querySelector('div.comments').innerHTML = ''; 28 document.querySelector('div.comments').appendChild(s); 29 30 </script> 31 </div> 32 {{- end -}} 33 {{- end -}}