diff options
author | Vitaly Takmazov | 2018-11-20 15:16:08 +0300 |
---|---|---|
committer | Vitaly Takmazov | 2018-11-20 15:16:23 +0300 |
commit | b0cfa955c77c4e36bd334324d0ccb2ff24ff549f (patch) | |
tree | c40954b3c453c7138514d1439fdcd6d969af0bec /src/main/java/com/juick/server/www/controllers/MessagesWWW.java | |
parent | 152efe1f31e1e568272fc401a3a19f2c6f7c9c49 (diff) |
versioned avatars in www
Diffstat (limited to 'src/main/java/com/juick/server/www/controllers/MessagesWWW.java')
-rw-r--r-- | src/main/java/com/juick/server/www/controllers/MessagesWWW.java | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/src/main/java/com/juick/server/www/controllers/MessagesWWW.java b/src/main/java/com/juick/server/www/controllers/MessagesWWW.java index 77ee6e15..50d90555 100644 --- a/src/main/java/com/juick/server/www/controllers/MessagesWWW.java +++ b/src/main/java/com/juick/server/www/controllers/MessagesWWW.java @@ -24,6 +24,7 @@ import com.juick.server.util.HttpForbiddenException; import com.juick.server.util.HttpNotFoundException; import com.juick.server.util.UserUtils; import com.juick.server.util.WebUtils; +import com.juick.server.www.WebApp; import com.juick.service.*; import com.juick.util.MessageUtils; import org.apache.commons.codec.CharEncoding; @@ -68,9 +69,10 @@ public class MessagesWWW { @Inject private CrosspostService crosspostService; @Inject - private ApplicationEventPublisher applicationEventPublisher; + private WebApp webApp; - void fillUserModel(ModelMap model, com.juick.User user, com.juick.User visitor) { + private void fillUserModel(ModelMap model, com.juick.User user, com.juick.User visitor) { + user.setAvatar(webApp.getAvatarUrl(user)); model.addAttribute("user", user); model.addAttribute("isSubscribed", userService.isSubscribed(visitor.getUid(), user.getUid())); model.addAttribute("isInBL", userService.isInBL(visitor.getUid(), user.getUid())); @@ -100,6 +102,8 @@ public class MessagesWWW { } com.juick.User visitor = UserUtils.getCurrentUser(); + visitor.setAvatar(webApp.getAvatarUrl(visitor)); + if (paramSearch != null && paramSearch.length() > 64) { paramSearch = null; } @@ -160,6 +164,7 @@ public class MessagesWWW { List<Integer> blUIDs = userService.checkBL(visitor.getUid(), msgs.stream().map(m -> m.getUser().getUid()).collect(Collectors.toList())); msgs.forEach(m -> { + m.getUser().setAvatar(webApp.getAvatarUrl(m.getUser())); m.ReadOnly |= blUIDs.contains(m.getUser().getUid()); m.setUnread(unread.contains(m.getMid())); }); @@ -204,6 +209,7 @@ public class MessagesWWW { if (user.isBanned() || user.isAnonymous()) { throw new HttpNotFoundException(); } + visitor.setAvatar(webApp.getAvatarUrl(visitor)); List<Integer> mids; @@ -277,6 +283,7 @@ public class MessagesWWW { List<Integer> blUIDs = userService.checkBL(visitor.getUid(), msgs.stream().map(m -> m.getUser().getUid()).collect(Collectors.toList())); msgs.forEach(m -> { + m.getUser().setAvatar(webApp.getAvatarUrl(m.getUser())); m.ReadOnly |= blUIDs.contains(m.getUser().getUid()); m.setUnread(unread.contains(m.getMid())); }); @@ -315,6 +322,7 @@ public class MessagesWWW { if (visitor.isBanned()) { throw new HttpNotFoundException(); } + visitor.setAvatar(webApp.getAvatarUrl(visitor)); model.addAttribute("title", "Теги " + user.getName()); model.addAttribute("headers", "<meta name=\"robots\" content=\"noindex,nofollow\"/>"); @@ -333,6 +341,7 @@ public class MessagesWWW { if (visitor.isBanned()) { throw new HttpNotFoundException(); } + visitor.setAvatar(webApp.getAvatarUrl(visitor)); model.addAttribute("title", "Подписки " + user.getName()); model.addAttribute("headers", "<meta name=\"robots\" content=\"noindex\"/>"); model.addAttribute("visitor", visitor); @@ -349,6 +358,7 @@ public class MessagesWWW { if (visitor.isBanned()) { throw new HttpForbiddenException(); } + visitor.setAvatar(webApp.getAvatarUrl(visitor)); model.addAttribute("title", "Читатели " + user.getName()); model.addAttribute("headers", "<meta name=\"robots\" content=\"noindex\"/>"); model.addAttribute("visitor", visitor); @@ -365,6 +375,7 @@ public class MessagesWWW { if (visitor.isBanned() || visitor.getUid() != user.getUid()) { throw new HttpForbiddenException(); } + visitor.setAvatar(webApp.getAvatarUrl(visitor)); model.addAttribute("title", "Черный список " + user.getName()); model.addAttribute("headers", "<meta name=\"robots\" content=\"noindex\"/>"); model.addAttribute("visitor", visitor); @@ -380,7 +391,7 @@ public class MessagesWWW { @RequestParam(required = false, defaultValue = "0") int before, ModelMap model) throws IOException { com.juick.User visitor = UserUtils.getCurrentUser(); - + visitor.setAvatar(webApp.getAvatarUrl(visitor)); String paramTagStr = StringEscapeUtils.unescapeHtml4(tagName); com.juick.Tag paramTag = tagService.getTag(paramTagStr, false); if (paramTag == null) { @@ -412,6 +423,7 @@ public class MessagesWWW { msgs.stream().map(m -> m.getUser().getUid()).collect(Collectors.toList()) ); msgs.forEach(m -> { + m.getUser().setAvatar(webApp.getAvatarUrl(m.getUser())); m.ReadOnly |= blUIDs.contains(m.getUser().getUid()); m.setUnread(unread.contains(m.getMid())); }); @@ -453,8 +465,10 @@ public class MessagesWWW { if (visitor.isAnonymous()) { return "redirect:/login"; } + visitor.setAvatar(webApp.getAvatarUrl(visitor)); String title = "PM: Inbox"; List<com.juick.Message> msgs = pmQueriesService.getLastPMInbox(visitor.getUid()); + msgs.forEach(m -> m.getUser().setAvatar(webApp.getAvatarUrl(m.getUser()))); fillUserModel(model, visitor, visitor); model.addAttribute("title", title); model.addAttribute("visitor", visitor); @@ -470,9 +484,10 @@ public class MessagesWWW { if (visitor.isAnonymous()) { return "redirect:/login"; } + visitor.setAvatar(webApp.getAvatarUrl(visitor)); String title = "PM: Sent"; List<com.juick.Message> msgs = pmQueriesService.getLastPMSent(visitor.getUid()); - + msgs.forEach(m -> m.getUser().setAvatar(webApp.getAvatarUrl(m.getUser()))); if (WebUtils.isNotUserName(uname)) { uname = StringUtils.EMPTY; } @@ -495,7 +510,7 @@ public class MessagesWWW { if (!messagesService.canViewThread(mid, visitor.getUid())) { throw new HttpForbiddenException(); } - + visitor.setAvatar(webApp.getAvatarUrl(visitor)); Optional<com.juick.Message> message = messagesService.getMessage(mid); if (!message.isPresent() || message.get().getUser().isBanned()) { @@ -517,6 +532,7 @@ public class MessagesWWW { visitor.setUnreadCount(unread.size()); boolean isMsgAuthor = visitor.getUid() == msg.getUser().getUid(); boolean isInBL = userService.isInBLAny(msg.getUser().getUid(), visitor.getUid()); + msg.getUser().setAvatar(webApp.getAvatarUrl(msg.getUser())); msg.VisitorCanComment = isMsgAuthor || !(msg.ReadOnly || isInBL); } model.addAttribute("msg", msg); @@ -571,6 +587,7 @@ public class MessagesWWW { if (!visitor.isAnonymous()) { boolean isMsgAuthor = visitor.getUid() == msg.getUser().getUid(); boolean isReplyAuthor = visitor.getUid() == reply.getUser().getUid(); + reply.getUser().setAvatar(webApp.getAvatarUrl(reply.getUser())); reply.VisitorCanComment = isMsgAuthor || (!msg.ReadOnly && msg.VisitorCanComment && (isReplyAuthor || !userService.isInBLAny(visitor.getUid(), reply.getUser().getUid()))); } |