summaryrefslogtreecommitdiff
path: root/ishtar_common/forms_common.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2018-05-28 17:55:40 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2018-06-12 08:49:36 +0200
commit4e274512cce1ea86f6efb250312833c8b1672fa4 (patch)
tree9a685b60c30550e2e383e574caf4fd448c13d3ea /ishtar_common/forms_common.py
parentf5634457ef7882cbc9fcb30d0e12a61d4f13498a (diff)
downloadIshtar-4e274512cce1ea86f6efb250312833c8b1672fa4.tar.bz2
Ishtar-4e274512cce1ea86f6efb250312833c8b1672fa4.zip
Test: user profile form
Diffstat (limited to 'ishtar_common/forms_common.py')
-rw-r--r--ishtar_common/forms_common.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/ishtar_common/forms_common.py b/ishtar_common/forms_common.py
index edea0cde2..92c4c5797 100644
--- a/ishtar_common/forms_common.py
+++ b/ishtar_common/forms_common.py
@@ -845,6 +845,23 @@ class ProfilePersonForm(forms.Form):
(current_profile.profile_type.pk, current_profile.profile_type.name)
]
+ def clean(self):
+ data = self.cleaned_data
+ q = models.UserProfile.objects.filter(
+ person__ishtaruser=self.user.ishtaruser,
+ pk=data['current_profile'])
+ if not q.count():
+ return data
+ profile = q.all()[0]
+
+ name = data.get('name', '')
+ if models.UserProfile.objects.filter(
+ person__ishtaruser=self.user.ishtaruser,
+ name=name).exclude(pk=profile.pk).count():
+ raise forms.ValidationError(
+ _(u"A profile with the same name exists."))
+ return data
+
def save(self, session):
q = models.UserProfile.objects.filter(
person__ishtaruser=self.user.ishtaruser,