Mercurial > public > sg101
view gpp/core/widgets.py @ 6:b6263ac72052
Use DRY principle to manage third party javascript libraries. Created script_tags template tags to generate the correct link and script tags for 3rd party libraries. The settings.py file is the only place where the full path name is specified.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Sat, 11 Apr 2009 22:50:56 +0000 |
parents | dbd703f7d63a |
children | cc8eb028def1 |
line wrap: on
line source
""" Various useful widgets for the GPP application. """ from django import forms from django.utils.safestring import mark_safe from django.core.urlresolvers import reverse from django.conf import settings class AutoCompleteUserInput(forms.TextInput): class Media: css = { 'all': settings.GPP_THIRD_PARTY_CSS['jquery-autocomplete'], } js = settings.GPP_THIRD_PARTY_JS['jquery-autocomplete'] def render(self, name, value, attrs=None): url = reverse('messages-ajax_users') output = super(AutoCompleteUserInput, self).render(name, value, attrs) return output + mark_safe(u'''\ <script type="text/javascript"> jQuery("#id_%s").autocomplete("%s", { width: 150, max: 10, highlight: false, multiple: false, scroll: true, scrollHeight: 300, matchContains: true, autoFill: true, }); </script>''' % (name, url)) # vim: ts=4 sw=4