portal: added slice request forms
authorJordan Augé <jordan.auge@lip6.fr>
Wed, 3 Jul 2013 08:52:18 +0000 (10:52 +0200)
committerJordan Augé <jordan.auge@lip6.fr>
Wed, 3 Jul 2013 08:52:18 +0000 (10:52 +0200)
portal/forms.py
portal/models.py
portal/templates/user_register.html [moved from portal/templates/register_user.html with 100% similarity]
portal/views.py

index c9cab82..43be698 100644 (file)
 # Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
 from django import forms
-from portal.models import PendingUser
+from portal.models import PendingUser, PendingSlice
 #from crispy_forms.helper import FormHelper
 #from crispy_forms.layout import Submit
 
-class RegisterUserForm(forms.ModelForm):
+class UserRegisterForm(forms.ModelForm):
 # DEPRECATED #    def __init__(self, *args, **kwargs):
 # DEPRECATED #        self.helper = FormHelper()
 # DEPRECATED #        self.helper.form_tag = False
@@ -45,6 +45,11 @@ class RegisterUserForm(forms.ModelForm):
     class Meta:
         model = PendingUser
 
-class RegisterUserStep2Form(forms.ModelForm):
+class SliceRequestForm(forms.ModelForm):
+    slice_name = forms.CharField( widget=forms.TextInput )
     class Meta:
-        model = PendingUser
+        model = PendingSlice
+
+# DEPRECATED #class RegisterUserStep2Form(forms.ModelForm):
+# DEPRECATED #    class Meta:
+# DEPRECATED #        model = PendingUser
index 316ed54..79cb25d 100644 (file)
@@ -1,3 +1,25 @@
+# -*- coding: utf-8 -*-
+#
+# portal/models.py: models for the portal application
+# This file is part of the Manifold project.
+#
+# Authors:
+#   Jordan Augé <jordan.auge@lip6.fr>
+# Copyright 2013, UPMC Sorbonne Universités / LIP6
+#
+# This program is free software; you can redistribute it and/or modify it under
+# the terms of the GNU General Public License as published by the Free Software
+# Foundation; either version 3, or (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+# FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
+# details.
+# 
+# You should have received a copy of the GNU General Public License along with
+# this program; see the file COPYING.  If not, write to the Free Software
+# Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
 from django.db import models
 
 # Create your models here.
@@ -7,6 +29,8 @@ class Institution(models.Model):
     # list of associated email domains 
 
 class PendingUser(models.Model):
+    # NOTE We might consider migrating the fields to CharField, which would
+    # simplify form creation in forms.py
     first_name  = models.TextField()
     last_name   = models.TextField()
     email       = models.TextField()
index 7dd551f..c84c20a 100644 (file)
 # Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
 from django.shortcuts import render
-from portal.forms     import RegisterUserForm
+from portal.forms     import UserRegisterForm, SliceRequestForm
 
 def user_register(request):
     if request.method == 'POST':
-        form = RegisterUserForm(request.POST) # Nous reprenons les données
+        form = UserRegisterForm(request.POST)
         if form.is_valid():
             first_name = form.cleaned_data['first_name']
             last_name  = form.cleaned_data['last_name']
@@ -41,15 +41,20 @@ def user_register(request):
             ## Nous pourrions ici envoyer l'e-mail grâce aux données que nous venons de récupérer
             #envoi = True
     else:
-        form = RegisterUserForm()
-    return render(request, 'register_user.html', locals())
-    pass
+        form = UserRegisterForm()
+    return render(request, 'user_register.html', locals())
 
 def user_validate(request):
     pass
 
 def slice_request(request):
-    pass
+    if request.method == 'POST':
+        form = SliceRequestForm(request.POST)
+        if form.is_valid():
+            slice_name = form.cleaned_data['slice_name']
+    else:
+        form = SliceRequestForm()
+    return render(request, 'slice_request.html', locals())
 
 def slice_validate(request):
     pass
@@ -86,8 +91,8 @@ def slice_validate(request):
 # DEPRECATED ##        })
 # DEPRECATED ##        return super(MerlinWizard, cls).as_view(*args, **kwargs)
 # DEPRECATED #
-# DEPRECATED #class RegisterUserWizardView(NamedUrlSessionWizardView):
-# DEPRECATED ##class RegisterUserWizardView(LoginRequiredMixin, NamedUrlSessionWizardView):
+# DEPRECATED #class UserRegisterWizardView(NamedUrlSessionWizardView):
+# DEPRECATED ##class UserRegisterWizardView(LoginRequiredMixin, NamedUrlSessionWizardView):
 # DEPRECATED #    # Notice that I specify a file storage instance. If you don't specify this,
 # DEPRECATED #    # and you need to support FileField or ImageField in your forms, you'll get
 # DEPRECATED #    # errors from Django. This is something else I think could be handled by
@@ -125,7 +130,7 @@ def slice_validate(request):
 # DEPRECATED #def register_user(request):
 # DEPRECATED #    
 # DEPRECATED #    if request.method == 'POST':
-# DEPRECATED #        form = RegisterUserForm(request.POST) # Nous reprenons les données
+# DEPRECATED #        form = UserRegisterForm(request.POST) # Nous reprenons les données
 # DEPRECATED #        if form.is_valid():
 # DEPRECATED #            first_name = form.cleaned_data['first_name']
 # DEPRECATED #            last_name  = form.cleaned_data['last_name']
@@ -141,7 +146,7 @@ def slice_validate(request):
 # DEPRECATED #            ## Nous pourrions ici envoyer l'e-mail grâce aux données que nous venons de récupérer
 # DEPRECATED #            #envoi = True
 # DEPRECATED #    else:
-# DEPRECATED #        form = RegisterUserForm()
+# DEPRECATED #        form = UserRegisterForm()
 # DEPRECATED #    return render(request, 'register_user.html', locals())
 # DEPRECATED #
 # DEPRECATED #def index(request):