forked from ungleich-public/dynamicweb
78 lines
2.4 KiB
Python
78 lines
2.4 KiB
Python
# Create your views here.
|
|
from django.http import Http404
|
|
from django.shortcuts import render
|
|
from django.utils.translation import gettext_lazy as _
|
|
from django.views.decorators.csrf import csrf_exempt
|
|
from django.views.generic.base import TemplateView
|
|
|
|
from cms.test_utils.project.sampleapp.models import Category
|
|
from cms.utils.urlutils import admin_reverse
|
|
|
|
|
|
@csrf_exempt
|
|
def exempt_view(request, **kw):
|
|
context = kw
|
|
request.current_app = request.resolver_match.namespace
|
|
context['app'] = request.current_app
|
|
return render(request, "sampleapp/home.html", context)
|
|
|
|
|
|
def sample_view(request, **kw):
|
|
context = kw
|
|
request.current_app = request.resolver_match.namespace
|
|
context['app'] = request.current_app
|
|
return render(request, "sampleapp/home.html", context)
|
|
|
|
|
|
def category_view(request, id):
|
|
cat = Category.objects.get(pk=id)
|
|
if request.user.is_staff:
|
|
category_menu = request.toolbar.get_or_create_menu('category', _('Category'))
|
|
change_url = admin_reverse('sampleapp_category_change', args=(cat.pk,))
|
|
category_menu.add_modal_item(_("Change Category"), url=change_url)
|
|
return render(request, 'sampleapp/category_view.html', {'category': cat})
|
|
|
|
|
|
def extra_view(request, **kw):
|
|
context = kw
|
|
request.current_app = request.resolver_match.namespace
|
|
context['app'] = request.current_app
|
|
return render(request, "sampleapp/extra.html", context)
|
|
|
|
|
|
def current_app(request):
|
|
context = {}
|
|
request.current_app = request.resolver_match.namespace
|
|
context['app'] = request.current_app
|
|
return render(request, "sampleapp/app.html", context)
|
|
|
|
|
|
def plain_view(request):
|
|
context = {'content': 'plain text'}
|
|
request.current_app = request.resolver_match.namespace
|
|
context['app'] = request.current_app
|
|
return render(request, "sampleapp/plain.html", context)
|
|
|
|
|
|
def notfound(request):
|
|
raise Http404
|
|
|
|
|
|
class ClassView:
|
|
def __call__(self, request, *args, **kwargs):
|
|
context = {'content': 'plain text'}
|
|
return render(request, "sampleapp/plain.html", context)
|
|
|
|
|
|
class ClassBasedView(TemplateView):
|
|
template_name = 'sampleapp/plain.html'
|
|
|
|
|
|
def parentapp_view(request, path):
|
|
context = {'content': 'parent app content'}
|
|
return render(request, "sampleapp/plain.html", context)
|
|
|
|
|
|
def childapp_view(request, path):
|
|
context = {'content': 'child app content'}
|
|
return render(request, "sampleapp/plain.html", context)
|