diff rhodecode/model/user.py @ 742:1377a9d4bdb9 beta

#78, fixed more reliable case insensitive searches
author Marcin Kuzminski <marcin@python-works.com>
date Tue, 23 Nov 2010 14:15:45 +0100
parents 1bb0fcdec895
children 73c99f45ef2a
line wrap: on
line diff
--- a/rhodecode/model/user.py	Tue Nov 23 12:58:45 2010 +0100
+++ b/rhodecode/model/user.py	Tue Nov 23 14:15:45 2010 +0100
@@ -48,9 +48,13 @@
         return user.get(user_id)
 
 
-    def get_by_username(self, username, cache=False):
-        user = self.sa.query(User)\
-            .filter(User.username == username)
+    def get_by_username(self, username, cache=False, case_insensitive=False):
+        
+        if case_insensitive:
+            user = self.sa.query(User).filter(User.username.ilike(username))
+        else:
+            user = self.sa.query(User)\
+                .filter(User.username == username)
         if cache:
             user = user.options(FromCache("sql_cache_short",
                                           "get_user_%s" % username))