From: Rezende & Pedro & Carlos & Raphael Date: Tue, 14 Jul 2015 18:26:50 +0000 (-0300) Subject: Merge branch 'fibre' of ssh://git.onelab.eu/git/myslice into fibre X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=refs%2Fheads%2Ffibre;hp=-c;p=myslice.git Merge branch 'fibre' of ssh://git.onelab.eu/git/myslice into fibre Conflicts: portal/homeview.py --- bb98f1e7f4d1d2692b0405377c8f7c7466d72aee diff --combined portal/actions.py index eb46bee9,7cda6496..79538bd6 --- a/portal/actions.py +++ b/portal/actions.py @@@ -61,7 -61,6 +61,6 @@@ def clear_user_creds(request, user_emai try: user_query = Query().get('local:user').filter_by('email', '==', user_email).select('user_id','email','password','config') user_details = execute_admin_query(request, user_query) - # getting the user_id from the session for user_detail in user_details: user_id = user_detail['user_id'] @@@ -593,21 -592,31 +592,31 @@@ def create_slice(wsgi_request, request) Exception """ hrn = "%s.%s" % (request['authority_hrn'], request['slice_name']) + # XXX tmp sfa dependency from sfa.util.xrn import Xrn urn = Xrn(hrn, request['type']).get_urn() # Add User to Slice if we have the user_hrn in pendingslice table user_hrn = request.get('user_hrn', None) + user_obj = User.objects.get(username = user_hrn.split(".")[1]) + list_users = [] user_hrns = list([user_hrn]) if user_hrn else list() + for user in user_hrns: + list_users +=[User.objects.get(username = user.split(".")[1])] + + #user_query = Query.get('local:user').select('email').filter_by('email','==',user.username) + #user_details_sfa = execute_admin_query(wsgi_request, user_query) + + pendinguser = PendingUser.objects.filter(login__iexact = user_obj.username) + if pendinguser : + raise Exception, "User %s doesn't exist, validate user before validating slice" % user_obj.username + #if not user_details_sfa: + # raise Exception, "User %s doesn't exist, validate user before validating slice" % user_hrn + #for user in list_users: + + user_email = user_obj.email - user_query = Query().get('user').select('user_hrn','user_email').filter_by('user_hrn','==',user_hrn) - user_details_sfa = execute_admin_query(wsgi_request, user_query) - if not user_details_sfa: - raise Exception, "User %s doesn't exist, validate user before validating slice" % user_hrn - for user in user_details_sfa: - user_email = user['user_email'] - # XXX LOIC Quick fix because this is totally inconsistent if not 'number_of_nodes' in request: request['number_of_nodes']="" @@@ -624,13 -633,14 +633,14 @@@ # ignored in request: id, timestamp, number_of_nodes, type_of_nodes, purpose query = Query.create('slice').set(slice_params).select('slice_hrn') - results = execute_query(wsgi_request, query) + results = execute_admin_query(wsgi_request, query) if not results: raise Exception, "Could not create %s. Already exists ?" % slice_params['hrn'] - else: - clear_user_creds(wsgi_request,user_email) + else: + clear_user_creds(wsgi_request,user_obj.username) # log user activity - activity.slice.validate(self.request, "Slice validation", { "slice" : hrn }) + activity.slice.validate(request,{ "slice" : hrn }) #"Slice validation", { "slice" : hrn }) + try: theme.template_name = 'slice_request_validated.txt' text_content = render_to_string(theme.template, request) @@@ -752,7 -762,7 +762,7 @@@ def manifold_add_reference_user_account } manifold_add_account(wsgi_request, manifold_account_params) -def sfa_create_user(wsgi_request, request, namespace = None, as_admin = False): +def sfa_create_user(wsgi_request, request, namespace = None, as_admin = True): """ Arguments: wsgi_request (~ WSGIRequest) : @@@ -783,13 -793,6 +793,13 @@@ #query = Query.create('user').set(sfa_user_params).select('user_hrn') #results = execute_query(wsgi_request, query) + ###### Guilherme 08-07-2015 + ##subject = 'Teste das chaves publicas' + ##message = 'Um novo usuario SFA esta sendo criado\n' + ##message += "request['public_key']: " + request['public_key'] + '\n' + ##message += "sfa_user_params['keys']: " + sfa_user_params['keys'] + '\n' + ##send_mail(subject, message, 'support@fibre.org.br', [request['email']], fail_silently=False) + if namespace is not None: query = Query.create('%s:user' % namespace).set(sfa_user_params).select('user_hrn') else: @@@ -889,7 -892,7 +899,7 @@@ def iotlab_create_user (wsgi_request, r "structure" : request['authority_hrn'], "city" : "N/A", "country" : "N/A", - "sshPublicKey" : [request['public_key']], + "sshPublicKey" : request['public_key'], "motivations" : "SFA federation", } diff --combined portal/homeview.py index 6c5ee9a7,90b134db..718ba601 --- a/portal/homeview.py +++ b/portal/homeview.py @@@ -64,7 -64,7 +64,7 @@@ class HomeView (FreeAccessView, ThemeVi ################################################# ## first you must open a connection to the server try: - # Connect to NOC + # Connect to UFRJ l = ldap.initialize("ldap://200.130.15.186:389") # Bind/authenticate with a root user to search all objects l.simple_bind_s("cn=Manager,dc=br,dc=fibre","fibre2013") @@@ -316,9 -316,8 +316,9 @@@ else: # log user activity #activity.user.login(self.request, "error") - env['state'] = "Your username and/or password were incorrect." - + + env['state'] = "Your username and/or password were incorrect." + return render_to_response(self.template, env, context_instance=RequestContext(request)) def get (self, request, state=None): @@@ -336,15 -335,16 +336,16 @@@ # XXX Something like an invalid session seems to make the execute fail sometimes, and thus gives an error on the main page platform_details = execute_query(self.request, platform_query) account_details = execute_query(self.request, account_query) - for platform_detail in platform_details: - for account_detail in account_details: - if 'platform_id' in platform_detail: - if platform_detail['platform_id'] == account_detail['platform_id']: - if 'config' in account_detail and account_detail['config'] is not '': - account_config = json.loads(account_detail['config']) - if 'myslice' in platform_detail['platform']: - acc_auth_cred = account_config.get('delegated_authority_credentials','N/A') - acc_user_cred = account_config.get('delegated_user_credential','N/A') + if platform_details is not None and platform_details != {}: + for platform_detail in platform_details: + for account_detail in account_details: + if 'platform_id' in platform_detail: + if platform_detail['platform_id'] == account_detail['platform_id']: + if 'config' in account_detail and account_detail['config'] is not '': + account_config = json.loads(account_detail['config']) + if 'myslice' in platform_detail['platform']: + acc_auth_cred = account_config.get('delegated_authority_credentials','N/A') + acc_user_cred = account_config.get('delegated_user_credential','N/A') # assigning values if acc_auth_cred=={} or acc_auth_cred=='N/A': pi = "is_not_pi" diff --combined portal/templates/fibre/fibre_institution.html index b58f3c41,87b6dab9..3e3d415b --- a/portal/templates/fibre/fibre_institution.html +++ b/portal/templates/fibre/fibre_institution.html @@@ -6,29 -6,32 +6,29 @@@ {% block content %}
-
-
- -
-
+
+
+ +
+
+
-
-
- -
-
+
+
+ +
+
+
- -
+
Loading Slices