for user_detail in user_details:
user_id = user_detail['user_id']
user_email = user_detail['email']
- print "hello_world"
- print user_id
# different significations of user_status
if user_detail['status'] == 0:
user_status = 'Disabled'
for key, value in kwargs.iteritems():
if key == "email":
selected_email=value
- print "yasin"
- print selected_email
+
+ redirect_url = "/portal/user/"+selected_email
user_query = Query().get('local:user').filter_by('email', '==', selected_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']
-
+ user_email = user_detail['email']
+
account_query = Query().get('local:account').filter_by('user_id', '==', user_id).select('user_id','platform_id','auth_type','config')
account_details = execute_admin_query(request, account_query)
platform_query = Query().get('local:platform').select('platform_id','platform')
platform_details = execute_admin_query(request, platform_query)
- # getting the user_id from the session
- for user_detail in user_details:
- user_id = user_detail['user_id']
- user_email = user_detail['email']
-
- redirect_url = "/portal/user/"+selected_email
for account_detail in account_details:
for platform_detail in platform_details:
messages.success(request, 'Sucess: First Name and Last Name Updated.')
return HttpResponseRedirect(redirect_url)
- #elif 'submit_pass' in request.POST:
- # edited_password = request.POST['password']
- #
- # 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)
-# # return HttpResponse('Success: Password Changed!!')
- # messages.success(request, 'Sucess: Password Updated.')
- # return HttpResponseRedirect("/portal/account/")
+ elif 'submit_auth' in request.POST:
+ edited_auth = request.POST['authority']
+
+ config={}
+ for user_config in user_details:
+ if user_config['config']:
+ config = json.loads(user_config['config'])
+ config['firstname'] = config.get('firstname', 'N/A')
+ config['lastname'] = config.get('lastname','N/A')
+ config['authority'] = edited_auth
+ updated_config = json.dumps(config)
+ user_params = {'config': updated_config}
+ else: # it's needed if the config is empty
+ user_config['config']= '{"firstname": "N/A", "lastname":"N/A", "authority":"' + edited_auth + '"}'
+ user_params = {'config': user_config['config']}
+ # updating config local:user in manifold
+ manifold_update_user(request, user_email, user_params)
+ # this will be depricated, we will show the success msg in same page
+ # Redirect to same page with success message
+ messages.success(request, 'Sucess: Authority Updated.')
+ return HttpResponseRedirect(redirect_url)
# XXX TODO: Factorize with portal/registrationview.py
user_params = { 'config': keypair, 'auth_type':'managed'}
manifold_update_account(request,user_params)
# updating sfa
- public_key = public_key.replace('"', '');
- user_pub_key = {'keys': public_key}
- sfa_update_user(request, user_hrn, user_pub_key)
+ #public_key = public_key.replace('"', '');
+ #user_pub_key = {'keys': public_key}
+ #sfa_update_user(request, user_hrn, user_pub_key)
messages.success(request, 'Sucess: New Keypair Generated! Delegation of your credentials will be automatic.')
return HttpResponseRedirect(redirect_url)
else:
user_params = { 'config': file_content, 'auth_type':'user'}
manifold_update_account(request,user_params)
# updating sfa
- user_pub_key = {'keys': file_content}
- sfa_update_user(request, user_hrn, user_pub_key)
+ #user_pub_key = {'keys': file_content}
+ #sfa_update_user(request, user_hrn, user_pub_key)
messages.success(request, 'Publickey uploaded! Please delegate your credentials using SFA: http://trac.myslice.info/wiki/DelegatingCredentials')
- return HttpResponseRedirect("/portal/account/")
+ return HttpResponseRedirect(redirect_url)
else:
messages.error(request, 'RSA key error: Please upload a valid RSA public key [.txt or .pub].')
return HttpResponseRedirect(redirect_url)