46 lines
1.8 KiB
Plaintext
Executable File
46 lines
1.8 KiB
Plaintext
Executable File
<% if(
|
|
theme.comment.valine.enable
|
|
&& theme.comment.valine.appid
|
|
&& theme.comment.valine.appkey
|
|
) { %>
|
|
<div class="valine-container">
|
|
<script src='//unpkg.com/valine/dist/Valine.min.js'></script>
|
|
<div id="vcomments"></div>
|
|
<script>
|
|
const temp_valine_input_meta = '<%= theme.comment.valine.meta %>';
|
|
new Valine({
|
|
el: '#vcomments',
|
|
appId: '<%= theme.comment.valine.appid %>',
|
|
appKey: '<%= theme.comment.valine.appkey %>',
|
|
meta: temp_valine_input_meta ? temp_valine_input_meta.split(',') : ['nick', 'mail', 'link'],
|
|
avatar: 'wavatar',
|
|
enableQQ: true,
|
|
placeholder: '<%= theme.comment.valine.placeholder %>',
|
|
lang: '<%= config.language %>'.toLowerCase()
|
|
});
|
|
|
|
// Add "Author" identify
|
|
const getValineDomTimer = setInterval(() => {
|
|
const vcards = document.querySelectorAll('#vcomments .vcards .vcard');
|
|
if (vcards.length > 0) {
|
|
|
|
let author = '<%= theme.base_info.author || config.author %>';
|
|
if (author) {
|
|
author = author.toLocaleLowerCase();
|
|
}
|
|
|
|
for (let vcard of vcards) {
|
|
const vnick = vcard.querySelector('.vhead .vnick');
|
|
if (vnick.innerHTML.toLocaleLowerCase() === author) {
|
|
vcard.classList.add('author');
|
|
}
|
|
}
|
|
clearInterval(getValineDomTimer);
|
|
} else {
|
|
clearInterval(getValineDomTimer);
|
|
}
|
|
}, 2000);
|
|
</script>
|
|
</div>
|
|
<% } %>
|