X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=portal%2Fregistrationview.py;h=e27dfb4d8ca6bd065cbd59bcf188c2d5457494cb;hb=d015e48a9238b5818331c9f2bf0e1588edd6c5fe;hp=2322081c4a12978e12f4025b3be473315b83d620;hpb=a1334d41a53aec4a8bf2ebd7f3c67244eb8ac1a8;p=unfold.git diff --git a/portal/registrationview.py b/portal/registrationview.py index 2322081c..e27dfb4d 100644 --- a/portal/registrationview.py +++ b/portal/registrationview.py @@ -8,6 +8,7 @@ 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 manifold.manifoldapi import execute_admin_query @@ -16,27 +17,29 @@ from manifold.core.query import Query from portal.models import PendingUser from portal.actions import authority_get_pi_emails -# This is a rough porting from views.py -# the former function-based view is now made a class -# we redefine dispatch as it is simple -# and coincidentally works since we do not need LoginRequiredAutoLogoutView -# a second stab should redefine post and get instead -# also this was not thoroughly tested either, might miss some imports -# to be continued... +# since we inherit from FreeAccessView we cannot redefine 'dispatch' +# so let's override 'get' and 'post' instead +# +class RegistrationView (FreeAccessView): -class RegistrationView (View): + def post (self, request): + return self.get_or_post (request, 'POST') - def dispatch (self, request): + def get (self, request): + return self.get_or_post (request, 'GET') + + def get_or_post (self, request, method): errors = [] - authorities_query = Query.get('authority').\ - select('name', 'authority_hrn') + #authorities_query = Query.get('authority').\ + # select('name', 'authority_hrn') - onelab_enabled_query = Query.get('local:platform').filter_by('platform', '==', 'ple').filter_by('disabled', '==', 'False') - onelab_enabled = not not execute_admin_query(request, onelab_enabled_query) - if onelab_enabled: + #onelab_enabled_query = Query.get('local:platform').filter_by('platform', '==', 'ple').filter_by('disabled', '==', 'False') + #onelab_enabled = not not execute_admin_query(request, onelab_enabled_query) + #if onelab_enabled: + if True: print "ONELAB ENABLED" - authorities_query = authorities_query.filter_by('authority_hrn', 'included', ['ple.inria', 'ple.upmc', 'ple.ibbtple']) + authorities_query = Query.get('ple:authority').select('name', 'authority_hrn').filter_by('authority_hrn', 'included', ['ple.inria', 'ple.upmc', 'ple.ibbtple', 'ple.nitos']) else: print "FIREXP ENABLED" @@ -48,9 +51,9 @@ class RegistrationView (View): page.add_js_files ( [ "js/jquery.validate.js", "js/my_account.register.js" ] ) page.add_css_files ( [ "css/onelab.css", "css/registration.css" ] ) - print 'registration view, method',request.method + print 'registration view, method',method - if request.method == 'POST': + if method == 'POST': # We shall use a form here #get_email = PendingUser.objects.get(email)