X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/8559c95597de98e8f6c580e97224ed3ecc9dc5c0..3bf093e9bc0b4a6057c6c287376d748eb3c78b7f:/catalogue/forms.py?ds=sidebyside diff --git a/catalogue/forms.py b/catalogue/forms.py index b383f99ea..279ec7193 100644 --- a/catalogue/forms.py +++ b/catalogue/forms.py @@ -1,27 +1,38 @@ # -*- coding: utf-8 -*- from django import forms +from slughifi import slughifi from catalogue.models import Tag from catalogue.fields import JQueryAutoCompleteField -from catalogue.lib.slughifi import slughifi class SearchForm(forms.Form): q = JQueryAutoCompleteField('/katalog/tags/', {'minChars': 2, 'selectFirst': True, 'cacheLength': 50}) - + tags = forms.CharField(widget=forms.HiddenInput, required=False) + def __init__(self, *args, **kwargs): + tags = kwargs.pop('tags', []) super(SearchForm, self).__init__(*args, **kwargs) self.fields['q'].widget.attrs['title'] = u'tytuł utworu, motyw lub kategoria' + self.fields['tags'].initial = '/'.join(tag.slug for tag in Tag.get_tag_list(tags)) + + +class UserSetsForm(forms.Form): + def __init__(self, book, user, *args, **kwargs): + super(UserSetsForm, self).__init__(*args, **kwargs) + self.fields['set_ids'] = forms.ChoiceField( + choices=[(tag.id, tag.name) for tag in Tag.objects.filter(category='set', user=user)], + ) -class BookSetsForm(forms.Form): - def __init__(self, book, user, *args, **kwargs): - super(BookSetsForm, self).__init__(*args, **kwargs) +class ObjectSetsForm(forms.Form): + def __init__(self, obj, user, *args, **kwargs): + super(ObjectSetsForm, self).__init__(*args, **kwargs) self.fields['set_ids'] = forms.MultipleChoiceField( - label=u'Zestawy', + label=u'Półki', required=False, choices=[(tag.id, tag.name) for tag in Tag.objects.filter(category='set', user=user)], - initial=[tag.id for tag in book.tags.filter(category='set', user=user)], + initial=[tag.id for tag in obj.tags.filter(category='set', user=user)], widget=forms.CheckboxSelectMultiple )