Titivillus/quest/views.py

32 lines
993 B
Python

#!/usr/bin/env python3
"""
Quest and quest accessory views.
"""
from django.shortcuts import render
from django.http import HttpResponse
from .models import Quest, DiceRoll, PollOption, PollVote, PageTitle
def index(request):
"""
/quest page index. Possibly not needed.
"""
#return render(request, "Hello, world. You're at the quest index.", {})
return HttpResponse("Hello, world. You're at the quest index.")
def quest(request, quest_id, page_num=1):
"""
Arbituary quest page view.
"""
quest = Quest.objects.get(id=quest_id)
pages = PageTitle.objects.filter(quest=quest).order_by('page_num')
messages = quest.message_set.all()
posts = quest.post_set.all()
dice_rolls = DiceRoll.objects.filter(dicecall__post__quest=quest)
poll_options = PollOption.objects.filter(poll__post__quest=quest)
poll_votes = PollVote.objects.filter(option__poll__post__quest=quest)
ip_address = request.META['REMOTE_ADDR']
context = locals()
return render(request, 'quest/quest.html', context)