Generated: Sun 2013-03-24 21:11 CET
Source file: /home/tobi/Projects/calendarium/src/calendarium/widgets.py
Stats: 6 executed, 4 missed, 3 excluded, 28 ignored
"""Widgets for the ``calendarium`` app."""from django import formsfrom django.conf import settingsfrom django.utils.safestring import mark_safeclass ColorPickerWidget(forms.TextInput): class Media: css = { 'all': ( settings.STATIC_URL + 'calendarium/css/colorpicker.css', ) } js = ( '//ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js', settings.STATIC_URL + 'calendarium/js/colorpicker.js', settings.STATIC_URL + 'calendarium/js/eye.js', settings.STATIC_URL + 'calendarium/js/layout.js', settings.STATIC_URL + 'calendarium/js/utils.js', ) def __init__(self, language=None, attrs=None): self.language = language or settings.LANGUAGE_CODE[:2] super(ColorPickerWidget, self).__init__(attrs=attrs) def render(self, name, value, attrs=None): rendered = super(ColorPickerWidget, self).render(name, value, attrs) return rendered + mark_safe( u'''<script type="text/javascript"> $('#id_%s').ColorPicker({ onSubmit: function(hsb, hex, rgb, el) { $(el).val(hex); $(el).ColorPickerHide(); }, onBeforeShow: function () { $(this).ColorPickerSetColor(this.value); } }).bind('keyup', function(){ $(this).ColorPickerSetColor(this.value); }); </script>''' % name)