##// END OF EJS Templates
Do not cache the thread view because it cannot load new replies after browser is restarted.
Do not cache the thread view because it cannot load new replies after browser is restarted.

File last commit:

r733:f6ed285e 2.0-dev
r858:2bce3a47 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')