From 8207857f4a3ab8a3bdae8aa248637700c6072dd0 Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Sun, 17 Mar 2024 07:55:22 +0300 Subject: Do not resolve nicknames for recommendations --- src/main/java/com/juick/service/MessagesServiceImpl.java | 11 +++++++++-- src/main/resources/templates/views/thread.html | 2 +- src/test/java/com/juick/server/tests/ServerTests.java | 4 ++-- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/juick/service/MessagesServiceImpl.java b/src/main/java/com/juick/service/MessagesServiceImpl.java index 1c504a2d..91a257ef 100644 --- a/src/main/java/com/juick/service/MessagesServiceImpl.java +++ b/src/main/java/com/juick/service/MessagesServiceImpl.java @@ -508,8 +508,15 @@ public class MessagesServiceImpl extends BaseJdbcService implements MessagesServ new MapSqlParameterSource("mids", mids).addValue("visitorUid", visitorUid), (rs, rowNum) -> { User user = new User(); user.setUid(rs.getInt(2)); - user.setName(rs.getString(3)); - user.setUri(URI.create(rs.getString(4))); + var uri = URI.create(rs.getString(4)); + if (StringUtils.isEmpty(uri.toASCIIString())) { + user.setName(rs.getString(3)); + } else { + user.setUri(uri); + String path = uri.getPath(); + String name = path.substring(path.lastIndexOf('/') + 1); + user.setName(name + "@" + uri.getHost()); + } return new ImmutablePair<>(rs.getInt(1), user); }); } diff --git a/src/main/resources/templates/views/thread.html b/src/main/resources/templates/views/thread.html index 19d81d75..e3fdee40 100644 --- a/src/main/resources/templates/views/thread.html +++ b/src/main/resources/templates/views/thread.html @@ -110,7 +110,7 @@ {% if rec.uri.toString() is empty %} @{{ rec.name }}{% if loop.index < (loop.length - 1) %}, {% endif %} {% else %} - @{{ rec.name }}{% if loop.index < (loop.length - 1) %}, {% endif %} + @{{ rec.name }}{% if loop.index < (loop.length - 1) %}, {% endif %} {% endif %} {% endfor %} diff --git a/src/test/java/com/juick/server/tests/ServerTests.java b/src/test/java/com/juick/server/tests/ServerTests.java index b97ae8a3..47bb4d22 100644 --- a/src/test/java/com/juick/server/tests/ServerTests.java +++ b/src/test/java/com/juick/server/tests/ServerTests.java @@ -1589,14 +1589,14 @@ public class ServerTests { assertThat(CollectionUtils.isEqualCollection( messagesService.getMessagesRecommendations(monstreek.getUid(), Collections.singletonList(mid)).stream() .map(Pair::getRight).map(User::getName).toList(), - Arrays.asList("ermine", "pogo", "Anonymous")), is(true)); + Arrays.asList("ermine", "pogo", "test@example.com")), is(true)); privacyQueriesService.blacklistUser(userService.getUserByName("monstreek"), userService.getUserByName("pogo")); assertThat(messagesService.getMessage(mid).get().getRecommendations().size(), is(3)); assertThat(CollectionUtils.isEqualCollection( messagesService.getMessagesRecommendations(monstreek.getUid(), Collections.singletonList(mid)).stream() .map(Pair::getRight).map(User::getName).toList(), - Arrays.asList("ermine", "Anonymous")), is(true)); + Arrays.asList("ermine", "test@example.com")), is(true)); jdbcTemplate.execute("DELETE FROM favorites"); } -- cgit v1.2.3