Merge branch 'onelab' of ssh://git.onelab.eu/git/myslice into onelab
authorLoic Baron <loic.baron@lip6.fr>
Mon, 13 Apr 2015 16:21:38 +0000 (18:21 +0200)
committerLoic Baron <loic.baron@lip6.fr>
Mon, 13 Apr 2015 16:21:38 +0000 (18:21 +0200)
Conflicts:
portal/accountview.py

portal/about.py
portal/account.py
portal/accountview.py
portal/sliceview.py

index 99434a7..1bc51fc 100644 (file)
@@ -20,8 +20,8 @@ class AboutView (FreeAccessView, ThemeView):
     # expose this so we can mention the backend URL on the welcome page
     def default_env (self):
         return { 
-                 'MANIFOLD_URL':ConfigEngine().manifold_url(),
-                 }
+            'MANIFOLD_URL':ConfigEngine().manifold_url(),
+        }
 
     def post (self,request):
         env = self.default_env()
@@ -39,13 +39,14 @@ class AboutView (FreeAccessView, ThemeView):
         env['theme'] = self.theme
         env['section'] = "About"
 
-        env['username']=the_user(request)
+        env['username'] = the_user(request)
         env['topmenu_items'] = topmenu_items(None, request)
-        if state: env['state'] = state
-        elif not env['username']: env['state'] = None
+        if state:
+            env['state'] = state
+        elif not env['username']:
+            env['state'] = None
         # use one or two columns for the layout - not logged in users will see the login prompt
-        env['layout_1_or_2']="layout-unfold2.html" if not env['username'] else "layout-unfold1.html"
-        
+        env['layout_1_or_2'] = "layout-unfold2.html" if not env['username'] else "layout-unfold1.html"
         
         return render_to_response(self.template, env, context_instance=RequestContext(request))
 
index 7d08e1c..fc6d955 100644 (file)
@@ -10,14 +10,17 @@ import json, os, re, itertools
 
 class Account:
     def __init__ (self, platform_id, user_id):
-        account_query  = Query().get('local:account').select('user_id','platform_id','auth_type','config').filter_by('platform_id', '==', platform_id).filter_by('user_id', '==', user_id)
+        account_query  = Query().get('local:account')\
+                                .select('user_id','platform_id','auth_type','config')\
+                                .filter_by('platform_id', '==', platform_id)\
+                                .filter_by('user_id', '==', user_id)
  
-        account_details = execute_query(self.request, account_query)
+        account_details  = execute_query(self.request, account_query)
         self.user_id     = account_details['user_id']
         self.platform_id = account_details['platform_id']
         self.auth_type   = account_details['auth_type']
         self.config      = account_details['config']
-        account_config = json.loads(account_details['config'])
+        account_config   = json.loads(account_details['config'])
 
         self.usr_hrn = account_config.get('user_hrn',None)
         self.pub_key = account_config.get('user_public_key',None)
index 20fbe55..076f993 100644 (file)
@@ -38,7 +38,8 @@ class AccountView(LoginRequiredAutoLogoutView, ThemeView):
         metadata = page.get_metadata()
         page.expose_js_metadata()
 
-        page.add_js_files  ( [ "js/jquery.validate.js", "js/my_account.register.js", "js/my_account.edit_profile.js","js/jquery-ui.js" ] )
+        page.add_js_files  ( [ "js/jquery.validate.js", "js/my_account.register.js",
+                               "js/my_account.edit_profile.js","js/jquery-ui.js" ] )
         page.add_css_files ( [ "css/onelab.css", "css/account_view.css","css/plugin.css" ] )
 
         # Execute a Query to delegate credentials if necessary
@@ -178,8 +179,13 @@ class AccountView(LoginRequiredAutoLogoutView, ThemeView):
                         pub_key_list.append(account_pub_key)
                         user_status_list.append(user_status)
                         # combining 5 lists into 1 [to render in the template] 
-                        principal_acc_list = [{'platform_name': t[0], 'account_type': t[1], 'delegation_type': t[2], 'usr_hrn':t[3], 'usr_pubkey':t[4], 'user_status':t[5],} 
-                            for t in zip(platform_name_list, account_type_list, delegation_type_list, usr_hrn_list, pub_key_list, user_status_list)]
+                        principal_acc_list = [
+                            {'platform_name' : pn, 'account_type' : at,
+                             'delegation_type' : dt, 'usr_hrn' : uh,
+                             'usr_pubkey' : up, 'user_status' : us,} 
+                            for pn, at, dt, uh, up, us in zip(platform_name_list, account_type_list, delegation_type_list,
+                                         usr_hrn_list, pub_key_list, user_status_list)
+                        ]
                     # to hide private key row if it doesn't exist    
                     if 'myslice' in platform_detail['platform']:
                         account_config = json.loads(account_detail['config'])
@@ -286,15 +292,19 @@ def account_process(request):
     for account_detail in account_details:
         for platform_detail in platform_details:
             # Add reference account to the platforms
-            if 'add_'+platform_detail['platform'] in request.POST or request.POST['button_value'] == 'add_'+platform_detail['platform']:
+            if 'add_'+platform_detail['platform'] in request.POST\
+               or request.POST['button_value'] == 'add_'+platform_detail['platform']:
                 platform_id = platform_detail['platform_id']
-                user_params = {'platform_id': platform_id, 'user_id': user_id, 'auth_type': "reference", 'config': '{"reference_platform": "myslice"}'}
+                user_params = {'platform_id': platform_id, 'user_id': user_id,
+                               'auth_type': "reference",
+                               'config': '{"reference_platform": "myslice"}'}
                 manifold_add_account(request,user_params)
                 messages.info(request, 'Reference Account is added to the selected platform successfully!')
                 return HttpResponseRedirect("/portal/account/")
 
             # Delete reference account from the platforms
-            if 'delete_'+platform_detail['platform'] in request.POST or request.POST['button_value'] == 'delete_'+platform_detail['platform']:
+            if 'delete_'+platform_detail['platform'] in request.POST\
+               or request.POST['button_value'] == 'delete_'+platform_detail['platform']:
                 platform_id = platform_detail['platform_id']
                 user_params = {'user_id':user_id}
                 manifold_delete_account(request,platform_id, user_id, user_params)
@@ -356,7 +366,8 @@ def account_process(request):
                 updated_config = json.dumps(config)
                 user_params = {'config': updated_config}
             else: # it's needed if the config is empty 
-                user_config['config']= '{"firstname":"' + edited_first_name + '", "lastname":"'+ edited_last_name + '", "authority": "Unknown Authority"}'
+                user_config['config'] = '{{"firstname":"{}", "lastname":"{}", "authority": "Unknown Authority"}}'\
+                                        .format(edited_first_name, edited_last_name)
                 user_params = {'config': user_config['config']} 
         # updating config local:user in manifold       
         manifold_update_user(request, request.user.email,user_params)
@@ -371,10 +382,10 @@ def account_process(request):
         for user_pass in user_details:
             user_pass['password'] = edited_password
         #updating password in local:user
-        user_params = { 'password': user_pass['password']}
-        manifold_update_user(request,request.user.email,user_params)
+        user_params = { 'password' : user_pass['password']}
+        manifold_update_user(request, request.user.email, user_params)
 #        return HttpResponse('Success: Password Changed!!')
-        messages.success(request, 'Sucess: Password Updated.')
+        messages.success(request, 'Success: Password Updated.')
         return HttpResponseRedirect("/portal/account/")
 
 # XXX TODO: Factorize with portal/registrationview.py
@@ -494,7 +505,7 @@ def account_process(request):
             else:
                 messages.error(request, 'Delete error: Private key is not stored in the server')
                 return HttpResponseRedirect("/portal/account/")
-                           
+                          
         except Exception as e:
             messages.error(request, 'Account error: You need an account in myslice platform to perform this action')    
             return HttpResponseRedirect("/portal/account/")
index 309347c..7bf139d 100644 (file)
@@ -37,4 +37,10 @@ class SliceView (LoginRequiredView, ThemeView):
             pi = "is_not_pi"
         else:
             pi = "is_pi"
-        return render_to_response(self.template, {"slice": slicename, "theme": self.theme, "username": request.user,"pi":pi, "section": "Slice %s" % slicename }, context_instance=RequestContext(request))
+        return render_to_response(self.template,
+                                  {"slice" : slicename,
+                                   "theme" : self.theme,
+                                   "username" : request.user,
+                                   "pi" : pi,
+                                   "section" : "Slice {}".format(slicename) },
+                                  context_instance=RequestContext(request))