aboutsummaryrefslogtreecommitdiff
path: root/juick-server/src/main/java/com/juick/service
diff options
context:
space:
mode:
Diffstat (limited to 'juick-server/src/main/java/com/juick/service')
-rw-r--r--juick-server/src/main/java/com/juick/service/UserService.java2
-rw-r--r--juick-server/src/main/java/com/juick/service/UserServiceImpl.java15
2 files changed, 17 insertions, 0 deletions
diff --git a/juick-server/src/main/java/com/juick/service/UserService.java b/juick-server/src/main/java/com/juick/service/UserService.java
index 661f386c9..7f4bb1fe7 100644
--- a/juick-server/src/main/java/com/juick/service/UserService.java
+++ b/juick-server/src/main/java/com/juick/service/UserService.java
@@ -30,6 +30,8 @@ public interface UserService {
User getFullyUserByName(String username);
+ User getUserByEmail(String email);
+
List<User> getFullyUsersByNames(Collection<String> usernames);
User getUserByJID(String jid);
diff --git a/juick-server/src/main/java/com/juick/service/UserServiceImpl.java b/juick-server/src/main/java/com/juick/service/UserServiceImpl.java
index 0b8ed13b0..1fc725258 100644
--- a/juick-server/src/main/java/com/juick/service/UserServiceImpl.java
+++ b/juick-server/src/main/java/com/juick/service/UserServiceImpl.java
@@ -141,6 +141,21 @@ public class UserServiceImpl extends BaseJdbcService implements UserService {
return null;
}
+ @Override
+ @Transactional(readOnly = true)
+ public User getUserByEmail(String email) {
+ if (StringUtils.isNotBlank(email)) {
+ List<User> list = getJdbcTemplate().query(
+ "SELECT id, nick, banned, lang FROM users WHERE id = (SELECT user_id FROM emails WHERE email = ?)",
+ new UserMapper(),
+ email);
+
+ if (!list.isEmpty())
+ return list.get(0);
+ }
+ return AnonymousUser.INSTANCE;
+ }
+
@Transactional(readOnly = true)
@Override
public List<User> getFullyUsersByNames(final Collection<String> usernames) {