get_pi_email: if none it returns support@myslice.info
authorYasin <mohammed-yasin.rahman@lip6.fr>
Tue, 25 Feb 2014 16:09:46 +0000 (17:09 +0100)
committerYasin <mohammed-yasin.rahman@lip6.fr>
Tue, 25 Feb 2014 16:09:46 +0000 (17:09 +0100)
portal/actions.py
portal/slicerequestview.py

index 1211705..9040348 100644 (file)
@@ -14,7 +14,7 @@ import json
 
 def authority_get_pis(request, authority_hrn):
     query = Query.get('authority').filter_by('authority_hrn', '==', authority_hrn).select('pi_users')
-    results = execute_query(request, query)
+    results = execute_admin_query(request, query)
     # NOTE: temporarily commented. Because results is giving empty list. 
     # Needs more debugging
     #if not results:
@@ -25,13 +25,15 @@ def authority_get_pis(request, authority_hrn):
 
 def authority_get_pi_emails(request, authority_hrn):
     #return ['jordan.auge@lip6.fr', 'loic.baron@lip6.fr']
-
     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]
+    if any(d['pi_users'] == None for d in pi_users):
+        return ['support@myslice.info']
+    else:
+        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_admin_query(request, query)
+        print "mails",  [result['email'] for result in results]
+        return [result['email'] for result in results]
 
 # SFA add record (user, slice)
 
index 5f40120..9658f72 100644 (file)
@@ -108,9 +108,9 @@ class SliceRequestView (LoginRequiredAutoLogoutView, ThemeView):
     
                 # The recipients are the PI of the authority
                 recipients = authority_get_pi_emails(request, authority_hrn)
-    
-                if cc_myself:
-                    recipients.append(email)
+                # if get_pu_emails fails:
+                recipients.append('support@myslice.info')
+                #recipients = ['support@myslice.info']
                 msg = render_to_string('slice-request-email.txt', ctx)
                 #print "email, msg, email, recipients", email , msg, email, recipients 
                 send_mail("Onelab user %s requested a slice"%email , msg, email, recipients)