from django.views.generic import View
from django.shortcuts import render

from rules.contrib.views import PermissionRequiredMixin

from .models.invoice import Invoice


class GetInvoicePDF(PermissionRequiredMixin, View):

    permission_required = "tezor.can_print_invoice"

    def get(self, request, *args, **kwargs):
        context = {}
        invoice = Invoice.objects.get(id=self.kwargs["pk"])
        context["invoice"] = invoice

        return render(request, invoice.group.template_name, context=context)