Registration: Check if user exists filter on user_hrn is quicker than the full list...
authorLoic Baron <loic.baron@lip6.fr>
Mon, 14 Apr 2014 12:32:23 +0000 (14:32 +0200)
committerLoic Baron <loic.baron@lip6.fr>
Mon, 14 Apr 2014 12:32:23 +0000 (14:32 +0200)
portal/registrationview.py

index 396d357..dade361 100644 (file)
@@ -82,8 +82,11 @@ class RegistrationView (FreeAccessView, ThemeView):
                 if user_detail['email'] == user_request['email']:
                     errors.append('Email already registered in Manifold. Please provide a new email address.')
             # Does the user exist in sfa? [query is very slow!!]
-            user_query  = Query().get('user').select('user_hrn','user_email')
+            #user_query  = Query().get('user').select('user_hrn','user_email')
+            # XXX Test based on the user_hrn is quick
+            user_query  = Query().get('user').select('user_hrn','user_email').filter_by('user_hrn','==',user_request['user_hrn'])
             user_details_sfa = execute_admin_query(wsgi_request, user_query)
+
             for user in user_details_sfa:
                 if user['user_email'] == user_request['email']:
                     errors.append('Email already registered in SFA registry. Please use another email.')