from django.shortcuts import render from django.http import HttpResponse from django.http import HttpResponseNotFound from .models import YearData from .models import MonthData from .models import CalendarData from .models import Event def day_page(request, year: int, month: int, day: int): return HttpResponse(f'{year}.{month}.{day}') def year_page(request, year: int): try: year_data = YearData.objects.get(number=year) except YearData.DoesNotExist: return HttpResponseNotFound('

404 Not Found

') month_data = MonthData.objects.all() calendar_data = CalendarData.objects.first() events = Event.objects.all() params = { 'calendar_data': calendar_data, 'year_data': year_data, 'month_data': month_data, 'month_days': tuple(i+1 for i in range(30)), 'events': events, } return render(request, 'faerun_calendar/index.html', params) def index(request): calendar_data = CalendarData.objects.first() try: current_year = getattr(getattr(CalendarData.objects.first(), 'current_year'), 'number') except AttributeError: current_year = 0 return year_page(request, current_year)