diff options
Diffstat (limited to 'src/main/java/org/openslx/imagemaster/db/DbUser.java')
-rw-r--r-- | src/main/java/org/openslx/imagemaster/db/DbUser.java | 29 |
1 files changed, 14 insertions, 15 deletions
diff --git a/src/main/java/org/openslx/imagemaster/db/DbUser.java b/src/main/java/org/openslx/imagemaster/db/DbUser.java index 6d9fe0a..46c5130 100644 --- a/src/main/java/org/openslx/imagemaster/db/DbUser.java +++ b/src/main/java/org/openslx/imagemaster/db/DbUser.java @@ -1,7 +1,10 @@ package org.openslx.imagemaster.db; +import java.util.List; + import org.apache.log4j.Logger; import org.openslx.imagemaster.session.User; +import org.openslx.imagemaster.thrift.iface.UserInfo; import org.openslx.imagemaster.util.Sha512Crypt; /** @@ -79,22 +82,18 @@ public class DbUser extends User return false; } - /* - public static int getUserIdByName( String username ) + public static List<UserInfo> findUser( String organizationId, String searchTerm ) { - DbUser user = forLogin( username ); - if ( user == null ) - return 0; - return user.userId; - } - - public static String getUserNameById( int id ) - { - DbUser user = forLogin( id ); - if ( user == null ) - return null; - return user.username; + final String str = "%" + searchTerm + "%"; // TODO: Better handling, escape LIKE chars, or even make this use REGEXP + if ( organizationId == null ) + return MySQL.findAll( UserInfo.class, "SELECT login, firstname, lastname, email, organizationid" + + " FROM user" + + " WHERE login LIKE ? OR firstname LIKE ? OR lastname LIKE ? OR email LIKE ?" + + " LIMIT 100", str, str, str ); + return MySQL.findAll( UserInfo.class, "SELECT login, firstname, lastname, email, organizationid" + + " FROM user" + + " WHERE organizationid = ? AND (login LIKE ? OR firstname LIKE ? OR lastname LIKE ? OR email LIKE ?)" + + " LIMIT 100", organizationId, str, str, str ); } - */ } |