diff options
Diffstat (limited to 'chimere/widgets.py')
| -rw-r--r-- | chimere/widgets.py | 27 | 
1 files changed, 21 insertions, 6 deletions
| diff --git a/chimere/widgets.py b/chimere/widgets.py index 1cc8918..7528e9b 100644 --- a/chimere/widgets.py +++ b/chimere/widgets.py @@ -168,12 +168,24 @@ class ImporterChoicesWidget(forms.Select):      class Media:          js = ["%schimere/js/importer_interface.js" % settings.STATIC_URL] +TINYMCE_JS, FULL_TINY_JS, ADMIN_TINY_JS = [], [], [] + +if settings.TINYMCE_URL: +    TINYMCE_JS = ["%stiny_mce.js" % settings.TINYMCE_URL] +    FULL_TINY_JS = TINYMCE_JS[:] + \ +        ["%schimere/js/textareas.js" % settings.STATIC_URL] +    ADMIN_TINY_JS = TINYMCE_JS[:] + \ +        ["%schimere/js/textareas_admin.js" % settings.STATIC_URL] +  class TextareaWidgetBase(forms.Textarea):      """      Manage the edition of a text using TinyMCE      """      def render(self, *args, **kwargs): +        if not TINYMCE_JS: +            rendered = super(TextareaWidgetBase, self).render(*args, **kwargs) +            return mark_safe(rendered)          if 'attrs' not in kwargs:              kwargs['attrs'] = {}          if 'class' not in kwargs['attrs']: @@ -190,9 +202,13 @@ class FullTextareaWidget(TextareaWidgetBase):      Manage the edition of a text using TinyMCE      """      class Media: -        js = ["%stiny_mce.js" % settings.TINYMCE_URL] +        js = TINYMCE_JS      def render(self, *args, **kwargs): +        if not TINYMCE_JS: +            rendered = super(FullTextareaWidget, self).render(*args, **kwargs) +            return mark_safe(rendered) +          if 'attrs' not in kwargs:              kwargs['attrs'] = {}          if 'class' not in kwargs['attrs']: @@ -218,14 +234,12 @@ class TextareaWidget(TextareaWidgetBase):      Manage the edition of a text using TinyMCE      """      class Media: -        js = ["%stiny_mce.js" % settings.TINYMCE_URL, -              "%schimere/js/textareas.js" % settings.STATIC_URL] +        js = FULL_TINY_JS  class TextareaAdminWidget(TextareaWidgetBase):      class Media: -        js = ["%stiny_mce.js" % settings.TINYMCE_URL, -              "%schimere/js/textareas_admin.js" % settings.STATIC_URL] +        js = ADMIN_TINY_JS  class DatePickerWidget(forms.TextInput): @@ -318,7 +332,8 @@ class PointChooserWidget(forms.TextInput):              (settings.STATIC_URL,               settings.CHIMERE_EPSG_DISPLAY_PROJECTION,               settings.CHIMERE_EPSG_PROJECTION, -             settings.CHIMERE_DEFAULT_CENTER, +             "[{}, {}]".format(settings.CHIMERE_DEFAULT_CENTER[0], +                               settings.CHIMERE_DEFAULT_CENTER[1]),               settings.CHIMERE_DEFAULT_ZOOM,               settings.STATIC_URL,               ", ".join(map_layers) | 
