X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=portal%2Fregistrationview.py;h=5c48726d6e0ba6c923d201696c6e61a863ef43b0;hb=1f276736a38c3ada41c48059243604a3db51e309;hp=8f91de79cbbc5bf0a3c4eb1d2944635bd025da2b;hpb=ad35ed326deb96b25e2a2dea68ceb797b898d203;p=myslice.git diff --git a/portal/registrationview.py b/portal/registrationview.py index 8f91de79..5c48726d 100644 --- a/portal/registrationview.py +++ b/portal/registrationview.py @@ -2,14 +2,14 @@ import os.path, re import json from django.core.mail import send_mail - +from django.contrib.auth.models import User from django.views.generic import View from django.template.loader import render_to_string from django.shortcuts import render from unfold.page import Page from unfold.loginrequired import FreeAccessView -from ui.topmenu import topmenu_items +from ui.topmenu import topmenu_items_live from manifold.manifoldapi import execute_admin_query from manifold.core.query import Query @@ -45,12 +45,14 @@ class RegistrationView (FreeAccessView): print "FIREXP ENABLED" authorities = execute_admin_query(request, authorities_query) + authorities = sorted(authorities) # xxx tocheck - if authorities is empty, it's no use anyway # (users won't be able to validate the form anyway) page = Page(request) page.add_js_files ( [ "js/jquery.validate.js", "js/my_account.register.js" ] ) page.add_css_files ( [ "css/onelab.css", "css/registration.css" ] ) + page.add_css_files ( [ "http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" ] ) print 'registration view, method',method @@ -65,7 +67,7 @@ class RegistrationView (FreeAccessView): reg_lname = request.POST.get('lastname', '') #reg_aff = request.POST.get('affiliation','') reg_auth = request.POST.get('authority_hrn', '') - reg_login = request.POST.get('login', '') + #reg_login = request.POST.get('login', '') reg_email = request.POST.get('email','').lower() #prepare user_hrn split_email = reg_email.split("@")[0] @@ -106,6 +108,8 @@ class RegistrationView (FreeAccessView): #keypair = re.sub("\n", "\\n", keypair) #keypair = keypair.rstrip('\r\n') #keypair = ''.join(keypair.split()) + #for sending email: removing existing double qoute + public_key = public_key.replace('"', ''); else: up_file = request.FILES['user_public_key'] file_content = up_file.read() @@ -120,6 +124,7 @@ class RegistrationView (FreeAccessView): auth_type = 'user' # for sending email public_key = file_content + public_key = ''.join(public_key.split()) else: errors.append('Please upload a valid RSA public key [.txt or .pub].') @@ -133,12 +138,14 @@ class RegistrationView (FreeAccessView): last_name = reg_lname, #affiliation = reg_aff, authority_hrn = reg_auth, - login = reg_login, + #login = reg_login, email = reg_email, password = request.POST['password'], keypair = keypair, ) b.save() + # saves the user to django auth_user table [needed for password reset] + user = User.objects.create_user(reg_email, reg_email, request.POST['password']) #creating user to manifold local:user config = '{"firstname":"'+ reg_fname + '", "lastname":"'+ reg_lname + '", "authority":"'+ reg_auth + '"}' user_params = {'email': reg_email, 'password': request.POST['password'], 'config': config} @@ -155,7 +162,7 @@ class RegistrationView (FreeAccessView): 'authority_hrn' : reg_auth, 'email' : reg_email, 'user_hrn' : user_hrn, - 'keypair' : 'Public Key :' + public_key, + 'keypair' : 'Public Key: ' + public_key, 'cc_myself' : True # form.cleaned_data['cc_myself'] } recipients = authority_get_pi_emails(request,reg_auth) @@ -168,7 +175,7 @@ class RegistrationView (FreeAccessView): return render(request, 'user_register_complete.html') template_env = { - 'topmenu_items': topmenu_items('Register', request), + 'topmenu_items': topmenu_items_live('Register', page), 'errors': errors, 'firstname': request.POST.get('firstname', ''), 'lastname': request.POST.get('lastname', ''),