Verified Commit d0ef03e6 authored by Jakob Moser's avatar Jakob Moser
Browse files

Use new method to create certification from dict

parent f3e8ac40
Loading
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -5,7 +5,6 @@ from pdf_generator.commitment_certification.Certification import Certification

@dataclass(frozen=True)
class ColiCertification(Certification):

    @classmethod
    def get_template_name(cls, office_name: str, office_kind_name: str) -> str | None:
        match office_kind_name:
+8 −3
Original line number Diff line number Diff line
@@ -10,7 +10,7 @@ from babel import Locale
from gnupg import GPG
from utils.Registry import Registry

from coliverter.certifications.from_dict import from_dict as certification_from_dict
from coliverter.certifications.ColiCertification import ColiCertification
from coliverter.documents.Document import Document
from coliverter.documents.DocumentType import DocumentType
from coliverter.documents.transform.TransformError import TransformError
@@ -53,13 +53,18 @@ def _convert_single(
    # TODO Replace this with a more elegant way of checking if data is a request dictionary
    try:
        data_dict = json.loads(data)
        certification = certification_from_dict(data_dict)
        certification = ColiCertification.from_dict(data_dict)

        match output_format:
            case FileFormat.HTML:
                write(certification.html(Locale("de")), output_path)
            case FileFormat.PDF:
                write(certification.pdf(Locale("de"), key_id="fs-coli@cl.uni-heidelberg.de"), output_path)
                write(
                    certification.pdf(
                        Locale("de"), key_id="fs-coli@cl.uni-heidelberg.de"
                    ),
                    output_path,
                )
        return
    except JSONDecodeError:
        pass