From c8417bd7fcdfa86cd6da582009759a7d65891ee4 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 5 Jul 2011 16:22:54 +0200 Subject: Search Archaelogical files by person in charge (closes #426) --- ishtar/ishtar_base/forms_common.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'ishtar/ishtar_base/forms_common.py') diff --git a/ishtar/ishtar_base/forms_common.py b/ishtar/ishtar_base/forms_common.py index dae692b05..41c91df6d 100644 --- a/ishtar/ishtar_base/forms_common.py +++ b/ishtar/ishtar_base/forms_common.py @@ -54,6 +54,18 @@ def get_town_field(label=_(u"Town"), required=True): validators=[models.valid_id(models.Town)], label=label, help_text=mark_safe(help_text), required=required) +def get_person_field(label=_(u"Person"), required=True, person_type=None): + # !FIXME hard_link, reverse_lazy doen't seem to work with formsets + widget = None + url = "/" + settings.URL_PATH + 'autocomplete-person' + if person_type: + if isinstance(person_type, unicode) or isinstance(person_type, str): + person_type = models.PersonType.objects.get(txt_idx=person_type) + url += u"/" + unicode(person_type.pk) + widget = widgets.JQueryAutoComplete(url, associated_model=models.Person) + return forms.IntegerField(widget=widget, label=label, required=required, + validators=[models.valid_id(models.Person)]) + class WarehouseForm(forms.Form): name = forms.CharField(label=_(u"Name"), max_length=40, validators=[name_validator]) -- cgit v1.2.3