Files
Michael Fabian 'Xaymar' Dirks c9038087c5 Fix up comments cookie
2023-04-05 20:33:24 +02:00

50 lines
1.8 KiB
Plaintext

{% if site.xaymar.comments.enabled and page.comments %}
<div class="comments">
<div class="title">
Comments for: {{ page.title }}
</div>
<div class="content">
{% if site.xaymar.comments.provider == "disqus" %}
{% assign disqus_page_url = page.id | default: page.url %}
{% assign disqus_site_url = site.url %}
{% assign disqus_url = site.xaymar.comments.disqus.url | replace: ":siteurl", disqus_site_url | replace: ":pageurl", disqus_page_url %}
{% assign disqus_id = site.xaymar.comments.disqus.identifier %}
<div id="disqus_thread"></div>
<script>
function load_disqus_comments() {
var disqus_config = function () {
this.page.url = "{{ disqus_url }}/";
this.page.identifier = "{{ disqus_page_url }}/";
};
document.querySelector(".comments > .content > .privacy").style.display = "none";
var d = document, s = d.createElement('script');
s.defer = true;
s.src = 'https://{{ disqus_id }}.disqus.com/embed.js';
s.setAttribute('data-timestamp', +new Date());
(d.head || d.body).appendChild(s);
}
</script>
<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
<div class="privacy">
<button class="once">Embed Disqus once</button>
<button class="always">Embed Disqus for this Session</button>
</div>
<script>
document.querySelector(".comments > .content > .privacy > .once").addEventListener("click", (ev) => {
load_disqus_comments();
});
document.querySelector(".comments > .content > .privacy > .always").addEventListener("click", (ev) => {
document.cookie = "allow_disqus_embed=true;path=/";
load_disqus_comments();
});
if (document.cookie.indexOf("allow_disqus_embed") !== -1) {
load_disqus_comments();
}
</script>
{% endif %}
</div>
</div>
{% endif %}