from slughifi import slughifi
from catalogue.models import Tag, Book
-from catalogue.fields import JQueryAutoCompleteField
+from catalogue.fields import JQueryAutoCompleteSearchField
from catalogue import utils
class SearchForm(forms.Form):
- q = JQueryAutoCompleteField('/katalog/tags/', {'minChars': 2, 'selectFirst': True, 'cacheLength': 50, 'matchContains': "word"})
- tags = forms.CharField(widget=forms.HiddenInput, required=False)
+ q = JQueryAutoCompleteSearchField() # {'minChars': 2, 'selectFirst': True, 'cacheLength': 50, 'matchContains': "word"})
- def __init__(self, *args, **kwargs):
- tags = kwargs.pop('tags', [])
+ def __init__(self, source, *args, **kwargs):
+ kwargs['auto_id'] = False
super(SearchForm, self).__init__(*args, **kwargs)
- self.fields['q'].widget.attrs['title'] = _('title, author, theme/topic, epoch, kind, genre')
- #self.fields['q'].widget.attrs['style'] = ''
- self.fields['tags'].initial = '/'.join(tag.url_chunk for tag in Tag.get_tag_list(tags))
+ self.fields['q'].widget.attrs['id'] = _('search')
+ self.fields['q'].widget.attrs['autocomplete'] = _('off')
+ self.fields['q'].widget.attrs['data-source'] = _(source)
+ if not 'q' in self.data:
+ self.fields['q'].widget.attrs['title'] = _('title, author, theme/topic, epoch, kind, genre, phrase')
class UserSetsForm(forms.Form):