X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/f59e7c3de6bd0f85a61a4d9481db60cd7369ae92..17bd0c21add8a0b41a57f6f531dc0a90bbd0a393:/apps/catalogue/fields.py diff --git a/apps/catalogue/fields.py b/apps/catalogue/fields.py index 57ce58189..390fb0359 100644 --- a/apps/catalogue/fields.py +++ b/apps/catalogue/fields.py @@ -3,18 +3,12 @@ # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information. # import datetime -from functools import wraps from django.conf import settings from django.db import models from django.db.models.fields.files import FieldFile -from django.db.models import signals from django import forms -from django.forms.widgets import flatatt -from django.utils.encoding import smart_unicode from django.utils import simplejson as json -from django.utils.html import escape -from django.utils.safestring import mark_safe from django.utils.translation import ugettext_lazy as _ @@ -72,67 +66,6 @@ class JSONField(models.TextField): setattr(cls, 'set_%s_value' % self.name, set_value) -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(attrs, name=name) - if value: - final_attrs['value'] = smart_unicode(value) - - if not self.attrs.has_key('id'): - 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""" - $('#%s') - .autocomplete($.extend({ - minLength: 0, - select: autocomplete_result_handler, - focus: function (ui, item) { return false; } - }, %s)) - .data("autocomplete")._renderItem = autocomplete_format_item; - """ % (field_id, options) - - -class JQueryAutoCompleteField(forms.CharField): - def __init__(self, source, options={}, *args, **kwargs): - 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, source, options={}, *args, **kwargs): - if 'widget' not in kwargs: - options['source'] = source - kwargs['widget'] = JQueryAutoCompleteSearchWidget(options) - - super(JQueryAutoCompleteSearchField, self).__init__(*args, **kwargs) - - class OverwritingFieldFile(FieldFile): """ Deletes the old file before saving the new one.