diff --git a/appsettings/templates/appsettings.html b/appsettings/templates/appsettings.html
index c5008f5..8e843cb 100644
--- a/appsettings/templates/appsettings.html
+++ b/appsettings/templates/appsettings.html
@@ -11,6 +11,7 @@
{% include 'errors_block.html' %}
+ {% include 'messages_block.html' %}
@@ -51,7 +52,7 @@
{% endfor %}
- {% trans "After change please full refresh page with Ctrl + F5 "%}
+ {% trans "After change please full refresh page with 'Ctrl + F5' "%}
diff --git a/appsettings/views.py b/appsettings/views.py
index 13bdd58..8cc6e23 100644
--- a/appsettings/views.py
+++ b/appsettings/views.py
@@ -1,13 +1,18 @@
+import sass
+import os
+
from django.shortcuts import render
from django.http import HttpResponseRedirect
from django.urls import reverse
from django.utils.translation import ugettext_lazy as _
from django.contrib.auth.decorators import login_required
+from django.contrib import messages
from django.conf import settings
-from appsettings.models import AppSettings
-import sass
-import os
+from appsettings.models import AppSettings
+from logs.views import addlogmsg
+
+
@login_required
def appsettings(request):
@@ -30,28 +35,54 @@ def appsettings(request):
scss_var = f"@import '{sass_dir.value}/wvc-theme/{theme}/variables';"
scss_bootswatch = f"@import '{sass_dir.value}/wvc-theme/{theme}/bootswatch';"
scss_boot = f"@import '{sass_dir.value}/bootstrap-overrides.scss';"
-
- with open(sass_dir.value + "/wvc-main.scss", "w") as main:
- main.write(scss_var + "\n" + scss_boot + "\n" + scss_bootswatch)
+
+ try:
+ with open(sass_dir.value + "/wvc-main.scss", "w") as main:
+ main.write(scss_var + "\n" + scss_boot + "\n" + scss_bootswatch)
+
+ css_compressed = sass.compile(string=scss_var + "\n"+ scss_boot + "\n" + scss_bootswatch, output_style='compressed')
+ with open("static/" + "css/wvc-main.min.css", "w") as css:
+ css.write(css_compressed)
+
+ bootstrap_theme.value = theme
+ bootstrap_theme.save()
+
+ msg = _(f"Theme changed. Now: {theme}")
+ messages.success(request, msg)
+ except Exception as err:
+ msg = err
+ error_messages.append(msg)
- css_compressed = sass.compile(string=scss_var + "\n"+ scss_boot + "\n" + scss_bootswatch, output_style='compressed')
- with open("static/" + "css/wvc-main.min.css", "w") as css:
- css.write(css_compressed)
-
- bootstrap_theme.value = theme
- bootstrap_theme.save()
+ addlogmsg(request.user.username, "", msg)
return HttpResponseRedirect(request.get_full_path())
if 'SASS_DIR' in request.POST:
- sass_dir.value = request.POST.get("SASS_DIR", "")
- sass_dir.save()
+ try:
+ sass_dir.value = request.POST.get("SASS_DIR", "")
+ sass_dir.save()
+
+ msg = _(f"SASS directory path is changed. Now: {sass_dir.value}")
+ messages.success(request, msg)
+ except Exception as err:
+ msg = err
+ error_messages.append(msg)
+
+ addlogmsg(request.user.username, "", msg)
return HttpResponseRedirect(request.get_full_path())
if 'VIEW_INSTANCE_DETAIL_BOTTOM_BAR' in request.POST:
- show_inst_bottom_bar.value = request.POST.get("VIEW_INSTANCE_DETAIL_BOTTOM_BAR", "")
- show_inst_bottom_bar.save()
- return HttpResponseRedirect(request.get_full_path())
+ try:
+ show_inst_bottom_bar.value = request.POST.get("VIEW_INSTANCE_DETAIL_BOTTOM_BAR", "")
+ show_inst_bottom_bar.save()
+ msg = _(f"Show bottom bar setting is changed. Now: {show_inst_bottom_bar.value}")
+ messages.success(request, msg)
+ except Exception as err:
+ msg = err
+ error_messages.append(msg)
+
+ addlogmsg(request.user.username, "", msg)
+ return HttpResponseRedirect(request.get_full_path())
return render(request, 'appsettings.html', locals())