utterances.html 1.3 KB

1234567891011121314151617181920212223242526272829303132
  1. <div id="utterances"></div>
  2. <noscript>Please enable JavaScript to view the <a href="https://github.com/utterance">comments powered by utterances.</a></noscript>
  3. <script>
  4. document.addEventListener('DOMContentLoaded', function () {
  5. try {
  6. {{ $owner:= .Site.Params.utterances.owner }}
  7. var owner = JSON.parse({{ $owner | jsonify }});
  8. {{ $repo:= .Site.Params.utterances.repo }}
  9. var repo = JSON.parse({{ $repo | jsonify }});
  10. {{ $baseTheme:= index .Site.Params.themeOptions 0 }}
  11. var baseTheme = JSON.parse({{ $baseTheme | jsonify }});
  12. var localTheme = localStorage.getItem('theme');
  13. var currentTheme = localTheme || baseTheme;
  14. var utterTheme = currentTheme === "dark" ? 'photon-dark' : 'github-light'
  15. var myScript = document.createElement('script');
  16. myScript.setAttribute('src', 'https://utteranc.es/client.js');
  17. myScript.setAttribute('repo', `${owner}/${repo}`);
  18. myScript.setAttribute('issue-term', 'pathname');
  19. myScript.setAttribute('theme', utterTheme);
  20. myScript.setAttribute('crossorigin', 'anonymous');
  21. myScript.setAttribute('async', '');
  22. myScript.onload = function() {
  23. }
  24. document.getElementById('utterances').appendChild(myScript);
  25. } catch (err) {
  26. console.log(err);
  27. }
  28. });
  29. </script>