diff options
Diffstat (limited to 'ishtar_common/widgets.py')
-rw-r--r-- | ishtar_common/widgets.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/ishtar_common/widgets.py b/ishtar_common/widgets.py index 404d5fabe..0ba4061a8 100644 --- a/ishtar_common/widgets.py +++ b/ishtar_common/widgets.py @@ -37,6 +37,24 @@ import models reverse_lazy = lazy(reverse, unicode) + +class Select2Multiple(forms.SelectMultiple): + class Media: + css = { + 'all': ('select2/css/select2.css',) + } + js = ('select2/js/select2.min.js', + 'select2/js/init.js') + + def render(self, name, value, attrs=None, choices=()): + klass = attrs and attrs.get('class') or '' + klass += ' ' if klass else '' + 'js-select2' + if not attrs: + attrs = {} + attrs['class'] = klass + return super(Select2Multiple, self).render(name, value, attrs, + choices) + class MultipleAutocompleteField(forms.MultipleChoiceField): def __init__(self, *args, **kwargs): self.model = None |