From 7d87b9bed420925e771c90f27c7a25db352b8161 Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Sat, 28 Oct 2017 22:35:47 +0000
Subject: hagenberg-thesis (28oct17)

git-svn-id: svn://tug.org/texlive/trunk@45629 c570f23f-e606-0410-a88d-b1316a301751
---
 .../tex/latex/hagenberg-thesis/hgbthesis.cls       | 614 +++++++++++++++++++++
 1 file changed, 614 insertions(+)
 create mode 100644 Master/texmf-dist/tex/latex/hagenberg-thesis/hgbthesis.cls

(limited to 'Master/texmf-dist/tex/latex/hagenberg-thesis/hgbthesis.cls')

diff --git a/Master/texmf-dist/tex/latex/hagenberg-thesis/hgbthesis.cls b/Master/texmf-dist/tex/latex/hagenberg-thesis/hgbthesis.cls
new file mode 100644
index 00000000000..fbe1a6b2998
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/hagenberg-thesis/hgbthesis.cls
@@ -0,0 +1,614 @@
+%% hgbthesis.cls
+%% LaTeX template for creating diploma theses, masters's theses, bachelor's theses and other term papers.
+%% This file is part of the Hagenberg Thesis package for creating bachelors's and masters's theses
+%% Author: Wilhelm Burger (wilhelm.burger@fh-hagenberg.at)
+%% GitHub: https://github.com/Digital-Media/HagenbergThesis
+%% File encoding: ASCII
+
+%% Package Information --------------------------------------------------------
+
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesClass{hgbthesis}[2017/10/28]
+
+\RequirePackage{xifthen}
+
+\RequirePackage{ifpdf}	% for checking PDF mode 
+\ifpdf{}% \typeout{hgbthesis: *** LaTeX in PDF mode ***}
+\else{\errmessage{hgbthesis: *** LaTeX NOT running in PDF mode ***}}
+\fi
+
+
+%% Commands for Title Pages (used in class options) ---------------------------
+
+\newcommand{\hgb@MainLanguage}{german}	% also referenced in hgb.sty
+\newcommand{\@mastertitlepages}{}
+\newcommand{\@diplomatitlepages}{}
+\newcommand{\@bachelortitlepages}{}
+\newcommand{\@internshiptitlepages}{}
+\newcommand{\@maketitlepages}{\@mastertitlepages}  %Default: Master's thesis
+
+
+\newcommand{\@titlepagefont}{\sffamily}
+
+%% Class options --------------------------------------------------------------
+
+\DeclareOption{master}{
+	\renewcommand{\@maketitlepages}{\@mastertitlepages}
+}
+
+\DeclareOption{diplom}{%
+	\renewcommand{\@maketitlepages}{\@diplomatitlepages}
+	\ClassWarning{hgbthesis}{Deprecated: Document option '\CurrentOption' is deprecated, use 'diploma' instead.}
+}
+
+\DeclareOption{diploma}{%
+	\renewcommand{\@maketitlepages}{\@diplomatitlepages}
+}
+
+\DeclareOption{bachelor}{%
+	\renewcommand{\@maketitlepages}{\@bachelortitlepages}
+}
+
+\DeclareOption{praktikum}{%
+	\renewcommand{\@maketitlepages}{\@internshiptitlepages}
+	\ClassWarning{hgbthesis}{Deprecated: Document option '\CurrentOption' is deprecated, use 'internship' instead.}
+}
+
+\DeclareOption{internship}{%
+	\renewcommand{\@maketitlepages}{\@internshiptitlepages}
+}
+
+\DeclareOption{english}{%
+	\renewcommand{\hgb@MainLanguage}{english}
+}
+
+\DeclareOption{german}{%
+	\renewcommand{\hgb@MainLanguage}{german}
+}
+
+\DeclareOption*{%
+	\ClassWarning{hgbthesis}{Unknown document option '\CurrentOption'.}
+}
+
+\ProcessOptions
+
+
+%% Paper Options and Style File -----------------------------------------------
+
+\LoadClass[a4paper,11pt,oneside]{book}
+\RequirePackage[top=36mm,bottom=40mm,left=32mm,right=32mm]{geometry} %showframe
+ 
+\RequirePackage{hgb}	% load associated style file hgb.sty
+
+
+%% Setup for Pages in the Front Matter ----------------------------------------
+
+% General Commands
+
+\newcommand{\@programname}{\@MissingArg{Degree program not specified!}}
+\newcommand{\studiengang}[1]{%
+	\renewcommand{\@programname}{#1}
+	\ClassWarning{hgbthesis}{Deprecated: '\string\studiengang' is deprecated, use '\string\programname' instead.}
+}
+\newcommand{\programname}[1]{%
+	\ifthenelse{\isempty{#1}}{}{\renewcommand{\@programname}{#1}}
+}
+
+\newcommand{\@placeofstudy}{\@MissingArg{Place of study not specified!}}
+\newcommand{\studienort}[1]{%
+	\renewcommand{\@placeofstudy}{#1}
+	\ClassWarning{hgbthesis}{Deprecated: '\string\studienort' is deprecated, use '\string\placeofstudy' instead.}
+}
+\newcommand{\placeofstudy}[1]{%
+	\ifthenelse{\isempty{#1}}{}{\renewcommand{\@placeofstudy}{#1}}
+}
+
+\newcommand{\@advisor}{\@MissingArg{Advisor not specified!}}
+\newcommand{\betreuer}[1]{%
+	\renewcommand{\@advisor}{#1}
+	\ClassWarning{hgbthesis}{Deprecated: '\string\betreuer' is deprecated, use '\string\advisor' instead.}
+}
+\newcommand{\betreuerin}[1]{%
+	\renewcommand{\@advisor}{#1}
+	\ClassWarning{hgbthesis}{Deprecated: '\string\betreuerin' is deprecated, use '\string\advisor' instead.}
+}
+\newcommand{\advisor}[1]{%
+	\ifthenelse{\isempty{#1}}{}{\renewcommand{\@advisor}{#1}}
+}
+
+\newcommand{\@thesisnumber}{\@MissingArg{Thesis number not specified!}}
+\newcommand{\nummer}[1]{%
+	\renewcommand{\@thesisnumber}{#1}
+	\ClassWarning{hgbthesis}{Deprecated: '\string\nummer' is deprecated, use '\string\thesisnumber' instead.}
+}
+\newcommand{\thesisnumber}[1]{%
+	\ifthenelse{\isempty{#1}}{}{\renewcommand{\@thesisnumber}{#1}}
+}
+
+\newcommand{\@coursetitle}{\@MissingArg{Course not specified!}}
+\newcommand{\gegenstand}[1]{%
+	\renewcommand{\@coursetitle}{#1}
+	\ClassWarning{hgbthesis}{Deprecated: '\string\gegenstand' is deprecated, use '\string\coursetitle' instead.}
+}
+\newcommand{\coursetitle}[1]{%
+	\ifthenelse{\isempty{#1}}{}{\renewcommand{\@coursetitle}{#1}}
+}
+
+\newcommand{\@semester}{\@MissingArg{Semester not specified!}}
+\newcommand{\semester}[1]{%
+	\ifthenelse{\isempty{#1}}{}{\renewcommand{\@semester}{#1}}
+}
+
+\newcommand{\@logofile}[0]{}
+\newcommand{\logofile}[1]{%
+	\renewcommand{\@logofile}{#1}
+}
+
+\newcommand{\makelogo}[0]{%
+\ifthenelse{\equal{\@logofile}{}}%
+	{\vspace*{30mm}}%
+	{\includegraphics[height=30mm]{\@logofile}}%
+}
+
+% Submission Commands
+
+\newcounter{@dayofsubmission}
+\newcounter{@monthofsubmission}
+\newcounter{@yearofsubmission}
+
+\setcounter{@dayofsubmission}{\the\day}
+\setcounter{@monthofsubmission}{\the\month}
+\setcounter{@yearofsubmission}{\the\year}
+
+\newcommand{\abgabedatum}[3]{%	%\abgabedatum{yyyy}{mm}{dd}
+	\setcounter{@yearofsubmission}{#1}
+	\setcounter{@monthofsubmission}{#2}
+	\setcounter{@dayofsubmission}{#3}
+	\ClassWarning{hgbthesis}{Deprecated: '\string\abgabedatum' is deprecated, use '\string\dateofsubmission{yyyy}{mm}{dd}' instead.}
+}
+\newcommand{\dateofsubmission}[3]{%	%\dateofsubmission{yyyy}{mm}{dd}
+	\setcounter{@yearofsubmission}{#1}
+	\setcounter{@monthofsubmission}{#2}
+	\setcounter{@dayofsubmission}{#3}
+}
+
+\newcommand{\abgabemonat}[1]{%
+	\ClassWarning{hgbthesis}{Deprecated: '\string\abgabemonat' is deprecated, use '\string\dateofsubmission{yyyy}{mm}{dd}' instead.}
+}
+
+\newcommand{\abgabejahr}[1]{%
+	\ClassWarning{hgbthesis}{Deprecated: '\string\abgabejahr' is deprecated, use '\string\dateofsubmission{yyyy}{mm}{dd}' instead.}
+}
+
+% Internship Report Commands
+
+\newcommand{\@companyName}{\@MissingArg{Company not specified!}}
+\newcommand{\firma}[1]{%
+	\renewcommand{\@companyName}{#1}
+	\ClassWarning{hgbthesis}{Deprecated: '\string\firma' is deprecated, use '\string\companyName' instead.}
+}
+\newcommand{\companyName}[1]{%
+	\ifthenelse{\isempty{#1}}{}{\renewcommand{\@companyName}{#1}}
+}
+
+\newcommand{\@companyUrl}{\@MissingArg{Company URL not specified!}}
+\newcommand{\firmenUrl}[1]{%
+	\renewcommand{\@companyUrl}{#1}
+	\ClassWarning{hgbthesis}{Deprecated: '\string\firmenUrl' is deprecated, use '\string\companyUrl' instead.}
+}
+\newcommand{\companyUrl}[1]{%
+	\ifthenelse{\isempty{#1}}{}{\renewcommand{\@companyUrl}{#1}}
+}
+
+\newcommand{\@companyPhone}{\@MissingArg{Company phone number not specified!}}
+\newcommand{\firmenTel}[1]{%
+	\renewcommand{\@companyPhone}{#1}
+	\ClassWarning{hgbthesis}{Deprecated: '\string\firmenTel' is deprecated, use '\string\companyPhone' instead.}
+}
+\newcommand{\companyPhone}[1]{%
+	\ifthenelse{\isempty{#1}}{}{\renewcommand{\@companyPhone}{#1}}
+	\renewcommand{\@companyPhone}{#1}
+}
+
+\newcommand{\@license}{\@MissingArg{License information is missing!}}
+\newcommand{\license}[1]{%
+	\renewcommand{\@license}{#1}
+}
+
+
+%% Commands for Creating the Title Pages --------------------------------------
+
+\newcommand{\titelseite}{%
+	\maketitle
+	\ClassWarning{hgbthesis}{Deprecated: '\string\titelseite' is deprecated, use '\string\maketitle' instead.}
+}
+
+%% adds blank space after each letter (http://stackoverflow.com/a/3951837)
+\newcommand{\@addspaces}[1]{%  
+  \@tfor\letter:=#1\do{%
+    \letter\thinspace%	%\space
+  }%
+}
+
+\newcommand{\@bachelortitle}{%
+\begin{titlepage}%
+	\begin{german}
+		\rule{0mm}{1mm}
+		\vspace*{0mm}
+		\begin{center}%
+			\@titlepagefont %\normalfont
+			\setlength{\unitlength}{1cm}
+			\parbox[c][5cm][c]{12cm}{%
+				\centering\LARGE\bfseries%
+				\setlength{\baselineskip}{25pt}%
+				\@title%
+			}
+			\vskip 15mm%
+			{\large\@author}%{\large\scshape\@author}%
+			\vskip 15mm%
+			\makelogo%
+			\vskip 15mm%
+			{\Large\uppercase{\@addspaces{Bachelorarbeit}}}%
+			\vskip 4mm%
+			{\large Nr.~\@thesisnumber}
+			\vskip 4mm%
+			{\large eingereicht am} \vskip 1mm {Fachhochschul-Bachelorstudiengang}%
+			\vskip 4mm%
+			{\large\@programname}%
+			\vskip 4mm%
+			{\large in \@placeofstudy}%
+			\vskip 16mm%
+			{\large im \monthname[\value{@monthofsubmission}] \arabic{@yearofsubmission}}%
+		\end{center}%
+		\vfil%
+	\end{german}
+\end{titlepage}%
+}
+
+\newcommand{\@mastertitle}{%
+\begin{titlepage}%
+	\begin{german}
+		\rule{0mm}{1mm}
+		\vspace*{0mm}
+		\begin{center}%
+			\@titlepagefont %\normalfont
+			\setlength{\unitlength}{1cm}
+			\parbox[c][5cm][c]{12cm}{%
+				\centering\LARGE\bfseries%%
+				\setlength{\baselineskip}{25pt}%
+				\@title%
+			}
+			\vskip 15mm%
+			{\large\@author}%{\large\scshape\@author}%
+			\vskip 15mm%
+			\makelogo%
+			\vskip 15mm%
+			{\Large\uppercase{\@addspaces{Masterarbeit}}}%
+			\vskip 4mm%
+			{\large eingereicht am} \vskip 1mm {Fachhochschul-Masterstudiengang}%
+			\vskip 4mm%
+			{\large\@programname}%
+			\vskip 4mm%
+			{\large in \@placeofstudy}%
+			\vskip 16mm%
+			{\large im \monthname[\value{@monthofsubmission}] \arabic{@yearofsubmission}}%
+		\end{center}%
+		\vfil%
+	\end{german}
+\end{titlepage}%
+}
+
+\newcommand{\@diplomatitle}{%
+\begin{titlepage}%
+	\begin{german}
+		\rule{0mm}{1mm}
+		\vspace*{0mm}
+		\begin{center}%
+			\@titlepagefont %\normalfont
+			\setlength{\unitlength}{1cm}
+			\parbox[c][5cm][c]{12cm}{%
+				\centering\LARGE\bfseries%
+				\setlength{\baselineskip}{25pt}%
+				\@title%
+			}
+			\vskip 15mm%
+			{\large\@author}%{\large\scshape\@author}%
+			\vskip 15mm%
+			\makelogo%
+			\vskip 15mm%
+			{\Large\uppercase{\@addspaces{Diplomarbeit}}}%
+			\vskip 4mm%
+			{\large eingereicht am} \vskip 1mm {Fachhochschul-Diplomstudiengang}%
+			\vskip 4mm%
+			{\large\@programname}%
+			\vskip 4mm%
+			{\large in \@placeofstudy}%
+			\vskip 16mm%
+			{\large im \monthname[\value{@monthofsubmission}] \arabic{@yearofsubmission}}%
+		\end{center}%
+		\vfil%
+	\end{german}
+\end{titlepage}%
+}
+
+\newcommand{\@internshiptitle}{%
+\begin{titlepage}%
+	\begin{german}
+		\rule{0mm}{1mm}
+		\vspace*{0mm}
+		\begin{center}%
+			\@titlepagefont %\normalfont
+			\setlength{\unitlength}{1cm}
+			\parbox[c][5cm][c]{12cm}{%
+				\centering\LARGE\bfseries%
+				\setlength{\baselineskip}{25pt}%
+				Endbericht zum Berufspraktikum%
+			}
+			\vskip 15mm%
+			{\large\@author}%{\large\scshape\@author}%
+			\vskip 15mm%
+			\makelogo%
+			\vskip 15mm%
+			{\Large\uppercase{\@addspaces{Bachelorarbeit}}}%
+			\vskip 4mm%
+			{\large Nr.~\@thesisnumber}
+			\vskip 4mm%
+			{\large eingereicht am} \vskip 1mm {Fachhochschul-Bachelorstudiengang}%
+			\vskip 4mm%
+			{\large\@programname}%
+			\vskip 4mm%
+			{\large in \@placeofstudy}%
+			\vskip 16mm%
+			{\large im \monthname[\value{@monthofsubmission}] \arabic{@yearofsubmission}}%
+		\end{center}%
+		\vfil%
+	\end{german}
+\end{titlepage}%
+}
+
+
+% Copyright and License Page --------------------------------------------------
+
+\newcommand{\strictlicense}{%
+\ifthenelse{\equal{\hgb@MainLanguage}{german}}%
+	{\license{Alle Rechte vorbehalten}}%
+	{\license{All Rights Reserved}}
+}
+
+\newcommand{\@ccLicenseAt}{%
+Diese Arbeit wird unter den Bedingungen der 
+\textsf{Creative Commons Lizenz} 
+\emph{Attribution-NonCommercial-NoDerivatives 4.0 International} 
+(CC BY-NC-ND 4.0) ver\"offentlicht --
+siehe \url{https://creativecommons.org/licenses/by-nc-nd/4.0/}.}
+
+\newcommand{\@ccLicenseEn}{%
+This work is published under the conditions of the 
+\textsf{Creative Commons License} 
+\emph{Attribution-NonCommercial-NoDerivatives 4.0 International} 
+(CC BY-NC-ND 4.0)---see
+\url{https://creativecommons.org/licenses/by-nc-nd/4.0/}.}
+
+\newcommand{\cclicense}{%
+\ifthenelse{\equal{\hgb@MainLanguage}{german}}%
+	{\license{\@ccLicenseAt}} % german CC license text
+	{\license{\@ccLicenseEn}} % english CC license text (default)
+}
+	
+\cclicense	% Creative Commons License (default)
+
+\newcommand{\@makelicense}{ 
+	\sbox\@tempboxa{\@license}%
+	\ifdim \wd\@tempboxa >\hsize
+		\begin{sloppypar}\noindent\@license\end{sloppypar}
+	\else
+		\global \@minipagefalse
+		\hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+	\fi
+}
+
+\newcommand{\@copyrightpage}{%
+\newpage
+\setcounter{page}{2}
+\thispagestyle{plain}
+\rule{0mm}{1mm}
+\vspace*{75mm}
+\begin{center}
+\textsf{\copyright\ Copyright\ \arabic{@yearofsubmission}\ \@author}
+\end{center}
+\vspace{8mm}
+\@makelicense
+}
+
+
+%% Company Page for Internship Report -----------------------------------------
+
+\newcommand{\@companypage}{%
+\newpage
+\setcounter{page}{2}
+\thispagestyle{plain}
+\rule{0mm}{1mm}
+\begin{center}
+\vspace{25mm} 
+{Praktikumsstelle:}
+\\
+\vspace{3mm}
+{\Large\sf\@companyName\\ \mbox{}}
+\\
+{\sf \@companyPhone}
+\\
+{\sf \@companyUrl}
+\\
+\vspace{45mm} 
+{Kontaktperson:}
+\\
+\vspace{3mm} 
+{\Large\sf\@advisor\\ \mbox{}}
+\end{center}
+}
+
+
+%% Advisor Pages in German and English ----------------------------------------
+
+% German
+
+\newcommand{\@advisorpageDe}{%
+	\newpage
+	\setcounter{page}{2}
+	\thispagestyle{plain}
+	\rule{0mm}{1mm}
+	\begin{center}
+		%
+		\vspace{40mm} 
+		{Diese Arbeit entstand im Rahmen des Gegenstands}\\
+		\vspace{6mm} 
+		{\Large\sf \@coursetitle\\ \mbox{}}\\
+		\medskip
+		im\\
+		\bigskip
+		{\@semester}\\
+		%
+		\vspace{45mm} 
+		{Betreuung:}\\
+		\vspace{3mm} 
+		{\Large\sf \@advisor\\ \mbox{}}
+	\end{center}
+}
+
+% English
+
+\newcommand{\@advisorpageEn}{%
+	\newpage
+	\setcounter{page}{2}
+	\thispagestyle{plain}
+	\rule{0mm}{1mm}
+	\begin{center}
+		%
+		\vspace{40mm} 
+		{This thesis was created as part of the course}\\
+		\vspace{6mm} 
+		{\Large\sf \@coursetitle\\ \mbox{}}\\
+		\medskip
+		during\\
+		\bigskip
+		{\@semester}\\
+		%
+		\vspace{45mm} 
+		{Advisor:}\\
+		\vspace{3mm} 
+		{\Large\sf \@advisor\\ \mbox{}}
+	\end{center}
+}
+
+\newcommand{\@advisorpage}{%
+\ifthenelse{\equal{\hgb@MainLanguage}{german}}%
+	{\@advisorpageDe}%
+	{\@advisorpageEn}
+}
+
+
+%% Declaration Pages in German and English ------------------------------------
+
+% German
+
+\newcommand{\@declarationpageDe}{%
+	\begin{german}
+		\chapter{Erkl\"arung}
+		\noindent
+		%Standardfassung der FH-OOe ab 04.04.2012:
+		Ich erkl\"are eidesstattlich, dass ich die vorliegende Arbeit selbstst\"andig und ohne fremde Hilfe verfasst, 
+		andere als die angegebenen Quellen nicht benutzt und die den benutzten Quellen entnommenen Stellen als 
+		solche gekennzeichnet habe. Die Arbeit wurde bisher in gleicher oder \"ahnlicher Form keiner anderen 
+		Pr\"ufungsbeh\"orde vorgelegt.
+		\par
+		\vspace{10mm}
+		\noindent
+		\@placeofstudy, am \formatdate{\value{@dayofsubmission}}{\value{@monthofsubmission}}{\value{@yearofsubmission}}
+		\par
+		\vspace{12mm}
+		\noindent
+		\@author
+	\end{german}
+}
+
+% English
+
+\newcommand{\leadingzero}[1]{\ifnum #1<10 0\the#1\else\the#1\fi}
+
+\newcommand{\@declarationpageEn}{%
+	\begin{english}
+		\chapter{Declaration}
+		\noindent
+		I hereby declare and confirm that this thesis is entirely the result of my own original work. 
+		Where other sources of information have been used, they have been indicated as such and properly 
+		acknowledged. I further declare that this or similar work has not been submitted for credit elsewhere.
+		\par
+		\vspace{10mm}
+		\noindent
+		%\@placeofstudy, \the\year-\leadingzero{\month}-\leadingzero{\day} %http://de.wikibooks.org/wiki/LaTeX-W%F6rterbuch:_today 
+		\@placeofstudy, {\usdate\formatdate{\value{@dayofsubmission}}{\value{@monthofsubmission}}{\value{@yearofsubmission}}}
+		\par
+		\vspace{12mm}
+		\noindent
+		\@author
+	\end{english}
+}
+
+\newcommand{\@declarationpage}{%
+\ifthenelse{\equal{\hgb@MainLanguage}{german}}%
+	{\@declarationpageDe}%
+	{\@declarationpageEn}
+}
+
+
+%% Assembly of title pages ----------------------------------------------------
+
+\renewcommand{\@mastertitlepages}{
+	\@mastertitle
+	\@copyrightpage
+	\@declarationpage
+}
+     
+\renewcommand{\@diplomatitlepages}{
+	\@diplomatitle
+	\@copyrightpage
+	\@declarationpage
+}
+
+\renewcommand{\@bachelortitlepages}{
+	\@bachelortitle
+	\@advisorpage
+	\@declarationpage
+}
+
+\renewcommand{\@internshiptitlepages}{
+	\@internshiptitle
+	\@companypage
+	\@declarationpage
+}
+
+
+% Add PDF meta data and create title pages
+
+\renewcommand{\maketitle}{	%replace standard LaTeX-command
+	\hypersetup{
+			pdftitle={\@title},
+			pdfauthor={\@author},
+			pdfsubject={\@programname, \@placeofstudy},
+			pdfcreator={LaTeX using class hgbthesis [\hgbDate]},
+			pdfproducer={pdflatex},
+			pdfkeywords={}
+	}%
+
+	\@maketitlepages
+}
+
+%% Additional Hagenberg packages ----------------------------------------------
+
+\RequirePackage{hgbmath}
+\RequirePackage{hgbheadings}
+\RequirePackage{hgbabbrev}
+\RequirePackage{hgblistings}
+\RequirePackage{hgbbib}
+
+\endinput
-- 
cgit v1.2.3

