diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2017-03-21 17:21:48 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2017-03-21 17:21:48 +0100 |
commit | 3589e3fda2c3acc49632f1e3a1a5255a5f5c7724 (patch) | |
tree | acf1e445884ed78ba8fabc62de825717641c8c36 | |
parent | e1d1617579a8600cd9a31a09f05931620d03d982 (diff) | |
download | Ishtar-3589e3fda2c3acc49632f1e3a1a5255a5f5c7724.tar.bz2 Ishtar-3589e3fda2c3acc49632f1e3a1a5255a5f5c7724.zip |
Warehouse modification: arror message is displayed when putting identical division types (refs #3562)
-rw-r--r-- | archaeological_warehouse/forms.py | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/archaeological_warehouse/forms.py b/archaeological_warehouse/forms.py index e880e2547..3dd38d747 100644 --- a/archaeological_warehouse/forms.py +++ b/archaeological_warehouse/forms.py @@ -28,7 +28,7 @@ from archaeological_finds.models import TreatmentType, FindBasket import models from ishtar_common import widgets from ishtar_common.forms import name_validator, reverse_lazy, \ - get_form_selection, TableSelect, ManageOldType, FinalForm + get_form_selection, TableSelect, ManageOldType, FinalForm, FormSet from archaeological_finds.forms import FindMultipleFormSelection, \ SelectFindBasketForm @@ -58,8 +58,15 @@ class SelectedDivisionForm(ManageOldType, forms.Form): initial=self.init_data.get('division') ) + +class DivisionFormSet(FormSet): + def clean(self): + """Checks that no divisions are duplicated.""" + return self.check_duplicate(('division',), + _("There are identical divisions.")) + SelectedDivisionFormset = formset_factory( - SelectedDivisionForm, can_delete=True) + SelectedDivisionForm, can_delete=True, formset=DivisionFormSet) SelectedDivisionFormset.form_label = _(u"Divisions") |