68 lines
1.9 KiB
Plaintext
Executable File
68 lines
1.9 KiB
Plaintext
Executable File
<%
|
|
page.robots = 'noindex,follow';
|
|
if (page.menu_id == undefined) {
|
|
page.menu_id = 'post';
|
|
}
|
|
if (page.author) {
|
|
page.header = false;
|
|
}
|
|
function layoutArchiveList() {
|
|
var el = ''
|
|
var cls = ''
|
|
if (page.author) {
|
|
page.title = page.author.name
|
|
page.banner = page.author.banner
|
|
page.banner_info = {
|
|
avatar: page.author.avatar,
|
|
subtitle: page.author.description
|
|
}
|
|
el += partial('_partial/main/navbar/article_banner')
|
|
cls += ' author'
|
|
} else {
|
|
page.title = __('btn.archives')
|
|
el += partial('_partial/main/navbar/nav_tabs_blog')
|
|
}
|
|
el += `<div class="post-list${cls} archives">`
|
|
var years = []
|
|
const posts = page.author != null ? site.posts.filter(p => (p.author || theme.default_author.id) == page.author.id) : site.posts
|
|
posts.sort('date', -1).each(function(post) {
|
|
post.year = date(post.date, 'YYYY')
|
|
if (post.year && (years.includes(post.year) == false) && (post.title || post.date)) {
|
|
years.push(post.year)
|
|
}
|
|
})
|
|
for (let year of years) {
|
|
el += `<article class="${scrollreveal('')}" id="archive">`
|
|
el += `<div class='archive-header h4'>${year}</div>`
|
|
posts.sort('date', -1).filter(function (post) {
|
|
post.year = date(post.date, 'YYYY')
|
|
return post.year == year
|
|
}).each(function(post) {
|
|
el += `<div class="archive-list">`
|
|
el +=`<a class='post fs14' href="${url_for(post.link || post.path)}">`
|
|
el += `<time>${date(post.date, 'MM-DD')}</time>`
|
|
el += `<span>`
|
|
if (post.title) {
|
|
el += post.title
|
|
} else if (post.date) {
|
|
el += date(post.date, config.date_format)
|
|
}
|
|
el += `</span>`
|
|
el += `</a>`
|
|
el += `</div>`
|
|
})
|
|
el += `</article>`
|
|
}
|
|
el += `</div>`
|
|
return el
|
|
}
|
|
function layoutDiv() {
|
|
if (page.posts && (is_category() || is_tag())) {
|
|
return partial('index')
|
|
} else {
|
|
return layoutArchiveList()
|
|
}
|
|
}
|
|
%>
|
|
|
|
<%- layoutDiv() %> |