import random 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 ..text.models import Text context = {} context['texts'] = Text.objects.filter(public=True, listed=True).order_by('title') return render(request, 'index.html', context) def page(request, slug=''): context = {} if slug == "": return index(request) elif 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 text(request, slug) def about(request): context = {} context['pandora_url'] = settings.DEFAULT_PANDORA_API.replace('/api/', '') return render(request, 'about.html', context) def texts(request): context = {} all_texts = models.Text.objects.filter(public=True, listed=True).order_by('position', 'created') context['texts'] = all_texts.filter() 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) context['pandora_url'] = settings.DEFAULT_PANDORA_API.replace('/api/', '') return render(request, 'text.html', context)