diff --git a/src/Handler/Utils/Users.hs b/src/Handler/Utils/Users.hs index edf68ba4f..c667fa53e 100644 --- a/src/Handler/Utils/Users.hs +++ b/src/Handler/Utils/Users.hs @@ -40,14 +40,14 @@ guessUser :: Set GuessUserInfo -> DB (Maybe UserId) guessUser (Set.toList -> criteria) = $cachedHereBinary criteria $ go False where toSql user = \case - GuessUserMatrikelnummer userMatriculation' -> user E.^. UserMatrikelnummer E.==. E.val (Just userMatriculation') - GuessUserDisplayName userDisplayName' -> user E.^. UserDisplayName `E.hasInfix` E.val userDisplayName' - GuessUserSurname userSurname' -> user E.^. UserSurname `E.hasInfix` E.val userSurname' - GuessUserFirstName userFirstName' -> user E.^. UserFirstName `E.hasInfix` E.val userFirstName' + GuessUserMatrikelnummer userMatriculation' -> user E.^. UserMatrikelnummer E.==. E.val (Just userMatriculation') + GuessUserDisplayName userDisplayName' -> user E.^. UserDisplayName `E.hasInfix` E.val userDisplayName' + GuessUserSurname userSurname' -> user E.^. UserSurname `E.hasInfix` E.val userSurname' + GuessUserFirstName userFirstName' -> user E.^. UserFirstName `E.hasInfix` E.val userFirstName' go didLdap = do let retrieveUsers = E.select . E.from $ \user -> do - E.where_ . E.or $ map (toSql user) criteria + E.where_ . E.and $ map (toSql user) criteria return user users <- retrieveUsers let users' = reverse $ sortBy closeness users