added protokoll template and class file

This commit is contained in:
cirdeirf 2018-05-14 12:37:44 +02:00
parent 50c26eeda5
commit 05e7870d3b
4 changed files with 283 additions and 0 deletions

BIN
protokoll/fsrlogo.pdf Normal file

Binary file not shown.

186
protokoll/fsrprotokoll.cls Normal file
View file

@ -0,0 +1,186 @@
\ProvidesClass{fsrprotokoll}[2018/03/05 Klasse fuer FSR Protokolle v0.2]
\LoadClass{scrartcl}
\RequirePackage[utf8]{inputenc}
\RequirePackage[ngerman]{babel}
\RequirePackage[T1]{fontenc}
\RequirePackage[a4paper,top=3cm,left=3cm,right=3cm,bottom=3cm]{geometry}
\RequirePackage{eurosym}
\RequirePackage{graphicx}
\RequirePackage{xifthen}
\RequirePackage{titlesec}
\RequirePackage{expl3}
\RequirePackage{xparse}
\RequirePackage{tabularx}
\RequirePackage[hidelinks]{hyperref}
% https://github.com/AndyClifton/AccessibleMetaClass/blob/master/accessibilityMeta.sty
\RequirePackage[tagged]{accessibilityMeta}
\parindent 0pt
\parskip 1ex
\deffootnote[1em]{1em}{1em}{\textsuperscript{\thefootnotemark}}
\titleformat{\section}
{\large\rmfamily\bfseries}
{\thesection.}{0.5em}{}
\titlespacing{\section}
{0pt}
{*1}
{*0.25}
\titleformat{\subsection}
{\normalfont\rmfamily\bfseries}
{}{0em}{}
\titlespacing{\subsection}
{0pt}
{*0.5}
{-5pt}
\makeatletter
\newcommand*{\insertheaderrule}{\rlap{\rule[-.5\normalbaselineskip]{\textwidth}{.4pt}}}
\def\ps@fsrProtokoll{%
\def\@oddhead{\insertheaderrule%
Protokoll zur FSR--Sitzung vom \the\date \hfill Fachschaftsrat Informatik%
}
}
\def\ps@fsrProtokollTitlePage{%
\def\@oddhead{\insertheaderrule%
\includegraphics[height=4em]{fsrlogo}\hfill%
\includegraphics[height=4em]{tudlogo}%
}
}
\makeatother
\pagestyle{fsrProtokoll}
% counter for lists
\ExplSyntaxOn
\NewDocumentCommand \countItems { m } {
\clist_count:N #1
}
\NewDocumentCommand \countInlineItems { m } {
\clist_count:n {#1}
}
\ExplSyntaxOff
\newcommand{\quorate} {
Die Sitzungsleitung eröffnet die Sitzung.
\newcount\quorateThreshold
\quorateThreshold=\the\numexpr (17 - \countItems{\resting})
\divide\quorateThreshold by 2
\ifthenelse{\the\attendeesNumber > \the\quorateThreshold\relax} {%
Der FSR ist beschlussfähig.%
} {%
Der FSR ist nicht beschlussfähig.%
}
}
% titlepage
\renewcommand*{\maketitle}{%
\begin{titlepage}%
\thispagestyle{fsrProtokollTitlePage}
\begin{center}%
\vspace*{1cm}%
\textbf{\Large Protokoll zur FSR--Sitzung vom \the\date}%
Sitzungsleitung: \the\chairperson \,| %
Protokoll: \the\clerks%
Sitzungsbeginn: \the\meetingStart \,| Sitzungsende: \the\meetingEnd%
\end{center}%
\textbf{Anwesende:} \the\attendees \, (\the\attendeesNumber \, von 17)%
\textbf{Entschuldigt Fehlende:} \ifthenelse{\equal{\the\excused}{}} { $\emptyset$ } { \the\excused }%
\textbf{Unentschuldigt Fehlende:} \ifthenelse{\equal{\the\unexcused}{}} { $\emptyset$ } { \the\unexcused }%
\textbf{Ruhende:} \ifthenelse{\equal{\the\resting}{}} { $\emptyset$ } { \the\resting }%
\textbf{Gäste:} \ifthenelse{\equal{\the\guests}{}} { $\emptyset$ } { \the\guests }%
\vspace{\baselineskip}
\quorate % automatische Feststellung der Beschlussfähigkeit
\end{titlepage}%
\hypersetup{%
pdfauthor=Fachschaftsrat Informatik,
pdftitle=Protokoll zur FSR-Sitzung vom \the\date
}
}
\let\endtitlepage\relax
% vote environment
\newsavebox{\mybox}
\newcounter{x} % counter to add up two arguments
\newenvironment{vote} {%
\begin{lrbox}{\mybox}\begin{minipage}{.985\textwidth}
\newcommand*{\voteNumber}[1]{\textbf{\the\year\,/\,##1:}\\}%
\newcommand*{\voteMoney}[1]{%
\ifthenelse{\equal{##1}{}} {\textbf{Antrag}} {\textbf{Finanzantrag}}%
}
\newcommand*{\voteText}[1]{##1\vspace{\baselineskip}\\}%
\newcommand*{\voteReason}[1]{\textbf{Begründung: }##1\vspace{\baselineskip}\\}%
\newcommand*{\voting}[3]{\textbf{Abstimmung: }%
\ifthenelse{\equal{##1}{} \AND \equal{##2}{} \AND \equal{##3}{}} {%
Der Antrag wurde ohne Gegenrede angenommen.%
} {%
Dafür: ##1, Dagegen: ##2, Enthaltungen: ##3%
\\%
\setcounter{x}{##2+##3}%
\ifnum##1>\arabic{x}%
{Der Antrag wurde angenommen.}%
\else%
{Der Antrag wurde abgelehnt.}%
\fi%
}%
}%
\newcommand*{\voteComment}[1]{##1}%
} {
\end{minipage}\end{lrbox}\fbox{\usebox{\mybox}}
}
% poll environment
\newenvironment{poll} {%
\begin{lrbox}{\mybox}\begin{minipage}{.985\textwidth}
\newcommand*{\pollText}[1]{%
\textbf{Standpunkt: } ##1\vspace{\baselineskip}\\%
}%
\newcommand*{\voting}[2]{%
\textbf{Meinungsbild: } Dafür: ##2, Dagegen: ##2%
}%
} {
\end{minipage}\end{lrbox}\fbox{\usebox{\mybox}}
}
\newcommand*{\away}[1] {
\ifthenelse{\the\numexpr \countInlineItems{#1} > 1} {%
\textit{[#1 verlassen die Sitzung]}%
} {%
\textit{[#1 verlässt die Sitzung]}%
}
}
\newcommand*{\appear}[1] {
\ifthenelse{\the\numexpr \countInlineItems{#1} > 1} {%
\textit{[#1 erscheinen zur Sitzung]}%
} {%
\textit{[#1 erscheint zur Sitzung]}%
}
}
\newcommand*{\signature} {
\vfill
\noindent\rule{6.5cm}{0.3pt} \hfill \noindent\rule{6.5cm}{0.3pt}
\noindent\makebox[6.5cm][l]{Sitzungsleitung} \hfill \noindent\makebox[6.5cm][l]{Protokoll}
}
% tokens
\newtoks\date
\newtoks\attendeesNumber
\newtoks\chairperson
\newtoks\clerks
\newtoks\meetingStart
\newtoks\meetingEnd
\newtoks\attendees
\newtoks\excused
\newtoks\unexcused
\newtoks\resting
\newtoks\guests
\endinput

97
protokoll/protokoll.tex Normal file
View file

@ -0,0 +1,97 @@
%dontbuild
\documentclass{fsrprotokoll}
% Das %dontbuild muss _allein_ auf der ersten Zeile stehen.
% Sobald es entfernt ist, wird ein Protokoll mit dem Namen
% "Protokoll DD.MM.YYYY" automatisch gebaut und auf den FTP
% geschoben. Das Protokoll mit dem neusten Datum wird
% außerdem unter latest verlinkt.
\begin{document}
%%!sitzungsleitung,protokoll: Das Protokoll ist fertig und kann unterschrieben werden! :)
\date{} % DD.MM.YYYY
\attendeesNumber{} % Anzahl anwesender Mitglieder
\chairperson{}
\clerks{}
\meetingStart{} % HH:MM
\meetingEnd{} % HH:MM
% Liste anwesender Mitglieder
\attendees{}
\excused{}
\unexcused{}
% Liste Ruhender
\resting{}
% Liste anwesender Gäste
\guests{Matthias Stuhlbein}
\maketitle
\section{Protokollkontrolle und Überprüfung gefasster Beschlüsse}
% Es gibt nichts zu beanstanden, das Protokoll vom XX.YY.ZZZZ wird bestätigt.
% \section{Gäste}
\section{Bericht Struktur}
\section{Bericht über die Finanzen}
% \section{Berichte aus den Gremien}
% \subsection{Studierendenrat (StuRa)}
% \subsection{Fakultätsrat (FR)}
\section{Stand der Veranstaltungen}
\section{Weitere anstehende Termine}
\section{Öffentlichkeitsarbeit}
\section{Sonstiges}
\signature
% % Die Reihenfolge muss beibehalten werden.
% \begin{vote}
% % \voteMoney{} % {Betrag (ohne \EUR)} nur bei Finanzantrag
% \voteNumber{} % {#Antrag}
% \voteText{}
% \voteReason{}
% \voting{}{}{} % {#Dafür}{#Dagegen}{#Enth.}, leer lassen für 'ohne Gegenrede angenommen'
% \voteComment{} % optional
% \end{vote}
% \begin{poll}
% \pollText{}
% \voting{}{} % {#Dafür}{#Dagegen}
% \end{poll}
% \appear{eintreffende Person(en)}
% \away{Sitzung verlassende Person(en)}
% \EUR{#Betrag} <- Bitte ausschließlich so Geldbeträge in Euro angeben
% KEIN \emph, \textbf, o.ä. in (sub)section titles! (breaks accessibilityMeta package)
% Bitte vorzugsweise \section{} und \subsection{} benutzen. Außerdem bitte den
% Gebrauch von line breaks (\\) einschränken und sollte tatsächlich Bedarf nach
% mehr Struktur bestehen, vorzugsweise eine leere Zeile bzw. \par verwenden.
% Sollten beim Bauen Fehler auftreten, wird eine Mail an strukturer@ifsr.de
% geschickt. Bei erfolgreichem Build wird das Protokoll direkt an den
% Simplexdrucker gesendet.
% Zeilen die mit %%!<usernamelist>: Todotext beginnen enthalten Todos eine
% Beispielzeile sieht folgendermassen aus:
% %!marius,frank,strukturer:Organisation von Event nicht vergessen
% (Leerzeichen zwischen den beiden % darf nicht drin sein!!)
% TODOs werden automatisch beim Bauen an die aufgezählten namen@ifsr.de
% versendet
% Bei einem geheimen Sitzungsteil bitte Pad 1340 (Protokollvorlage geheimer
% Sitzungsteil) beachten bzw. verwenden.
\end{document}

BIN
protokoll/tudlogo.pdf Normal file

Binary file not shown.