"""passbook core error views""" from django.http.response import (HttpResponseBadRequest, HttpResponseForbidden, HttpResponseNotFound, HttpResponseServerError) from django.template.response import TemplateResponse from django.views.generic import TemplateView class BadRequestTemplateResponse(TemplateResponse, HttpResponseBadRequest): """Combine Template response with Http Code 400""" class ForbiddenTemplateResponse(TemplateResponse, HttpResponseForbidden): """Combine Template response with Http Code 403""" class NotFoundTemplateResponse(TemplateResponse, HttpResponseNotFound): """Combine Template response with Http Code 404""" class ServerErrorTemplateResponse(TemplateResponse, HttpResponseServerError): """Combine Template response with Http Code 500""" class BadRequestView(TemplateView): """Show Bad Request message""" response_class = BadRequestTemplateResponse template_name = 'error/400.html' extra_context = { 'is_login': True } class ForbiddenView(TemplateView): """Show Forbidden message""" response_class = ForbiddenTemplateResponse template_name = 'error/403.html' extra_context = { 'is_login': True } class NotFoundView(TemplateView): """Show Not Found message""" response_class = NotFoundTemplateResponse template_name = 'error/404.html' extra_context = { 'is_login': True } class ServerErrorView(TemplateView): """Show Server Error message""" response_class = ServerErrorTemplateResponse template_name = 'error/500.html' extra_context = { 'is_login': True } # pylint: disable=useless-super-delegation def dispatch(self, *args, **kwargs): """Little wrapper so django accepts this function""" return super().dispatch(*args, **kwargs)