summaryrefslogtreecommitdiff
path: root/chimere/widgets.py
diff options
context:
space:
mode:
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
commit6275deca8d254139c1395197125b660d102339ed (patch)
treec4920212561ea3896811cacf040972a7cf48a190 /chimere/widgets.py
parent736fbe38b7ba73b6c05bcf2a6d2216a5aee0ffa0 (diff)
downloadChimè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.py33
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.