InkSoul/themes/meme_cdn/layouts/partials/third-party/valine.html

50 lines
2.0 KiB
HTML

{{- $defaultCDN := "https://cdn.jsdelivr.net" -}}
<script>
function loadComments() {
if (!document.getElementById('vcomments')) {
return;
}
if (typeof Valine === 'undefined') {
var getScript = (options) => {
var script = document.createElement('script');
script.defer = true;
script.crossOrigin = 'anonymous';
Object.keys(options).forEach((key) => {
script[key] = options[key];
});
document.body.appendChild(script);
};
getScript({
src: '{{ .Site.Params.cdnCustomized | default $defaultCDN }}/npm/valine@1.4.14/dist/Valine.min.js',
onload: () => {
newValine();
}
});
} else {
newValine();
}
}
function newValine() {
new Valine({
el: '#vcomments',
appId: '{{ .Site.Params.valineAppId }}',
appKey: '{{ .Site.Params.valineAppKey }}',
placeholder: '{{ .Site.Params.valinePlaceholder }}',
path: {{ .Site.Params.valinePath | default "location.pathname" | safeJS }},
avatar: '{{ .Site.Params.valineAvatar }}',
meta: {{ .Site.Params.valineMeta }},
pageSize: {{ .Site.Params.valinePageSize }},
lang: '{{ .Site.Params.valineLang }}',
visitor: {{ .Site.Params.valineVisitor }},
highlight: {{ .Site.Params.valineHighlight }},
avatarForce: {{ .Site.Params.valineAvatarForce }},
recordIP: {{ .Site.Params.valineRecordIP }},
serverURLs: '{{ .Site.Params.valineServerURLs }}',
emojiCDN: '{{ .Site.Params.valineEmojiCDN }}',
emojiMaps: {{ .Site.Params.valineEmojiMaps }},
enableQQ: {{ .Site.Params.valineEnableQQ }},
requiredFields: {{ .Site.Params.valineRequiredFields }}
});
}
</script>