diff options
| author | LV-426 <lv-426@taproot.org.il> | 2015-02-04 02:04:33 +0200 |
|---|---|---|
| committer | LV-426 <lv-426@taproot.org.il> | 2015-02-04 02:04:33 +0200 |
| commit | 8ab6e90689679224c631c117ddc6de2b71f18cb9 (patch) | |
| tree | ba90a61d51b2f4cc7c94284f349738c4f739498a /src/server | |
| parent | 0531a517078c446de98ee15039ddf55f44a48876 (diff) | |
User_DB: add non filtering __lookup_user__by_email_address()
Diffstat (limited to 'src/server')
| -rw-r--r-- | src/server/rz_user_db.py | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/src/server/rz_user_db.py b/src/server/rz_user_db.py index 493fa69d..36062278 100644 --- a/src/server/rz_user_db.py +++ b/src/server/rz_user_db.py @@ -64,8 +64,19 @@ class User_DB(object): del u_ret.pw_hash return uid, u_ret - def lookup_user__by_uid(self, uid): + def __lookup_user__by_email_address(self, email_address): + + # FIXME: avoid linear search + for uid, u in self.persistent_data_store.items(): + if u.email_address == email_address: + return uid, u + raise Exception('no user found with email_address=%s' % (email_address)) + + def lookup_user__by_uid(self, uid): + """ + @return: user record with pw entry removed + """ assert str == type(uid) u = self.persistent_data_store.get(uid) @@ -76,11 +87,11 @@ class User_DB(object): return self.__process_return_value(uid, u) def lookup_user__by_email_address(self, email_address): - for uid, u in self.persistent_data_store.items(): - if u.email_address == email_address: - return self.__process_return_value(uid, u) - - raise Exception('no user found with email_address=%s' % (email_address)) + """ + @return: user record with pw entry removed + """ + uid, u = self.__lookup_user__by_email_address(email_address) + return self.__process_return_value(uid, u) def user_add(self, first_name, last_name, rz_username, email_address): """ |
