From dc399686e061b9c7e18f354f1921b0388e58db27 Mon Sep 17 00:00:00 2001 From: Simon Caminada Date: Thu, 7 Jun 2018 16:06:04 +0000 Subject: [PATCH] install djangocms-text-ckeditor 3.5.3 --- addons/djangocms-text-ckeditor/addon.json | 6 +++ .../djangocms-text-ckeditor/aldryn_config.py | 50 +++++++++++++++++++ addons/djangocms-text-ckeditor/settings.json | 4 ++ requirements.in | 1 + settings.py | 1 + 5 files changed, 62 insertions(+) create mode 100644 addons/djangocms-text-ckeditor/addon.json create mode 100644 addons/djangocms-text-ckeditor/aldryn_config.py create mode 100644 addons/djangocms-text-ckeditor/settings.json diff --git a/addons/djangocms-text-ckeditor/addon.json b/addons/djangocms-text-ckeditor/addon.json new file mode 100644 index 0000000..7678082 --- /dev/null +++ b/addons/djangocms-text-ckeditor/addon.json @@ -0,0 +1,6 @@ +{ + "installed-apps": [ + "djangocms_text_ckeditor" + ], + "package-name": "djangocms-text-ckeditor" +} \ No newline at end of file diff --git a/addons/djangocms-text-ckeditor/aldryn_config.py b/addons/djangocms-text-ckeditor/aldryn_config.py new file mode 100644 index 0000000..8ff9e40 --- /dev/null +++ b/addons/djangocms-text-ckeditor/aldryn_config.py @@ -0,0 +1,50 @@ +# -*- coding: utf-8 -*- +from aldryn_client import forms + + +class Form(forms.BaseForm): + style_set = forms.CharField( + 'The "styles definition set" to use in the editor', + required=False, + ) + content_css = forms.CharField( + 'List of CSS files to be used to apply style to editor content', + required=False, + ) + + def clean(self): + data = super(Form, self).clean() + + if data.get('content_css'): + files = data['content_css'].split(',') + data['content_css'] = [item.strip() for item in files if item] + return data + + def to_settings(self, data, settings): + # boilerplate must provide /static/js/modules/ckeditor.wysiwyg.js and /static/css/base.css + CKEDITOR_SETTINGS = { + 'height': 300, + 'language': '{{ language }}', + 'toolbar': 'CMS', + 'skin': 'moono-lisa', + } + + # This could fail if aldryn-django-cms has not been configured yet. + boilerplate_name = settings['ALDRYN_BOILERPLATE_NAME'] + + if data.get('content_css'): + CKEDITOR_SETTINGS['contentsCss'] = data['content_css'] + else: + CKEDITOR_SETTINGS['contentsCss'] = ['/static/css/base.css'] + + if data.get('style_set'): + style_set = data['style_set'] + elif boilerplate_name == 'bootstrap3': + style_set = '/static/js/addons/ckeditor.wysiwyg.js' + else: + style_set = '' + + CKEDITOR_SETTINGS['stylesSet'] = 'default:{}'.format(style_set) + + settings['CKEDITOR_SETTINGS'] = CKEDITOR_SETTINGS + return settings diff --git a/addons/djangocms-text-ckeditor/settings.json b/addons/djangocms-text-ckeditor/settings.json new file mode 100644 index 0000000..4fa0b78 --- /dev/null +++ b/addons/djangocms-text-ckeditor/settings.json @@ -0,0 +1,4 @@ +{ + "content_css": "", + "style_set": "" +} \ No newline at end of file diff --git a/requirements.in b/requirements.in index 56686f2..9dcbebb 100644 --- a/requirements.in +++ b/requirements.in @@ -8,6 +8,7 @@ https://control.divio.com/api/v1/apps/serve/aldryn-google-analytics/1.0.1/9fa370 https://control.divio.com/api/v1/apps/serve/djangocms-history/0.5.3/05803675-6e8d-4637-b14b-1bb8d18b24b3/djangocms-history-0.5.3.tar.gz#egg=djangocms-history==0.5.3 https://control.divio.com/api/v1/apps/serve/djangocms-link/2.1.2/35b986c1-fafb-46ee-b665-aa36603f233a/djangocms-link-2.1.2.tar.gz#egg=djangocms-link==2.1.2 https://control.divio.com/api/v1/apps/serve/djangocms-picture/2.0.6/005e8663-d1cc-4667-936c-30709edad076/djangocms-picture-2.0.6.tar.gz#egg=djangocms-picture==2.0.6 +https://control.divio.com/api/v1/apps/serve/djangocms-text-ckeditor/3.5.3/a7b5179f-cea5-4af8-b235-6b7f709c4e6a/djangocms-text-ckeditor-3.5.3.tar.gz#egg=djangocms-text-ckeditor==3.5.3 https://control.divio.com/api/v1/apps/serve/django-filer/1.3.2/a68cceeb-0373-47af-9cf6-01dbc9bead40/django-filer-1.3.2.tar.gz#egg=django-filer==1.3.2 # Whoosh==2.7.4 diff --git a/settings.py b/settings.py index a84b6a0..3eba910 100644 --- a/settings.py +++ b/settings.py @@ -13,6 +13,7 @@ INSTALLED_ADDONS = [ 'djangocms-history', 'djangocms-link', 'djangocms-picture', + 'djangocms-text-ckeditor', 'django-filer', # ]