Fixed render atom.xml error.

pull/146/head
ruibaby 2019-05-07 21:09:10 +08:00
parent 1c3a40cbab
commit 2929d08bb5
3 changed files with 22 additions and 11 deletions

View File

@ -2,6 +2,7 @@ package run.halo.app.controller.content;
import freemarker.template.Template; import freemarker.template.Template;
import freemarker.template.TemplateException; import freemarker.template.TemplateException;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable; import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort; import org.springframework.data.domain.Sort;
@ -15,6 +16,7 @@ import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer; import org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer;
import run.halo.app.model.entity.Post; import run.halo.app.model.entity.Post;
import run.halo.app.model.enums.PostStatus; import run.halo.app.model.enums.PostStatus;
import run.halo.app.model.vo.PostListVO;
import run.halo.app.service.OptionService; import run.halo.app.service.OptionService;
import run.halo.app.service.PostService; import run.halo.app.service.PostService;
@ -140,11 +142,14 @@ public class ContentFeedController {
* @param pageable pageable * @param pageable pageable
* @return List<Post> * @return List<Post>
*/ */
private List<Post> buildPosts(Pageable pageable) { private List<PostListVO> buildPosts(Pageable pageable) {
if (pageable == null) { if (pageable == null) {
return postService.listAllBy(PostStatus.PUBLISHED); Page<Post> postPage = postService.pageBy(PostStatus.PUBLISHED, null);
return postService.convertToListVo(postPage).getContent();
} }
return postService.pageBy(PostStatus.PUBLISHED, pageable).map(postService::filterIfEncrypt).getContent(); Page<Post> postPage = postService.pageBy(PostStatus.PUBLISHED, pageable);
Page<PostListVO> posts = postService.convertToListVo(postPage);
return posts.getContent();
} }
} }

View File

@ -13,10 +13,8 @@ import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import run.halo.app.model.entity.Post; import run.halo.app.model.entity.Post;
import run.halo.app.model.entity.Tag; import run.halo.app.model.entity.Tag;
import run.halo.app.service.OptionService; import run.halo.app.model.vo.PostListVO;
import run.halo.app.service.PostTagService; import run.halo.app.service.*;
import run.halo.app.service.TagService;
import run.halo.app.service.ThemeService;
import static org.springframework.data.domain.Sort.Direction.DESC; import static org.springframework.data.domain.Sort.Direction.DESC;
@ -32,14 +30,21 @@ public class ContentTagController {
private final TagService tagService; private final TagService tagService;
private final PostService postService;
private final PostTagService postTagService; private final PostTagService postTagService;
private final OptionService optionService; private final OptionService optionService;
private final ThemeService themeService; private final ThemeService themeService;
public ContentTagController(TagService tagService, PostTagService postTagService, OptionService optionService, ThemeService themeService) { public ContentTagController(TagService tagService,
PostService postService,
PostTagService postTagService,
OptionService optionService,
ThemeService themeService) {
this.tagService = tagService; this.tagService = tagService;
this.postService = postService;
this.postTagService = postTagService; this.postTagService = postTagService;
this.optionService = optionService; this.optionService = optionService;
this.themeService = themeService; this.themeService = themeService;
@ -84,7 +89,8 @@ public class ContentTagController {
Tag tag = tagService.getBySlugNameOfNonNull(slugName); Tag tag = tagService.getBySlugNameOfNonNull(slugName);
final Pageable pageable = PageRequest.of(page - 1, optionService.getPostPageSize(), sort); final Pageable pageable = PageRequest.of(page - 1, optionService.getPostPageSize(), sort);
Page<Post> posts = postTagService.pagePostsBy(tag.getId(), pageable); Page<Post> postPage = postTagService.pagePostsBy(tag.getId(), pageable);
Page<PostListVO> posts = postService.convertToListVo(postPage);
final int[] rainbow = PageUtil.rainbow(page, posts.getTotalPages(), 3); final int[] rainbow = PageUtil.rainbow(page, posts.getTotalPages(), 3);
model.addAttribute("is_tags", true); model.addAttribute("is_tags", true);

View File

@ -22,7 +22,7 @@
<title>${post.title!}</title> <title>${post.title!}</title>
<link>${options.blog_url!}/archives/${post.url!}</link> <link>${options.blog_url!}/archives/${post.url!}</link>
<comments>${options.blog_url!}/archives/${post.url!}#comments</comments> <comments>${options.blog_url!}/archives/${post.url!}#comments</comments>
<pubDate>${post.createTime}</pubDate> <pubDate>${post.createTime!}</pubDate>
<dc:creator><![CDATA[${user.nickName!}]]></dc:creator> <dc:creator><![CDATA[${user.nickName!}]]></dc:creator>
<#if post.categories?? && post.categories?size gt 0> <#if post.categories?? && post.categories?size gt 0>
@ -40,7 +40,7 @@
${post.formatContent!} ${post.formatContent!}
]]> ]]>
</content:encoded> </content:encoded>
<slash:comments>${post.comments?size}</slash:comments> <slash:comments>${post.commentCount!0}</slash:comments>
</item> </item>
</#list> </#list>
</#if> </#if>