IMPORTANT: myslice/manifold folder REMOVED due to conflicts with Manifold Server...
[myslice.git] / portal / registrationview.py
index c966b52..d9ab6b5 100644 (file)
@@ -13,16 +13,18 @@ from unfold.page                import Page
 from unfold.loginrequired       import FreeAccessView
 from ui.topmenu                 import topmenu_items_live
 
-from manifold.manifoldapi       import execute_admin_query
+from manifoldapi.manifoldapi    import execute_admin_query
 from manifold.core.query        import Query
 
 from portal.models              import PendingUser
 from portal.actions             import authority_get_pi_emails, manifold_add_user,manifold_add_account
 
+from theme import ThemeView
+
 # since we inherit from FreeAccessView we cannot redefine 'dispatch'
 # so let's override 'get' and 'post' instead
 #
-class RegistrationView (FreeAccessView):
+class RegistrationView (FreeAccessView, ThemeView):
 
     def post (self, request):
         return self.get_or_post (request, 'POST')
@@ -133,7 +135,7 @@ class RegistrationView (FreeAccessView):
                     public_key = file_content
                     public_key = ''.join(public_key.split()) 
                 else:
-                    errors.append('Please upload a valid RSA public key [.txt or .pub].')
+                    errors.append('Please upload a valid RSA public key.')
 
             #b = PendingUser(first_name=reg_fname, last_name=reg_lname, affiliation=reg_aff, 
             #                email=reg_email, password=request.POST['password'], keypair=keypair)
@@ -149,13 +151,14 @@ class RegistrationView (FreeAccessView):
                     email         = reg_email, 
                     password      = request.POST['password'],
                     keypair       = account_config,
+                    pi            = '',
                 )
                 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
                 user_config = '{"firstname":"'+ reg_fname + '", "lastname":"'+ reg_lname + '", "authority":"'+ reg_auth + '"}'
-                user_params = {'email': reg_email, 'password': request.POST['password'], 'config': user_config}
+                user_params = {'email': reg_email, 'password': request.POST['password'], 'config': user_config, 'status': 1}
                 manifold_add_user(request,user_params)
                 #creating local:account in manifold
                 user_id = user_detail['user_id']+1 # the user_id for the newly created user in local:user
@@ -192,6 +195,7 @@ class RegistrationView (FreeAccessView):
           'email': request.POST.get('email', ''),
           'password': request.POST.get('password', ''),           
           'authorities': authorities,
+          'theme': self.theme
           }
         template_env.update(page.prelude_env ())
         return render(request, 'registration_view.html',template_env)