From f7dc1a863a195756eb9ad148478f8b2bd42dbebe Mon Sep 17 00:00:00 2001 From: ks129 <45097959+ks129@users.noreply.github.com> Date: Wed, 28 Oct 2020 20:40:27 +0200 Subject: Port View to TemplateView for events page view --- pydis_site/apps/events/views/page.py | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'pydis_site/apps/events') diff --git a/pydis_site/apps/events/views/page.py b/pydis_site/apps/events/views/page.py index 8a99ce13..1e3532f9 100644 --- a/pydis_site/apps/events/views/page.py +++ b/pydis_site/apps/events/views/page.py @@ -1,27 +1,27 @@ from pathlib import Path +from typing import List from django.conf import settings -from django.core.handlers.wsgi import WSGIRequest -from django.http import Http404, HttpResponse -from django.template import Context, Template -from django.views import View +from django.http import Http404 +from django.views.generic import TemplateView PAGES_PATH = Path(settings.BASE_DIR, "pydis_site", "apps", "events", "pages") -class PageView(View): +class PageView(TemplateView): """Handles event pages showing.""" - def get(self, request: WSGIRequest, path: str) -> HttpResponse: - """Render event page rendering based on path.""" - page_path = PAGES_PATH.joinpath(path) + def get_template_names(self) -> List[str]: + """Get specific template names""" + page_path = PAGES_PATH / self.kwargs['path'] if page_path.exists() and page_path.is_dir(): page_path = page_path.joinpath("_index.html") + self.kwargs['path'] = f"{self.kwargs['path']}/_index.html" else: - page_path = PAGES_PATH.joinpath(f"{path}.html") + page_path = PAGES_PATH.joinpath(f"{self.kwargs['path']}.html") + self.kwargs['path'] = f"{self.kwargs['path']}.html" if not page_path.exists(): raise Http404 - template = Template(page_path.read_text()) - return HttpResponse(template.render(Context())) + return [self.kwargs['path']] -- cgit v1.2.3