from django.shortcuts import render, redirect, get_object_or_404 from django.conf import settings from . import models def fallback(request, slug=''): if not slug: return redirect('index') context = {} return render(request, 'fallback.html', context) def index(request): from ..video.models import Film from ..text.models import Text context = {} context['films'] = Film.objects.filter(public=True).count() context['texts'] = Text.objects.filter(public=True).count() return render(request, 'index.html', context) #def index_alt(request): #context = {} #return render(request, 'index-alt.html', context) def page(request, slug=''): context = {} if request.user.is_staff: page = models.Page.objects.filter(slug=slug).first() else: page = models.Page.objects.filter(slug=slug, public=True).first() if page: context['page'] = page return render(request, 'page.html', context) else: return render(request, 'fallback.html', context) def about(request): context = {} return render(request, 'about.html', context) def texts(request): context = {} all_texts = models.Text.objects.filter(public=True).order_by('position', 'created') context['en_texts'] = all_texts.filter(language='en') context['zh_texts'] = all_texts.filter(language='zh') return render(request, 'texts.html', context) def text(request, slug): context = {} if request.user.is_staff: context['text'] = get_object_or_404(models.Text, slug=slug) else: context['text'] = get_object_or_404(models.Text, slug=slug, public=True) return render(request, 'text.html', context)