Merge branch 'jordan' of ssh://git.onelab.eu/git/myslice into jordan
authorJordan Augé <jordan.auge@lip6.fr>
Wed, 28 Aug 2013 08:42:11 +0000 (10:42 +0200)
committerJordan Augé <jordan.auge@lip6.fr>
Wed, 28 Aug 2013 08:42:11 +0000 (10:42 +0200)
Conflicts:
portal/views.py

1  2 
manifold/manifoldapi.py
portal/urls.py
portal/views.py

Simple merge
diff --cc portal/urls.py
Simple merge
diff --cc portal/views.py
@@@ -27,8 -27,8 +27,10 @@@ from django.contrib              impor
  from django.views.generic        import View
  from django.views.generic.base   import TemplateView
  from django.shortcuts            import render
 +from django.template.loader      import render_to_string
 +from django.core.mail            import send_mail
+ from django.utils.decorators     import method_decorator
+ from django.contrib.auth.decorators import login_required
  
  from plugins.lists.simplelist    import SimpleList
  from plugins.hazelnut            import Hazelnut
@@@ -844,42 -889,16 +920,42 @@@ def contact(request)
  
      })
  
+ @login_required
  def slice_request(request):
 -    if request.method == 'POST': # If the form has been submitted...
 -        form = SliceRequestForm(request.POST) # A form bound to the POST data
 -        if form.is_valid(): # All validation rules pass
 -            # Process the data in form.cleaned_data
 -            slice_name = form.cleaned_data['slice_name']
 +    errors = []
 +
 +    authorities_query = Query.get('authority').filter_by('authority_hrn', 'included', ['ple.inria', 'ple.upmc']).select('name', 'authority_hrn')
 +    #authorities_query = Query.get('authority').select('authority_hrn')
 +    authorities = execute_query(request, authorities_query)
 +
 +    authority_hrn_tuple = []
 +    for authority in authorities:
 +        authority_hrn_tuple.append((authority['authority_hrn'], authority['name']))
 +    authority_hrn_initial = {'authority_hrn': authority_hrn_tuple}
 +        
 +    # request.POST or None ?
 +    if request.method == 'POST':
 +        # The form has been submitted
 +        form = SliceRequestForm(request.POST, initial=authority_hrn_initial) 
 +
 +        if form.is_valid():
 +            slice_name      = form.cleaned_data['slice_name']
 +            authority_hrn   = form.cleaned_data['authority_hrn']
              number_of_nodes = form.cleaned_data['number_of_nodes']
 -            type_of_nodes = form.cleaned_data['type_of_nodes']
 -            purpose = form.cleaned_data['purpose']
 +            type_of_nodes   = form.cleaned_data['type_of_nodes']
 +            purpose         = form.cleaned_data['purpose']
 +            
 +            s = PendingSlice(
 +                slice_name      = slice_name,
 +                authority_hrn   = authority_hrn,
 +                number_of_nodes = number_of_nodes,
 +                type_of_nodes   = type_of_nodes,
 +                purpose         = purpose
 +            )
 +            s.save()
 +
 +            # All validation rules pass; process data in form.cleaned_data
 +            # slice_name, number_of_nodes, type_of_nodes, purpose
              email = form.cleaned_data['email'] # email of the sender
              cc_myself = form.cleaned_data['cc_myself']