From: Loic Baron Date: Thu, 20 Mar 2014 18:23:45 +0000 (+0100) Subject: parent_authority: use local:user config authority if parent_authority from SFA is... X-Git-Tag: myslice-1.1~181 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=75bdd644e3e782d80a988646a4bb85cd71159bb8;p=myslice.git parent_authority: use local:user config authority if parent_authority from SFA is None --- diff --git a/portal/institution.py b/portal/institution.py index 9bc0a868..30ef1867 100644 --- a/portal/institution.py +++ b/portal/institution.py @@ -14,6 +14,7 @@ from ui.topmenu import topmenu_items, the_user from myslice.configengine import ConfigEngine from theme import ThemeView +import json class InstitutionView (FreeAccessView, ThemeView): template_name = 'institution.html' @@ -40,6 +41,18 @@ class InstitutionView (FreeAccessView, ThemeView): env['user_details'] = user_details[0] except Exception,e: env['error'] = "Please check your Credentials" + + try: + user_local_query = Query().get('local:user').select('config').filter_by('email','==',str(env['person'])) + user_local_details = execute_query(self.request, user_local_query) + user_local = user_local_details[0] + user_local_config = user_local['config'] + user_local_config = json.loads(user_local_config) + user_local_authority = user_local_config.get('authority') + if 'user_details' not in env or 'parent_authority' not in env['user_details'] or env['user_details']['parent_authority'] is None: + env['user_details'] = {'parent_authority': user_local_authority} + except Exception,e: + env['error'] = "Please check your Manifold user config" else: env['person'] = None