From 24e9df83a135e1aa0a653fa9c9727384a7f3f9fb Mon Sep 17 00:00:00 2001
From: Nils Beyer <nilsb@fsmpi.rwth-aachen.de>
Date: Thu, 24 Mar 2022 15:11:45 +0100
Subject: [PATCH] Always show TOP in decision printout

---
 protoparser.py         | 14 +++++++-------
 templates/decision.tex |  2 +-
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/protoparser.py b/protoparser.py
index 45d55a4..70ad95e 100644
--- a/protoparser.py
+++ b/protoparser.py
@@ -52,7 +52,7 @@ class Element:
     Generic (abstract) base element. Should never really exist.
     Template for what an element class should contain.
     """
-    def render(self, render_type, show_private, level=None, protocol=None):
+    def render(self, render_type, show_private, level=None, protocol=None, decision_render=False):
         """
         Renders the element to TeX.
         Returns:
@@ -122,7 +122,7 @@ class Content(Element):
         self.children = children
         self.linenumber = linenumber
 
-    def render(self, render_type, show_private, level=None, protocol=None):
+    def render(self, render_type, show_private, level=None, protocol=None, decision_render=False):
         return "".join(map(lambda e: e.render(
             render_type, show_private, level=level, protocol=protocol),
             self.children))
@@ -225,7 +225,7 @@ class Tag:
         self.linenumber = linenumber
         self.fork = fork
 
-    def render(self, render_type, show_private, level=None, protocol=None):
+    def render(self, render_type, show_private, level=None, protocol=None, decision_render=False):
         if render_type == RenderType.latex:
             if self.name == "url":
                 return r"\url{{{}}}".format(self.values[0])
@@ -351,7 +351,7 @@ class Empty(Element):
     def __init__(self, linenumber):
         linenumber = linenumber
 
-    def render(self, render_type, show_private, level=None, protocol=None):
+    def render(self, render_type, show_private, level=None, protocol=None, decision_render=False):
         return ""
 
     def dump(self, level=None):
@@ -373,7 +373,7 @@ class Remark(Element):
         self.value = value
         self.linenumber = linenumber
 
-    def render(self, render_type, show_private, level=None, protocol=None):
+    def render(self, render_type, show_private, level=None, protocol=None, decision_render=False):
         if render_type == RenderType.latex or render_type == RenderType.extra:
             return r"\textbf{{{}}}: {}".format(self.name, self.value)
         elif render_type == RenderType.wikitext:
@@ -441,12 +441,12 @@ class Fork(Element):
         stripped_name = name.replace(":", "").strip()
         return stripped_name in config.PRIVATE_KEYWORDS
 
-    def render(self, render_type, show_private, level, protocol=None):
+    def render(self, render_type, show_private, level=None, protocol=None, decision_render=False):
         name_line = self.name if self.name is not None else ""
         if level == 0 and self.name == "Todos" and not show_private:
             return ""
         if render_type == RenderType.latex or render_type == RenderType.extra:
-            if render_type == RenderType.latex and self.is_extra:
+            if render_type == RenderType.latex and self.is_extra and not decision_render:
                 return r"\textit{[Dieser Tagesordnungspunkt wird in einem eigenem PDF exportiert.]}"
 
             begin_line = r"\begin{itemize}"
diff --git a/templates/decision.tex b/templates/decision.tex
index ac6385a..f4314b5 100644
--- a/templates/decision.tex
+++ b/templates/decision.tex
@@ -44,7 +44,7 @@
 
 \setcounter{section}{\VAR{top.get_top_number() - 1}}
 \TOP{\VAR{top.name|escape_tex}}
-\VAR{top.render(render_type=render_type, level=0, show_private=show_private, protocol=protocol)}
+\VAR{top.render(render_type=render_type, level=0, show_private=show_private, protocol=protocol, decision_render=True)}
 
 \vspace*{\fill}
 \par\noindent\makebox[2.5in]{\hrulefill} \hfill\makebox[2.5in]{\hrulefill}
-- 
GitLab