feat(members/excursion): multi-page tables in all excursion pdfs

pull/133/head
mariusrklein 10 months ago
parent 55299321b2
commit 894b89f1cf

@ -364,6 +364,14 @@ class Member(Person):
return "---"
else:
return "{0}, {1}".format(self.street, self.place)
@property
def address_multiline(self):
"""Returning the whole address"""
if not self.street and not self.town and not self.plz:
return "---"
else:
return "{0},\\linebreak[1] {1}".format(self.street, self.place)
def good_conduct_certificate_valid(self):
"""Returns if a good conduct certificate is still valid, depending on the last presentation."""

@ -14,7 +14,6 @@
\usepackage{array}
\usepackage{tabularx}
\usepackage{ltablex}
\usepackage{longtable}
\newcommand{\picpos}[4]{
\begin{textblock*}{#1}(#2, #3)
@ -35,7 +34,9 @@
\renewcommand{\arraystretch}{1.5}
\newcolumntype{L}{>{\hspace{0pt}}X}
\newcolumntype{L}{>{\hspace{0pt}\raggedright\arraybackslash}X}
\newcolumntype{S}{>{\raggedright\arraybackslash\hsize=0.7\hsize}X}
\newcommand{\tickedbox}{
\makebox[0pt][l]{$\square$}\raisebox{.15ex}{\hspace{0.1em}$\checkmark$}
}
@ -81,24 +82,26 @@
\end{tabular}
\end{table}
\begin{longtable}{lp{3.5cm}p{4cm}p{3cm}p{3.8cm}}
\hline
\# & \textbf{Name} & \textbf{Anschrift} & \textbf{Telefon} & \textbf{Notfallkontakte} \\
\hline
\endhead
\hline
\endfoot
{% for m in memberlist.membersonlist.all %}
{{ forloop.counter }} &
{{ m.member.name|esc_all }} &
{{ m.member.address|esc_all }} &
{{ m.member.contact_phone_number|esc_all }} &
{% for c in m.member.emergencycontact_set.all %}
{{ c.name }} \newline
Tel.: {{ c.phone_number }}
{% endfor %} \\
{% endfor %}
\end{longtable}
\begin{tabularx}{1\linewidth}{lSLSL}
\toprule
\# & \textbf{Name} & \textbf{Anschrift} & \textbf{Telefon} & \textbf{Notfallkontakte} \\
\midrule
\endhead
\bottomrule
\endfoot
{% for m in memberlist.membersonlist.all %}
{{ forloop.counter }} &
{{ m.member.name|esc_all }} &
{{ m.member.address_multiline|esc_all }} &
{{ m.member.contact_phone_number|esc_all }} &
{% for c in m.member.emergencycontact_set.all %}
{{ c.name|esc_all }} \newline
Tel.: {{ c.phone_number|esc_all }}
{% endfor %} \\
{% endfor %}
\end{tabularx}
\vspace{1cm}

@ -13,10 +13,11 @@
\usepackage[colorlinks]{hyperref}
\usepackage{float}
\usepackage[margin=1cm]{geometry}
\usepackage{ltablex}
\renewcommand{\arraystretch}{1.5}
\newcolumntype{Y}{>{\RaggedRight\arraybackslash}X}
\newcolumntype{Y}{>{\RaggedRight\arraybackslash}p{0.4\linewidth}}
\begin{document}
% HEADLINE
@ -35,17 +36,31 @@
\end{tabular}
\end{table}
\begin{table}[H]
\begin{tabularx}{\textwidth}{@{} l l l Y @{}}
\begin{tabularx}{1\linewidth}{ l l l Y}
\toprule
& \textbf{Name} & \textbf{Fähigkeiten (max. 100)} & \textbf{Kommentare} \\
\# & \textbf{Name} & \textbf{Fähigkeiten (max. 100)} & \textbf{Kommentare} \\
\midrule
{% for p in people %}
{{ forloop.counter }} & {{ p.name|esc_all }} & {{ p.qualities|esc_all }} & {{ p.comments|esc_all }} \\
{% endfor %}
{% for p in people %}
{{ forloop.counter }} & {{ p.name|esc_all }} & {{ p.qualities|esc_all }} & {{ p.comments|esc_all }} \\
{% endfor %}
{% for p in people %}
{{ forloop.counter }} & {{ p.name|esc_all }} & {{ p.qualities|esc_all }} & {{ p.comments|esc_all }} \\
{% endfor %}
{% for p in people %}
{{ forloop.counter }} & {{ p.name|esc_all }} & {{ p.qualities|esc_all }} & {{ p.comments|esc_all }} \\
{% endfor %}
{% for p in people %}
{{ forloop.counter }} & {{ p.name|esc_all }} & {{ p.qualities|esc_all }} & {{ p.comments|esc_all }} \\
{% endfor %}
{% for p in people %}
{{ forloop.counter }} & {{ p.name|esc_all }} & {{ p.qualities|esc_all }} & {{ p.comments|esc_all }} \\
{% endfor %}
\bottomrule
\end{tabularx}
\end{table}
\end{tabularx}
\noindent\large Fähigkeiten der Gruppe\\
\begin{table}[H]

@ -15,6 +15,7 @@
\usepackage{ragged2e}
\usepackage{tabularx}
\usepackage{titlesec}
\usepackage{ltablex}
\titleformat{\section}
{\Large\slshape}{\thesection\;}
@ -122,38 +123,38 @@
\section{Teilnehmer*innenliste}
\begin{table}[H]
\begin{tabularx}{1\linewidth}{@{\extracolsep{\fill}}llLl|c|c|c}
\begin{tabularx}{1\linewidth}{lp{0.23\linewidth}Xp{0.14\linewidth}|c|c|c}
\hline
\# & \textbf{Name} & \textbf{Anschrift} & \textbf{Geburtsdatum} & \textbf{m} & \textbf{w} & \textbf{d} \\
\hline
& \textbf{Name} & \textbf{Anschrift} & \textbf{Geburtsdatum} & \textbf{m} & \textbf{w} & \textbf{d} \\ \hline
%\midrule
\endhead
\hline
\endfoot
{% for m in memberlist.membersonlist.all %}
{{ forloop.counter }} & {{ m.member.name|esc_all }} & {{ m.member.address|esc_all }} & {{ m.member.birth_date_str|esc_all }}
& {% if m.member.gender == 0 %} x {% endif %}
& {% if m.member.gender == 1 %} x {% endif %}
& {% if m.member.gender == 2 %} x {% endif %} \\
{% endfor %}
%\bottomrule
\end{tabularx}
\end{table}
\end{tabularx}
{% if memberlist.statement %}
\section{Kosten}
\begin{table}[H]
\begin{tabularx}{1\linewidth}{@{}L r @{}}
\begin{tabularx}{1\linewidth}{@{\extracolsep{\fill}}Lr}
\toprule
\textbf{Beschreibung} & \textbf{Betrag} \\
\midrule
{% if memberlist.statement.total_allowance > 0 %}
Aufwandsentschädigung & {{ memberlist.statement.total_allowance }}\\
{% endif %}
{% for bill in memberlist.statement.grouped_bills %}
{{ bill.short_description|esc_all }} & {{ bill.amount }}\\
{% endfor %}
\bottomrule
Gesamt & {{ memberlist.statement.total_theoretic }}\\
\end{tabularx}
\end{table}
\end{tabularx}
{% endif %}

Loading…
Cancel
Save