##// END OF EJS Templates
Strip multiple newlines to one in the post before parsing with bbcode
Strip multiple newlines to one in the post before parsing with bbcode

File last commit:

r733:f6ed285e 2.0-dev
r754:6cc0010d default
Show More
settings.py
38 lines | 1.2 KiB | text/x-python | PythonLexer
from django.db import transaction
from django.shortcuts import render, redirect
from boards.abstracts.settingsmanager import get_settings_manager
from boards.views.base import BaseBoardView, CONTEXT_FORM
from boards.forms import SettingsForm, PlainErrorList
CONTEXT_HIDDEN_TAGS = 'hidden_tags'
class SettingsView(BaseBoardView):
def get(self, request):
context = self.get_context_data(request=request)
settings_manager = get_settings_manager(request)
selected_theme = settings_manager.get_theme()
form = SettingsForm(initial={'theme': selected_theme},
error_class=PlainErrorList)
context[CONTEXT_FORM] = form
context[CONTEXT_HIDDEN_TAGS] = settings_manager.get_hidden_tags()
return render(request, 'boards/settings.html', context)
def post(self, request):
settings_manager = get_settings_manager(request)
with transaction.atomic():
form = SettingsForm(request.POST, error_class=PlainErrorList)
if form.is_valid():
selected_theme = form.cleaned_data['theme']
settings_manager.set_theme(selected_theme)
return redirect('settings')