summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRadomir Dopieralski <openstack@sheep.art.pl>2014-01-13 17:39:07 +0100
committerRadomir Dopieralski <openstack@sheep.art.pl>2014-01-13 17:39:07 +0100
commit49f8987f65656b8f16f39c662fdd769ed975d03b (patch)
treec2a569e3c4f314f35fa1f354c130ae60d4c66278
parent378c296f85ba0e6a4ec151e8a35ac79ffff118fc (diff)
downloadtuskar-ui-49f8987f65656b8f16f39c662fdd769ed975d03b.tar.gz
Don't allow empty nodes in registration
Throw a validation error if any of the forms in the formset is empty. Make sure that error is displayed. Change-Id: I8895d7e46b0f66eeca50d4bace69e170d8f190b7 Closes-Bug: #1268651
-rw-r--r--tuskar_ui/infrastructure/nodes/forms.py6
-rw-r--r--tuskar_ui/infrastructure/templates/formset_table/menu_formset.html3
2 files changed, 9 insertions, 0 deletions
diff --git a/tuskar_ui/infrastructure/nodes/forms.py b/tuskar_ui/infrastructure/nodes/forms.py
index ca656628..fabc33a7 100644
--- a/tuskar_ui/infrastructure/nodes/forms.py
+++ b/tuskar_ui/infrastructure/nodes/forms.py
@@ -122,6 +122,12 @@ class BaseNodeFormset(django.forms.formsets.BaseFormSet):
pass
return success
+ def clean(self):
+ for form in self:
+ if not form.cleaned_data:
+ raise django.forms.ValidationError(
+ _("Please provide node data for all nodes."))
+
NodeFormset = django.forms.formsets.formset_factory(NodeForm, extra=1,
formset=BaseNodeFormset)
diff --git a/tuskar_ui/infrastructure/templates/formset_table/menu_formset.html b/tuskar_ui/infrastructure/templates/formset_table/menu_formset.html
index 1823fb2b..755805cf 100644
--- a/tuskar_ui/infrastructure/templates/formset_table/menu_formset.html
+++ b/tuskar_ui/infrastructure/templates/formset_table/menu_formset.html
@@ -1,5 +1,8 @@
{% load i18n %}
{{ formset.management_form }}
+{% for error in formset.non_form_errors %}
+ <div class="alert alert-error error">{{ error }}</div>
+{% endfor %}
<div class="row-fluid register-nodes-formset" id="formset-{{ formset.prefix }}">
<div class="span5">
<div class="clearfix register-nav-head">