cms.plugins.text.widgets.wymeditor_widget: 25 total statements, 0.0% covered

Generated: Wed 2013-03-13 10:33 CET

Source file: /media/Envs/Envs/filer-gallery/lib/python2.7/site-packages/cms/plugins/text/widgets/wymeditor_widget.py

Stats: 0 executed, 18 missed, 7 excluded, 33 ignored

  1. from cms.plugins.text import settings as text_settings
  2. from cms.utils import cms_static_url
  3. from django.conf import settings
  4. from django.forms import Textarea
  5. from django.template.loader import render_to_string
  6. from django.utils.safestring import mark_safe
  7. from django.utils.translation.trans_real import get_language
  8. class WYMEditor(Textarea):
  9. class Media:
  10. js = [cms_static_url(path) for path in (
  11. 'wymeditor/jquery.wymeditor.js',
  12. 'wymeditor/plugins/resizable/jquery.wymeditor.resizable.js',
  13. 'js/wymeditor.placeholdereditor.js',
  14. 'js/libs/jquery.ui.core.js',
  15. 'js/placeholder_editor_registry.js',
  16. )]
  17. css = {
  18. 'all': [cms_static_url(path) for path in (
  19. 'css/jquery/cupertino/jquery-ui.css',
  20. )],
  21. }
  22. def __init__(self, attrs=None, installed_plugins=None):
  23. """
  24. Create a widget for editing text + plugins.
  25. installed_plugins is a list of plugins to display that are text_enabled
  26. """
  27. self.attrs = {'class': 'wymeditor'}
  28. if attrs:
  29. self.attrs.update(attrs)
  30. super(WYMEditor, self).__init__(attrs)
  31. self.installed_plugins = installed_plugins
  32. def render_textarea(self, name, value, attrs=None):
  33. return super(WYMEditor, self).render(name, value, attrs)
  34. def render_additions(self, name, value, attrs=None):
  35. language = get_language().split('-')[0]
  36. context = {
  37. 'name': name,
  38. 'language': language,
  39. 'STATIC_URL': settings.STATIC_URL,
  40. 'WYM_TOOLS': mark_safe(text_settings.WYM_TOOLS),
  41. 'WYM_CONTAINERS': mark_safe(text_settings.WYM_CONTAINERS),
  42. 'WYM_CLASSES': mark_safe(text_settings.WYM_CLASSES),
  43. 'WYM_STYLES': mark_safe(text_settings.WYM_STYLES),
  44. 'WYM_STYLESHEET': mark_safe(text_settings.WYM_STYLESHEET),
  45. 'installed_plugins': self.installed_plugins,
  46. }
  47. return mark_safe(render_to_string(
  48. 'cms/plugins/widgets/wymeditor.html', context))
  49. def render(self, name, value, attrs=None):
  50. return self.render_textarea(name, value, attrs) + \
  51. self.render_additions(name, value, attrs)