X-Git-Url: https://git.openstreetmap.org./osqa.git/blobdiff_plain/c926c7562cc325f960f610630225fb85d37c9179..202b558604135c4c52b3e80b84c3bb1493f6498a:/forum/views/admin.py diff --git a/forum/views/admin.py b/forum/views/admin.py index 696bf66..6dffa51 100644 --- a/forum/views/admin.py +++ b/forum/views/admin.py @@ -33,7 +33,7 @@ def super_user_required(fn): def staff_user_required(fn): def wrapper(request, *args, **kwargs): - if request.user.is_authenticated() and request.user.is_staff: + if request.user.is_authenticated() and (request.user.is_staff or request.user.is_superuser): return fn(request, *args, **kwargs) else: return HttpResponseUnauthorized(request) @@ -54,7 +54,7 @@ def admin_page_wrapper(fn, request, *args, **kwargs): 'form', 'moderation', 'css', 'headandfoot', 'head', 'view', 'urls')] , lambda s1, s2: s1.weight - s2.weight) - context['tools'] = TOOLS + context['tools'] = [(name, fn.label) for name, fn in TOOLS.items()] unsaved = request.session.get('previewing_settings', {}) context['unsaved'] = set([getattr(settings, s).set.name for s in unsaved.keys() if hasattr(settings, s)]) @@ -401,6 +401,12 @@ def edit_page(request, id=None): 'published': published }) +@admin_page +def delete_page(request, id=None): + page = get_object_or_404(Page, id=id) + page.delete() + return HttpResponseRedirect(reverse('admin_static_pages')) + @admin_tools_page(_('createuser'), _("Create new user")) def create_user(request): if request.POST: