X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=portal%2Factions.py;h=c66b10a3db90368635157bc5af12aab0a031ceb4;hb=fea9b7e286cc86f11844e371d67d184198afc287;hp=53d0a7840b1a81a307b37dcc187446fb60b1abb0;hpb=509a6f439d2d79c95d7dc6a0db34fcd2e1cf235f;p=myslice.git diff --git a/portal/actions.py b/portal/actions.py index 53d0a784..c66b10a3 100644 --- a/portal/actions.py +++ b/portal/actions.py @@ -6,21 +6,24 @@ import json # Get the list of authorities -def authority_get_pis(authority_hrn): +def authority_get_pis(request, authority_hrn): query = Query.get('authority').filter_by('authority_hrn', '==', authority_hrn).select('pi_users') - results = execute_query(query) - if not results: - raise Exception, "Authority not found: %s" % authority_hrn - result, = results - return result['pi_users'] + results = execute_query(request, query) + # NOTE: temporarily commented. Because results is giving empty list. + # Needs more debugging + #if not results: + # raise Exception, "Authority not found: %s" % authority_hrn + #result, = results + #return result['pi_users'] + return results -def authority_get_pi_emails(authority_hrn): - user_hrns = authority_get_pis(authority_hrn) - - query = Query.get('user').filter_by('user_hrn', 'included', user_hrns).select('user_email') - results = execute_query(query) - - return [result['user_email'] for result in results] +def authority_get_pi_emails(request,authority_hrn): + pi_users = authority_get_pis(request,authority_hrn) + pi_user_hrns = [ hrn for x in pi_users for hrn in x['pi_users'] ] + query = Query.get('user').filter_by('user_hrn', 'included', pi_user_hrns).select('email') + results = execute_query(request,query) + print "mails", [result['email'] for result in results] + return [result['email'] for result in results] # SFA add record (user, slice) @@ -69,7 +72,7 @@ def manifold_add_account(request, account_params): def manifold_update_account(request,account_params): # account_params: config - query = Query.update('local:account').filter_by('email', '==', request.user.email).set(account_params).select('email') + query = Query.update('local:account').filter_by('platform', '==', 'myslice').set(account_params).select('user_id') results = execute_query(request,query) # NOTE: results remains empty and goes to Exception. However, it updates the manifold DB. # That's why I commented the exception part. -- Yasin