Private kb categories

This commit is contained in:
Timothy Hobbs
2020-01-27 17:37:59 +01:00
parent 0395f26d6c
commit ecbb91b861
9 changed files with 91 additions and 9 deletions

View File

@ -8,25 +8,28 @@ views/kb.py - Public-facing knowledgebase views. The knowledgebase is a
resolutions to common problems.
"""
from django.http import HttpResponseRedirect
from django.http import HttpResponseRedirect, Http404
from django.shortcuts import render, get_object_or_404
from django.views.decorators.clickjacking import xframe_options_exempt
from helpdesk import settings as helpdesk_settings
from helpdesk import user
from helpdesk.models import KBCategory, KBItem
def index(request):
category_list = KBCategory.objects.all()
huser = user.huser_from_request(request)
# TODO: It'd be great to have a list of most popular items here.
return render(request, 'helpdesk/kb_index.html', {
'kb_categories': category_list,
'kb_categories': huser.get_kb_categories(),
'helpdesk_settings': helpdesk_settings,
})
def category(request, slug, iframe=False):
category = get_object_or_404(KBCategory, slug__iexact=slug)
if not user.huser_from_request(request).can_access_kbcategory(category):
raise Http404
items = category.kbitem_set.all()
selected_item = request.GET.get('kbitem', None)
try: