getAuthorities handling exception if no result from Registry platform
[myslice.git] / portal / actions.py
index 5ed2056..523a9e1 100644 (file)
@@ -81,14 +81,18 @@ def get_jfed_identity(request):
         return None
 
 def getAuthorities(request, admin = False):
-    result = sfa_client(request,'List',hrn='onelab',object_type='authority',platforms=['myslice'],admin=admin)
+    # XXX theme has to be the same as the root authority 
+    result = sfa_client(request,'List',hrn=theme.theme,object_type='authority',platforms=['myslice'],admin=admin)
     authorities = list()
-    for item in result['myslice']:
-        t_hrn = item['hrn'].split('.')
-        if 'name' in item:
-            authorities.append({'authority_hrn':item['hrn'], 'name':item['name'], 'shortname':t_hrn[-1].upper()})    
-        else:
-            authorities.append({'authority_hrn':item['hrn']})    
+    try:
+        for item in result['myslice']:
+            t_hrn = item['hrn'].split('.')
+            if 'name' in item:
+                authorities.append({'authority_hrn':item['hrn'], 'name':item['name'], 'shortname':t_hrn[-1].upper()})    
+            else:
+                authorities.append({'authority_hrn':item['hrn']})    
+    except:
+        logger.error(result)
     return sorted(authorities)