diff --git a/app/admin.py b/app/admin.py index c362801..7055c12 100644 --- a/app/admin.py +++ b/app/admin.py @@ -1,5 +1,5 @@ from django.contrib import admin -from app.models import Setting, File +from .models import Setting, File from django.conf import settings # Register your models here. diff --git a/app/models.py b/app/models.py index 58f92aa..37c4d84 100644 --- a/app/models.py +++ b/app/models.py @@ -1,4 +1,5 @@ from django.db import models +from tinymce.models import HTMLField # Create your models here. @@ -8,7 +9,7 @@ class Setting(models.Model): return 'Setting {0} - {1} ({2})'.format(self.name, self.language, self.id) name = models.CharField(max_length=100) language = models.CharField(max_length=5) - string = models.TextField() + string = HTMLField() class File(models.Model): diff --git a/app/settings_db.py b/app/settings_db.py index dd5574b..334a91e 100644 --- a/app/settings_db.py +++ b/app/settings_db.py @@ -1,5 +1,4 @@ -from django.core.exceptions import ObjectDoesNotExist -from app.models import Setting +from .models import Setting from django.conf import settings diff --git a/app/views.py b/app/views.py index 964a4f5..5865280 100644 --- a/app/views.py +++ b/app/views.py @@ -1,9 +1,9 @@ from django.shortcuts import render, get_object_or_404, redirect from django.utils.translation import gettext as _ from django.conf import settings -from app.settings_db import get_setting +from .settings_db import get_setting from django.utils import translation -from app.models import File +from .models import File from django.http import HttpResponseBadRequest diff --git a/noniko/settings.py b/noniko/settings.py index 1b3c785..4eb1f77 100644 --- a/noniko/settings.py +++ b/noniko/settings.py @@ -31,6 +31,7 @@ ALLOWED_HOSTS = [] # Application definition INSTALLED_APPS = [ + 'tinymce', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', @@ -136,6 +137,16 @@ MEDIA_ROOT = os.path.join(BASE_DIR, "media") APP_NAME = 'NoNiko' +# TinyMCE Options +TINYMCE_DEFAULT_CONFIG = { + 'plugins': "table,spellchecker,paste,searchreplace", + 'theme': "advanced", + 'cleanup_on_startup': True, + 'custom_undo_redo_levels': 10, +} +TINYMCE_SPELLCHECKER = True + + # Try to load local setting file try: from local_settings import * diff --git a/noniko/urls.py b/noniko/urls.py index 16ca860..ad62d10 100644 --- a/noniko/urls.py +++ b/noniko/urls.py @@ -14,7 +14,7 @@ Including another URLconf 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) """ from django.contrib import admin -from django.urls import path +from django.urls import path, include import app.views from django.conf import settings from django.conf.urls.static import static @@ -22,5 +22,6 @@ from django.conf.urls.static import static urlpatterns = [ path('', app.views.home, name='home'), path('get_file', app.views.get_file, name='get_file'), + path('tinymce/', include('tinymce.urls')), path('admin/', admin.site.urls), ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) # Warning! This is not suitable for production. diff --git a/requirements.txt b/requirements.txt index bebe967..5d6e571 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1 +1,2 @@ django >=2, <3 +django-tinymce diff --git a/templates/layout.html b/templates/layout.html index 1ebd97a..b5ee130 100644 --- a/templates/layout.html +++ b/templates/layout.html @@ -4,6 +4,7 @@ + @@ -15,15 +16,15 @@ - - - + + +
{{ app_name }}HomeDownloadsAbout{% trans "Home" %}{% trans "Downloads" %}{% trans "About" %}
{% block body %} {% endblock %}
-

Copyright {{ app_name }} developers - {% now "Y" %}

+

{% blocktrans %}Copyright {{ app_name }} developers {% endblocktrans %} - {% now "Y" %}

{% block scripts %} {% endblock %}