X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/b0b9c1f0f9f4cc0f5c4d00d913735ab6a81bf214..8885fd14f5f040eb3aa69f1d705856f99a1fa572:/src/search/fields.py diff --git a/src/search/fields.py b/src/search/fields.py old mode 100755 new mode 100644 index 9572fa3ae..1666a67ea --- a/src/search/fields.py +++ b/src/search/fields.py @@ -1,65 +1,8 @@ -# -*- coding: utf-8 -*- -# This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later. -# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information. +# This file is part of Wolne Lektury, licensed under GNU Affero GPLv3 or later. +# Copyright © Fundacja Wolne Lektury. See NOTICE for more information. # -from django import forms -from django.forms.utils import flatatt -from django.utils.encoding import smart_unicode -from django.utils.safestring import mark_safe -from json import dumps +from django.forms.widgets import RadioSelect -class JQueryAutoCompleteWidget(forms.TextInput): - def __init__(self, options, *args, **kwargs): - self.options = dumps(options) - super(JQueryAutoCompleteWidget, self).__init__(*args, **kwargs) - - def render_js(self, field_id, options): - return u'$(\'#%s\').autocomplete(%s).result(autocomplete_result_handler);' % (field_id, options) - - def render(self, name, value=None, attrs=None): - final_attrs = self.build_attrs(self.attrs, attrs) - if value: - final_attrs['value'] = smart_unicode(value) - - if 'id' not in self.attrs: - final_attrs['id'] = 'id_%s' % name - - html = u''' - - ''' % { - 'attrs': flatatt(final_attrs), - 'js': self.render_js(final_attrs['id'], self.options), - } - - return mark_safe(html) - - -class JQueryAutoCompleteSearchWidget(JQueryAutoCompleteWidget): - def __init__(self, *args, **kwargs): - super(JQueryAutoCompleteSearchWidget, self).__init__(*args, **kwargs) - - def render_js(self, field_id, options): - return u"" - - -class JQueryAutoCompleteField(forms.CharField): - def __init__(self, source, options=None, *args, **kwargs): - if options is None: - options = {} - if 'widget' not in kwargs: - options['source'] = source - kwargs['widget'] = JQueryAutoCompleteWidget(options) - - super(JQueryAutoCompleteField, self).__init__(*args, **kwargs) - - -class JQueryAutoCompleteSearchField(forms.CharField): - def __init__(self, options=None, *args, **kwargs): - if options is None: - options = {} - if 'widget' not in kwargs: - kwargs['widget'] = JQueryAutoCompleteSearchWidget(options) - - super(JQueryAutoCompleteSearchField, self).__init__(*args, **kwargs) +class InlineRadioWidget(RadioSelect): + option_template_name = 'search/inline_radio_widget_option.html'