fixes for updated api
authorMaciej Tronowski <mtro@man.poznan.pl>
Fri, 6 Mar 2015 15:18:16 +0000 (16:18 +0100)
committerMaciej Tronowski <mtro@man.poznan.pl>
Fri, 6 Mar 2015 15:18:16 +0000 (16:18 +0100)
qcg/forms.py
qcg/templates/qcg/job_new.html
qcg/views.py

index 3a5b637..ea08046 100644 (file)
@@ -195,21 +195,10 @@ class JobDescriptionForm(forms.Form):
             data['postprocess'] = ''
 
     def clean_application(self):
-        value = self.cleaned_data['application']
-
-        if '/' in value:
-            return value.split('/', 1)
-
-        return value, None
+        return self.cleaned_data['application'].split('/', 1)
 
     def clean_nodes(self):
-        value = map(int, self.cleaned_data['nodes'].split(':', 2))
-
-        if len(value) == 3:
-            return tuple(value)
-
-        nodes, slots = value
-        return nodes, slots, slots
+        return map(int, self.cleaned_data['nodes'].split(':', 2))
 
 
 class EnvForm(forms.Form):
index 8cf2bbe..6ed34c4 100644 (file)
                 {% bootstrap_field form.script layout="horizontal" form_group_class="form-group collapse" %}
                 {% bootstrap_field form.arguments layout="horizontal" %}
                 {% bootstrap_field form.note layout="horizontal" %}
-                {% bootstrap_field form.grant layout="horizontal" %}
+                {% bootstrap_field form.grant layout="horizontal" form_group_class="form-group collapse" %}
             </fieldset>
 
             <fieldset id="resources" class="tab-pane" role="tabpanel">
index 0be3d73..53491cc 100644 (file)
@@ -163,16 +163,17 @@ def job_new(request):
 
             desc = JobDescription(Credential(request.session['proxy']))
 
-            direct_map = ('application', 'arguments', 'note', 'grant', 'hosts', 'properties', 'queue', 'procs', 'nodes',
-                          'wall_time', 'memory', 'memory_per_slot', 'modules', 'native', 'notify', 'preprocess',
-                          'postprocess', 'persistent')
+            direct_map = ('arguments', 'note', 'grant', 'hosts', 'properties', 'queue', 'procs', 'wall_time', 'memory',
+                          'memory_per_slot', 'modules', 'native', 'notify', 'preprocess', 'postprocess', 'persistent')
 
             for name in direct_map:
                 if form.cleaned_data[name]:
                     setattr(desc, name, form.cleaned_data[name])
 
-            desc.reservation = ('LOCAL', form.cleaned_data['reservation'])
-            desc.watch_output = (form.cleaned_data['watch_output'], form.cleaned_data['watch_output_pattern'])
+            desc.set_application(*form.cleaned_data['application'])
+            desc.set_nodes(*form.cleaned_data['nodes'])
+            desc.set_reservation(form.cleaned_data['reservation'])
+            desc.set_watch_output(form.cleaned_data['watch_output'], form.cleaned_data['watch_output_pattern'])
             desc.env_variables += [(env['name'], env['value']) for env in env_formset.cleaned_data if not env['DELETE']]
             # TODO script
             # TODO executable
@@ -181,7 +182,7 @@ def job_new(request):
             # TODO stage_out
             # TODO monitoring
 
-            for prop in direct_map + ('env_variables', 'reservation', 'watch_output'):
+            for prop in direct_map + ('application', 'nodes', 'env_variables', 'reservation', 'watch_output'):
                 print prop, type(getattr(desc, prop)), repr(getattr(desc, prop))
 
             print desc.xml_description