Revision a4233484 snf-astakos-app/astakos/im/forms.py
b/snf-astakos-app/astakos/im/forms.py | ||
---|---|---|
572 | 572 |
model = AstakosGroup |
573 | 573 |
fields = ('homepage', 'desc') |
574 | 574 |
|
575 |
class AddGroupMembersForm(forms.Form): |
|
576 |
q = forms.CharField(max_length=800, widget=forms.Textarea, label=_('Search users'), |
|
577 |
help_text=_('Add comma separated user emails'), |
|
578 |
required=True) |
|
579 |
|
|
580 |
def clean(self): |
|
581 |
q = self.cleaned_data.get('q') or '' |
|
582 |
users = q.split(',') |
|
583 |
users = list(u.strip() for u in users if u) |
|
584 |
db_entries = AstakosUser.objects.filter(email__in=users) |
|
585 |
unknown = list(set(users) - set(u.email for u in db_entries)) |
|
586 |
if unknown: |
|
587 |
raise forms.ValidationError( |
|
588 |
_('Unknown users: %s' % unknown)) |
|
589 |
self.valid_users = db_entries |
|
590 |
return self.cleaned_data |
|
591 |
|
|
592 |
def get_valid_users(self): |
|
593 |
"""Should be called after form cleaning""" |
|
594 |
try: |
|
595 |
return self.valid_users |
|
596 |
except: |
|
597 |
return () |
|
598 |
|
|
599 |
|
|
575 | 600 |
class AstakosGroupSearchForm(forms.Form): |
576 | 601 |
q = forms.CharField(max_length=200, label='Search group') |
Also available in: Unified diff