\documentclass[11pt,a4paper]{book}
\usepackage[utf8]{inputenc} % Text ist UTF-8 kodiert!!!
\usepackage[ngerman]{babel} % Deutsch neue Rechtschreibung
\usepackage{textcomp}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{graphics}
\usepackage{textcomp}
\usepackage{color} % Farben
\usepackage{framed}
\usepackage{theorem}
\usepackage{ifthen} % Kontrollstrukturen
\usepackage{enumitem} % Abstände bei enum kontrollieren
\usepackage{natbib}
\usepackage{float}
\usepackage{subfigure}
\usepackage{wrapfig}
%\usepackage{floatflt}
\usepackage[german]{varioref}
\usepackage{fancyhdr}
\usepackage{multibib}
\usepackage{attachfile}
\usepackage{datetime} % Zeit \currenttime
\usepackage[pdftex]{graphicx,color} % pdflinks
\usepackage[hdivide={*,16cm,*}, vdivide={*,24.7cm,*}, marginparsep=0.5cm, marginparwidth=1.5cm, twoside]{geometry} % andere Seitenränder

\newcites{mediothek,grundlagen}%
         {Mediothek für die Schüler,%
          Als Grundlagen benutzte Quellen}

% Abstände bei Tabellenüberschriften
\makeatletter
%\setlength{\abovecaptionskip}{1em}
\setlength{\belowcaptionskip}{1em}
\makeatother

\renewcommand\headrulewidth{0pt}

\setlength{\headheight}{14pt}

% Code for creating empty pages
% No headers on empty pages before new chapter
\makeatletter
\def\cleardoublepage{\clearpage\if@twoside \ifodd\c@page\else
    \hbox{}
    \thispagestyle{empty} %plain}
    \newpage
    \if@twocolumn\hbox{}\newpage\fi\fi\fi}
\makeatother \clearpage{\pagestyle{fancy}\cleardoublepage}

% mal allgemein normal setzen
\pagestyle{fancy}{\fancyhf{}%
\fancyhead[LE]{\textsc{\nouppercase{\leftmark}}}
\fancyfoot[LE,RO]{\thepage}}

% normal setzen
\fancypagestyle{normal}{\fancyhf{}%
\fancyhead[LE]{\textsc{\nouppercase{\leftmark}}}
\fancyfoot[LE,RO]{\thepage}}

% plain setzen
\fancypagestyle{plain}{\fancyhf{}%
\fancyfoot[LE,RO]{\thepage}}

% leitprogramm setzen
\fancypagestyle{leitprogramm}{\fancyhf{}%
\fancyhead[RO]{\nouppercase{\rightmark}}%
\fancyhead[LE]{\textsc{\nouppercase{\leftmark}}}%
\fancyfoot[LE,RO]{\thepage}}

\newcommand{\parindentglobal}{1.5em}

% chaploesung
\newcounter{chaploesung}
\newcommand{\chaploesung}[1]{\stepcounter{chaploesung}\chapter*{\thechaploesung #1}}

\numberwithin{figure}{chapter} % Zähler für Abbildungen pro Kapitel nummerieren

% Aufzählungen buchstabieren
\makeatletter
\renewcommand{\theenumi}{\alph{enumi})}
\renewcommand{\labelenumi}{\alph{enumi})}
\makeatother

% keine Abstände bei den listen
\setlist{noitemsep}

% wie sehen die Theoreme aus (also meine Umgebungen)
\theoremstyle{break}
\theorembodyfont{\normalfont}
%\theoremheaderfont{}

% Abstände für die marginpar
\newcommand{\offsetmar}{\vspace{0.05\linewidth}\centering}
\newcommand{\offsetmarv}{\vspace{-1cm}}
\newcommand{\offsetmarvsub}{\vspace{-0.8cm}}
\newcommand{\offsetmarvpin}{\vspace{0.2\linewidth}}

%% Farbe der Hintergründe
\definecolor{shadecolor}{gray}{0.9}

%% experiment
\newtheorem{theoremexperiment}{Experiment}[chapter]
\newenvironment{experiment}[1]{ % Prüfen ob in dem Optionalen Parameter etwas steht
\ifthenelse{\equal{}{#1}}{\begin{theoremexperiment}}{\begin{theoremexperiment}[#1]}
\marginpar{\offsetmar\includegraphics[width=\linewidth]{icons/xbill_01}}
}{\end{theoremexperiment}}

%% beispiele
\newtheorem{theorembeispiel}{Beispiel}[chapter]
\newenvironment{beispiel}[1]{ % Prüfen ob in dem Optionalen Parameter etwas steht
\ifthenelse{\equal{}{#1}}{\begin{theorembeispiel}}{\begin{theorembeispiel}[#1]}
\marginpar{\offsetmar\includegraphics[width=\linewidth]{icons/gaim}}
}{\end{theorembeispiel}}

%% aufgabe
\newtheorem{theoremaufgabe}{Aufgabe}[chapter]
\newenvironment{aufgabe}[1]{ % Prüfen ob in dem Optionalen Parameter etwas steht
\ifthenelse{\equal{}{#1}}{\begin{theoremaufgabe}}{\begin{theoremaufgabe}[#1]}
\marginpar{\offsetmar\includegraphics[width=\linewidth]{icons/simple_calculator_01}}}{\end{theoremaufgabe}}

%% testaufgabe
\newtheorem{theoremtestaufgabe}{Testaufgabe}[chapter]
\newenvironment{testaufgabe}[1]{ % Prüfen ob in dem Optionalen Parameter etwas steht
\ifthenelse{\equal{}{#1}}{\begin{theoremtestaufgabe}}{\begin{theoremtestaufgabe}[#1]}}{\end{theoremtestaufgabe}}

%% medien
\newtheorem{theoremmedien}{Medienarbeit}[chapter]
\newenvironment{medien}[1]{ % Prüfen ob in dem Optionalen Parameter etwas steht
\ifthenelse{\equal{}{#1}}{\begin{theoremmedien}}{\begin{theoremmedien}[#1]}
\marginpar{\offsetmar\includegraphics[width=\linewidth]{icons/web-browser}}
}{\end{theoremmedien}}

%% exkurs
\newtheorem{theoremexkurs}{Exkurs}[chapter]
\newenvironment{exkurs}[1]{ % Prüfen ob in dem Optionalen Parameter etwas steht
\ifthenelse{\equal{}{#1}}{\begin{theoremexkurs}}{\begin{theoremexkurs}[#1]}
\marginpar{\offsetmar\includegraphics[width=\linewidth]{icons/lemonade}}
}{\end{theoremexkurs}}

%% axiome
\newtheorem{axiom}{Axiom}

%% loesungen
%% TODO muss gleich aussehen wie ein Theorem
\newenvironment{loesung}[1]{\subsubsection*{Lösung #1}}{}

%% testloesungen
%% TODO muss gleich aussehen wie ein Theorem
\newenvironment{testloesung}[1]{\subsubsection*{Lösung #1}}{}

%% uebersicht
\newenvironment{uebersicht}{\section*{Übersicht}\addcontentsline{toc}{section}{Übersicht}}{}

%% lernziele
\newenvironment{lernziele}{\section*{Lernziele}\addcontentsline{toc}{section}{Lernziele}\begin{itemize}}{\end{itemize}}

%% Merke
\newenvironment{merke}{\marginpar{\offsetmarvpin\offsetmar\includegraphics[width=\linewidth]{icons/pin}}\begin{shaded}\setlength{\parindent}{\parindentglobal}}{\end{shaded}}


%% hinweis
\newenvironment{hinweis}[1]{ % Prüfen ob in dem Optionalen Parameter etwas steht
\ifthenelse{\equal{}{#1}}{\marginpar{\offsetmar\includegraphics[width=\linewidth]{icons/arrow12_1}}}{\section*{#1}\marginpar{\offsetmarv\offsetmar\includegraphics[width=\linewidth]{icons/arrow12_1}}}\it{}}{}
%% subhinweis
\newenvironment{subhinweis}[1]{ % Prüfen ob in dem Optionalen Parameter etwas steht
\ifthenelse{\equal{}{#1}}{}{\subsection*{#1}}
\marginpar{\offsetmarvsub\offsetmar\includegraphics[width=\linewidth]{icons/arrow12_1}}
\it{}}{}

%% zusammenfassung
\newenvironment{zusammenfassung}[1]{ % Prüfen ob in dem Optionalen Parameter etwas steht
\ifthenelse{\equal{}{#1}}{\section*{Zusammenfassung}\addcontentsline{toc}{section}{Zusammenfassung}}{\section*{#1}\addcontentsline{toc}{section}{#1}}
\marginpar{\offsetmarv\includegraphics[width=\linewidth]{icons/calligraphy}}
}{}
\newenvironment{subzusammenfassung}[1]{ % Prüfen ob in dem Optionalen Parameter etwas steht
\ifthenelse{\equal{}{#1}}{\subsection*{Zusammenfassung}}{\subsection*{#1}}
\marginpar{\offsetmarvsub\offsetmar\includegraphics[width=\linewidth]{icons/calligraphy}}
}{}

\newcommand{\abs}[1]{\lvert#1\rvert}

\attachfilesetup{icon=Paperclip, color=1 0 0, author=Thomas Kuster, description=ZIP-Datei, subject=ZIP-Datei, mimetype=application/zip}
\newcommand{\zip}[1]{\textattachfile{./#1}{\tt #1}}

%%%%
%%
%% \vref verwenden???
%%
%%%%

\newcommand{\titelname}{Leitprogramm Physik, Einführung in die Statik}
\newcommand{\authorname}{Thomas Kuster}

\hypersetup
{%
pdftitle = {\titelname{}},%
pdfsubject = {\titelname{}, Umweltnaturwissenschaften 6. Semester},%
pdfauthor = {\authorname{} (6. Semester, D-UWIS)},%
pdfkeywords = {\titelname{}},%
colorlinks = {false},% für farbe true
linkcolor = {blue}
}

\setlength{\parindent}{\parindentglobal} %einzug überall 1em

\date{September 2006}
\author{\begin{minipage}[t]{0.3\linewidth}
{\bf Überarbeitung}\\
\authorname{}\\
D-UWIS\\
Umweltnaturwis\-senschaften
\end{minipage}
\hspace{\fill}
\begin{minipage}[t]{0.3\linewidth}
\centering
{\bf Autoren}\\
Daniel Huldi und\\ Marcel Zemp\\
D-PHYS\\
Physik\\
\end{minipage}
\hspace{\fill}
\begin{minipage}[t]{0.3\linewidth}
\flushright
{\bf Betreuer}\\
Wolfgang Pils
\end{minipage}
}

\title{ETH Institut für Verhaltenswissenschaften\\\vspace{1em}
{\Huge Einführung in die Statik}\\
Leitprogramm Physik\vspace{1em}
\includegraphics[width=0.95\linewidth]{./fotos/salginatobelbruecke}\addcontentsline{lof}{figure}{Salginatobelbrücke \protect{\cite[Scan:][]{maillart}}}}

\begin{document}
\frontmatter
\pagenumbering{roman} % cover römisch klein
\addtolength{\hoffset}{0.5cm}
\maketitle
\addtolength{\hoffset}{-0.5cm}
\cleardoublepage

% Infos zum Leitprogramm "Werksangaben"
\pagestyle{normal}
\setcounter{page}{1}
\pagenumbering{Roman} % grosse römische Seitenzahlen für den ``Vorspann''
\input infos.tex

\input einleitung.tex

\cleardoublepage
\pdfbookmark[0]{Inhaltsverzeichnis}{kap:toc}
\label{kap:toc}
\tableofcontents

\input arbeitsanleitung.tex
%\thispagestyle{plain} % dirty hack wieso auch immer ein this notwendig ist?
%\pagestyle{normal}

\mainmatter
\pagenumbering{arabic} % Ab hier: Gewöhnliche Seitennummerierung
\part{Leitprogramm}\label{part:leitprogramm}
\pagestyle{leitprogramm}
\input leitprogramm.tex

%\renewcommand{\chaptername}{Zusatz} % TODO soll man das oder nicht?
\part{Zusatz\label{part:zusatz}} %% Addita
\input zusatz.tex

\pagestyle{normal}
\part{Lösungen und Hinweise zu den Aufgaben}\label{part:loesungen}
\appendix
\renewcommand{\appendixname}{Lösungen zu Kapitel}
\renewcommand{\thechapter}{\arabic{chapter}}
\input loesungen.tex

\part{Kapiteltests für den Lehrer}\label{part:kaptest}
\appendix
\renewcommand{\appendixname}{Kapiteltests}
\renewcommand{\thechapter}{\arabic{chapter}}
% weniger text auf einer site erlauben
%\renewcommand{\textfraction}{.1} % vorher: .2
\input kapiteltests.tex

\part{Lösungen Kapiteltests für den Lehrer}\label{part:lsgkaptest}
\appendix
\renewcommand{\appendixname}{Kapiteltests Lösungen}
\renewcommand{\thechapter}{\arabic{chapter}}
% weniger text auf einer seite erlauben
\renewcommand{\textfraction}{.1} % vorher: .2
\input kapiteltests_loesungen.tex

\backmatter
\part{Anhang}
\appendix
\renewcommand{\appendixname}{Anhang}

\input anhang.tex
\end{document}
