hexo-theme-stellar/layout/_partial/plugins/comments/layout.ejs

43 lines
1.3 KiB
Plaintext

<%
var cmt = {
service: theme.comments.service
};
if (cmt.service) {
cmt[cmt.service] = Object.assign({}, theme.comments[cmt.service]);
}
var loadComment = false;
if (theme.comments.service && theme.comments.service.length > 0) {
if (page.comments == undefined || page.comments != false) {
loadComment = true;
}
}
// 合并项目评论
if (loadComment && page.layout == 'wiki' && page.wiki) {
let proj = theme.wiki.projects[page.wiki];
if (proj.comment_title != undefined && page.comment_title == undefined) {
if (['utterances', 'beaudar', 'giscus'].includes(theme.comments.service)) {
page.comment_title = proj.comment_title;
}
}
if (proj.comments && proj.comments.service) {
cmt = proj.comments;
let s = proj.comments.service;
cmt[s] = Object.assign({}, theme.comments[s], proj.comments[s]);
}
}
if (cmt.service && page[cmt.service]) {
Object.assign(cmt[cmt.service], page[cmt.service]);
}
page.cmt = cmt;
%>
<% if (loadComment) { %>
<div class='related-wrap md-text reveal' id="comments">
<div class='cmt-title cap theme'>
<%- page.comment_title != undefined ? markdown(page.comment_title) : __('meta.comment_title') %>
</div>
<div class='cmt-body <%- cmt.service %>'>
<%- partial(cmt.service + '/layout') %>
</div>
</div>
<% } %>