diff options
| author | Étienne Loks <etienne.loks@peacefrogs.net> | 2012-09-04 13:08:21 +0200 |
|---|---|---|
| committer | Étienne Loks <etienne.loks@peacefrogs.net> | 2012-09-04 13:08:21 +0200 |
| commit | 6275deca8d254139c1395197125b660d102339ed (patch) | |
| tree | c4920212561ea3896811cacf040972a7cf48a190 /chimere/widgets.py | |
| parent | 736fbe38b7ba73b6c05bcf2a6d2216a5aee0ffa0 (diff) | |
| download | Chimère-6275deca8d254139c1395197125b660d102339ed.tar.bz2 Chimère-6275deca8d254139c1395197125b660d102339ed.zip | |
Improve tinyMCE edition for extra pages
Diffstat (limited to 'chimere/widgets.py')
| -rw-r--r-- | chimere/widgets.py | 33 |
1 files changed, 29 insertions, 4 deletions
diff --git a/chimere/widgets.py b/chimere/widgets.py index a30b596..efc7aae 100644 --- a/chimere/widgets.py +++ b/chimere/widgets.py @@ -145,6 +145,7 @@ class TextareaWidget(forms.Textarea): class Media: js = ["%stiny_mce.js" % settings.TINYMCE_URL, "%schimere/js/textareas.js" % settings.STATIC_URL,] + def render(self, *args, **kwargs): if 'attrs' not in kwargs: kwargs['attrs'] = {} @@ -154,15 +155,12 @@ class TextareaWidget(forms.Textarea): kwargs['attrs']['class'] += ' ' kwargs['attrs']['class'] += 'mceEditor' rendered = super(TextareaWidget, self).render(*args, **kwargs) - return mark_safe(rendered) - - def render(self, *args, **kwargs): - rendered = super(TextareaWidget, self).render(*args, **kwargs) rendered += u"""<script type='text/javascript'> tinyMCE.init({ mode : "textareas", theme : "advanced", relative_urls : false, + editor_selector : "mceEditor", theme_advanced_buttons1 : "bold,italic,underline,strikethrough,separator,bullist,numlist,separator,hr,separator,link", theme_advanced_buttons2 : "", theme_advanced_buttons3 : "" @@ -170,6 +168,33 @@ tinyMCE.init({ """ return mark_safe(rendered) +class FullTextareaWidget(forms.Textarea): + """ + Manage the edition of a text using TinyMCE + """ + class Media: + js = ["%stiny_mce.js" % settings.TINYMCE_URL, + "%schimere/js/textareas-full.js" % settings.STATIC_URL,] + + def render(self, *args, **kwargs): + if 'attrs' not in kwargs: + kwargs['attrs'] = {} + if 'class' not in kwargs['attrs']: + kwargs['attrs']['class'] = '' + else: + kwargs['attrs']['class'] += ' ' + kwargs['attrs']['class'] += 'mceEditor' + rendered = super(FullTextareaWidget, self).render(*args, **kwargs) + rendered += u"""<script type='text/javascript'> +tinyMCE.init({ + mode : "textareas", + theme : "advanced", + relative_urls : false, + editor_selector : "mceEditor" +});</script> +""" + return mark_safe(rendered) + class DatePickerWidget(forms.TextInput): """ Manage the edition of dates. |
