diff --git a/src/core/homepage_elements/html/plugin_settings.py b/src/core/homepage_elements/html/plugin_settings.py
index b8e20b726..d8f127fca 100755
--- a/src/core/homepage_elements/html/plugin_settings.py
+++ b/src/core/homepage_elements/html/plugin_settings.py
@@ -19,9 +19,8 @@ def install():
import journal.models as journal_models
import press.models as press_models
- print('install for html')
-
- # check whether this homepage element has already been installed for all journals
+ # check whether this homepage element has
+ # already been installed for all journals
journals = journal_models.Journal.objects.all()
for journal in journals:
@@ -62,7 +61,12 @@ def install():
models.PluginSetting.objects.get_or_create(
name='html_block_content',
plugin=plugin,
- defaults={'pretty_name': 'HTML Block Content'}
+ defaults={
+ 'pretty_name': 'HTML Block Content',
+ 'types': 'rich-text',
+ 'description': DESCRIPTION,
+ 'is_translatable': True,
+ }
)
diff --git a/src/core/homepage_elements/html/views.py b/src/core/homepage_elements/html/views.py
index 2b563ad19..6bc5ed4bc 100755
--- a/src/core/homepage_elements/html/views.py
+++ b/src/core/homepage_elements/html/views.py
@@ -14,11 +14,34 @@
@editor_user_required
def html_settings(request):
plugin = models.Plugin.objects.get(name='HTML')
- html_block_content = setting_handler.get_plugin_setting(plugin, 'html_block_content', request.journal, create=True,
- pretty='HTML Block Content').value
+
+ try:
+ html_block_content = setting_handler.get_plugin_setting(
+ plugin,
+ 'html_block_content',
+ request.journal,
+ create=False,
+ pretty='HTML Block Content'
+ ).value
+ except models.PluginSetting.DoesNotExist:
+ messages.add_message(
+ request,
+ messages.ERROR,
+ "No 'html_block_content' setting found. Have you installed "
+ "this plugin?",
+ )
+ return redirect(
+ reverse(
+ 'home_settings_index',
+ )
+ )
+
if request.POST:
html_block_content = request.POST.get('html_block_content')
- setting_handler.save_plugin_setting(plugin, 'html_block_content', html_block_content, request.journal)
+ setting_handler.save_plugin_setting(plugin,
+ 'html_block_content',
+ html_block_content,
+ request.journal)
messages.add_message(request, messages.INFO, 'HTML Block updated.')
return redirect(reverse('home_settings_index'))