64 lines
3.2 KiB
HTML
64 lines
3.2 KiB
HTML
<!DOCTYPE html>
|
|
<html xmlns:th="https://www.thymeleaf.org"
|
|
th:replace="~{modules/layouts/layout :: layout(_head = null,_content = ~{::content},_title = ${title + ' - ' + site.title})}">
|
|
|
|
<th:block th:fragment="content">
|
|
|
|
<div class="page_main uk-width-2-3@m">
|
|
<th:block th:replace="~{modules/header}"/>
|
|
<div id="pjax-container">
|
|
<div class="normal_list">
|
|
<div class="normal_list_inner" uk-height-viewport="offset-top: true">
|
|
<div class="photos_cat_nav">
|
|
<ul id="cat_nav_items">
|
|
<li>
|
|
<a href="/photos"
|
|
th:classappend="${#lists.isEmpty(param.group) ? 'active' : ''}">全部<span></span></a>
|
|
</li>
|
|
<th:block th:each="group : ${groups}">
|
|
<li>
|
|
<a th:href="@{|/photos?group=${group.metadata.name}|}"
|
|
th:classappend="${#lists.contains(param.group, group.metadata.name) ? 'active' : ''}"
|
|
th:text="${group.spec.displayName}"><span></span>
|
|
</a>
|
|
</li>
|
|
</th:block>
|
|
</ul>
|
|
</div>
|
|
<div id="photos_item" class="norpost_list">
|
|
<div th:unless="${#lists.isEmpty(photos.items)}" class="gallery-photos page" >
|
|
<div th:each="photo : ${photos.items}" class="gallery-photo">
|
|
<span th:with="img = ${ not #strings.isEmpty(photo.spec.cover) ? photo.spec.cover : photo.spec.url}"
|
|
th:href="${img}" data-fancybox="gallery" class="fancybox"
|
|
th:data-thumb="${img}">
|
|
<img class="photo-img" loading='lazy' th:src="${img}">
|
|
</span>
|
|
</div>
|
|
</div>
|
|
<th:block th:if="${#lists.isEmpty(photos.items)}">
|
|
<th:block th:replace="~{macro/tpl/content-none}"/>
|
|
</th:block>
|
|
</div>
|
|
<th:block th:if="${photos.hasPrevious()} or ${photos.hasNext()}">
|
|
<div id="p_pagination">
|
|
<div class="post-paging" th:if="${photos.hasNext()}">
|
|
<a th:data="@{${photos.nextUrl}}" th:text="${theme.config.base_set.site_page}"></a>
|
|
</div>
|
|
</div>
|
|
</th:block>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<script>
|
|
window.onresize = () => {
|
|
var galleryPhotos = document.querySelectorAll('.gallery-photos .gallery-photo');
|
|
if(galleryPhotos.length>0) {
|
|
waterfall('.gallery-photos');
|
|
}
|
|
};
|
|
</script>
|
|
<th:block th:replace="~{modules/footer-main}"/>
|
|
</div>
|
|
</th:block>
|
|
|
|
</html> |