diff --git a/parser.py b/parser.py index 9da40c77b66f8458f5869b1889170f513963c447..0e9bda496dd6873910c2ec53d84ac71989a44a0e 100644 --- a/parser.py +++ b/parser.py @@ -213,6 +213,11 @@ class Tag: if not show_private: return "" return self.todo.render_latex(current_protocol=protocol) + elif self.name == "beschluss": + result = r"\textbf{{Beschluss:}} {}".format(self.decision.content) + if self.decision.category is not None: + result = r"{} \textit{{({})}}".format(result, self.decision.category.name) + return result return r"\textbf{{{}:}} {}".format(escape_tex(self.name.capitalize()), escape_tex(";".join(self.values))) elif render_type == RenderType.plaintext: if self.name == "url": diff --git a/tasks.py b/tasks.py index 3a4dce3bbe6f8f2cdf5ec74ceab87c3625fe7f02..fd2323f952c59ae2e1a45dcd10fb73d406aab5b1 100644 --- a/tasks.py +++ b/tasks.py @@ -285,6 +285,7 @@ def parse_protocol_async_inner(protocol, encoded_kwargs): protocol.decisions.remove(decision) db.session.commit() decision_tags = [tag for tag in tags if tag.name == "beschluss"] + decisions_to_render = [] for decision_tag in decision_tags: if len(decision_tag.values) == 0: error = protocol.create_error("Parsing", "Empty decision found.", @@ -320,6 +321,9 @@ def parse_protocol_async_inner(protocol, encoded_kwargs): content=decision_content, category_id=decision_category_id) db.session.add(decision) db.session.commit() + decision_tag.decision = decision + decisions_to_render.append((decision, decision_tag)) + for decision, decision_tag in decisions_to_render: decision_top = decision_tag.fork.get_top() decision_content = texenv.get_template("decision.tex").render( render_type=RenderType.latex, decision=decision, diff --git a/templates/protocol.tex b/templates/protocol.tex index 1c757ba97e7b69544eaf36bd9c12f9ea3b1c4beb..41a759ec41cbccf499b1dda103cb415d1773f6fc 100644 --- a/templates/protocol.tex +++ b/templates/protocol.tex @@ -38,7 +38,7 @@ \begin{itemize} \ENV{if protocol.decisions|length > 0} \ENV{for decision in protocol.decisions} - \item \VAR{decision.content|escape_tex} + \item \VAR{decision.content|escape_tex}\ENV{if decision.category is not none and show_private} \textit{(\VAR{decision.category.name})}\ENV{endif} \ENV{endfor} \ENV{else} \item Keine Beschlüsse