diff options
author | Radomir Dopieralski <openstack@sheep.art.pl> | 2014-01-13 17:39:07 +0100 |
---|---|---|
committer | Radomir Dopieralski <openstack@sheep.art.pl> | 2014-01-13 17:39:07 +0100 |
commit | 49f8987f65656b8f16f39c662fdd769ed975d03b (patch) | |
tree | c2a569e3c4f314f35fa1f354c130ae60d4c66278 | |
parent | 378c296f85ba0e6a4ec151e8a35ac79ffff118fc (diff) | |
download | tuskar-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.py | 6 | ||||
-rw-r--r-- | tuskar_ui/infrastructure/templates/formset_table/menu_formset.html | 3 |
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"> |