\documentclass[a4paper,10pt]{report}
\usepackage[ngerman]{babel}
% \usepackage[english, plain]{fancyref}
\usepackage[utf8]{inputenc}
% \usepackage[acronym, nonumberlist,toc,section]{glossaries}
\usepackage{booktabs}
\usepackage{graphicx}

% \usepackage{html,makeidx}
% \usepackage{fancyref}

% \pagestyle{empty}

% \usepackage{listings}
\usepackage{hyperref}

\setlength{\parindent}{0cm}

\newcommand{\appName}{Meganizer}
\newcommand{\mirror}{http://ftp.engsas.de/stable}
\newcommand{\tabHead}[1]{\textbf{#1}}
\newcommand{\cmd}[1]{\textit{#1}}

% plastex can not handle renewcommand of \title and \author
\newcommand{\myAuthor}{\href{http://www.engsas.de}{EngSaS - Engineering Solutions and Services Langenbach}}
\newcommand{\myTitle}{Handbuch \appName{}}

\hypersetup{colorlinks,
                linkcolor=black,
                filecolor=black,
                urlcolor=black,
                citecolor=black,
                pdfauthor={\myAuthor},
                pdftitle={\myTitle},
                pdfsubject={\appName{}},
                pdfproducer={Latex - PDFLatex}
}

% \makeglossaries
% \newacronym{MIN}{MIN}{Medium Identification Number (can be ISBN, EAN, UPC, $\cdots$)}

\begin{document}

\begin{titlepage}
	\center{
		\vspace*{5cm}
		\textbf{\Large{\myTitle}} \\[1cm]
		\includegraphics[height=5cm]{latex/images/logo} \\[2cm]
		\myAuthor \\[1cm]
		\today
	}
\end{titlepage}
\newpage

\tableofcontents
\newpage

% \printglossary[type=\acronymtype, style=long]
% \newpage

\chapter{Einstieg}

\appName{} hilft Ihnen Ihre Mediensammlung zu organisieren.
Die Katalogisierung wird allerdings nur als Basis betrachtet, damit weitere nützliche Funktionen angeboten werden können.
So können Sie Ihre wünsche verwalten und genauso auch Ihre Geschenkideen für andere.
Sie können auch Literaturlisten für Projekte (z.B. Studienarbeiten, Bücher, Artikel, ...) anlegen und exportieren.

\chapter{Installation und Konfiguration}

\appName{} können Sie auf zwei Arten installieren.
Die bevorzugte und einfache Variante ist, bereitgestellte Pakete (s. \ref{sec:Packages}) für Ihre Plattform (z.B. Windows, Ubuntu, OpenSUSE, ...) zu nutzen.
Der zweite Weg besteht darin, die Quellen herunterzuladen und zu übersetzen.
Sollten Sie in diesem Fall Amazon nutzen wollen, müssen Sie allerdings über einen AWS Zugang verfügen. Für die bereitgestellten Pakete ist er nicht nötig!

\section{Installatation von \appName{}-Paketen}
\label{sec:Packages}

\subsection{Linux}

Um das Programm zu installieren, ist es nötig, unser Softwareverzeichnis (Repository) zu Ihren Quellen hinzuzufügen.
Die für Sie nötigen Quellen finden Sie auf unserem Downloadserver \href{\mirror{}}{\mirror{}}.
Den Ordner bestimmen Sie wie folgt

\mirror{}/IHRE-DISTRIBUTION/DISTRIBUTION-VERSION\\
(Beispiel Ubuntu Lucid (10.04):\\
\href{\mirror{}/ubuntu/10.04/meganizer.sources.list}{\mirror{}/ubuntu/10.04/meganizer.sources.list}).

Wie Sie diese Datei bzw. deren Inhalt einrichten, erfahren Sie in dem speziellen Artikel zu Ihrer Distribution (s. Tabelle \ref{tab:HelpAddingSources}) oder bei Verwendung von PackageKit im nächsten Abschnitt.
Anschließend können Sie \appName{} mit Hilfe Iherer Paketverwaltung installieren.
Haben Sie noch keine Datenbank installiert, so fahren Sie mit \ref{sec:installDatabaseLinux} fort.
Andernfalls springen Sie zu \ref{sec:configureApp}.

\begin{table}
	\caption{Hilfen zur Quelleneinrichtung}
	\label{tab:HelpAddingSources}
	\begin{tabular}{ll}
		\tabHead{Distribution} 	& \tabHead{Link} \\
		Ubuntu's								& \href{http://wiki.ubuntuusers.de/Paketquellen\_freischalten}{http://wiki.ubuntuusers.de/Paketquellen\_freischalten} \\
		Fedora									& \href{http://docs.fedoraproject.org/en-US/Fedora/12/html/Deployment\_Guide/sec-Configuring\_Yum\_and\_Yum_Repositories.html}{\parbox{10cm}{http://docs.fedoraproject.org/en-US/Fedora/12/html/\\Deployment\_Guide/sec-Configuring\_Yum\_and\_Yum\_Repositories.html}}
	\end{tabular}
\end{table}

Mit PackageKit können Sie bei einigen Distributionen (z.B. Ubuntu) eine Paketquelle einrichten. Dazu starten Sie PackageKit durch einen Aufruf in Ihrem Programmmenü der Oberfläche (z.B. KDE-Menü -> System -> Software hinzufügen oder entfernen). Anschließend wählen Sie Einstellungen und klicken auf \cmd{Edit Software Sources} (s. Abb. \ref{fig:KPackEditSources}). Dort wechseln Sie auf den Reiter \cmd{Andere Software} und klicken auf \cmd{Hinzufügen} (s. Abb. \ref{fig:KPackAddSource}). Anschließend geben Sie die entsprechende URL ein, die auf unser Repository zeigt. Sie beginnt mit \cmd{deb} für Debian Repositories, welches von der URL zum Repository gefolgt wird. Daraufhin wird die Version Ihrer Distribution angegeben (Ubuntu Lucid entspricht 10.04 und Maverick 10.10) sowie die Art des Repositories, in unserem Fall \cmd{contrib}.

\begin{figure}
	\centering
	\includegraphics[width=\textwidth]{latex/images/kpackagekit-editsources_de}
	\caption{Quellenverwaltung in KPackageKit}
	\label{fig:KPackEditSources}
\end{figure}

\begin{figure}
	\centering
	\includegraphics[width=\textwidth]{latex/images/kpackagekit-addsource_de}
	\caption{Quelle hinzufügen in KPackageKit}
	\label{fig:KPackAddSource}
\end{figure}

\subsection{Mac}

Mac wird zur Zeit noch nicht mit fertigen Paketen unterstützt.
Die Software ist allerdings unter Max OSX lauffähig, zum weiteren Vorgehen, lesen Sie Bitte  \ref{sec:BuildFromSource}.

Haben Sie noch keine Datenbank installiert, so fahren Sie mit \ref{sec:installDatabaseMac} fort.
Andernfalls springen Sie zu \ref{sec:configureApp}.

\subsection{Windows}

Laden Sie den Installer für Windows unter \href{\mirror{}/win/\appName{}-@VERSION@-win32.exe}{\mirror{}/win/\appName{}-@VERSION@-win32.exe} herunter.
Anschließend können Sie die Installation mit einem Doppelklick auf die Datei starten.
Der Installer führt Sie dann durch die Installation.

\begin{figure}
	\centering
	\includegraphics[width=\textwidth]{latex/images/installer-installmysql_de}
	\caption{MySQL-Server herunterladen und installieren lassen}
	\label{fig:DownloadAndInstallMySQL}
\end{figure}

Ist bereits eine Datenbank für \appName{} eingerichtet, wählen Sie \cmd{Download and install MySQL-Server} nicht aus, sondern fahren nach Abschluss der Installation mit \ref{sec:configureApp} fort.
Soll hingegen auf dem Rechner, auf dem Sie die Installation durchführen, eine Datenbank eingerichtet werden und MySQL-Server ist noch nicht installiert, wählen Sie \cmd{Download and install MySQL-Server} wie in Abb. \ref{fig:DownloadAndInstallMySQL} zu sehen ist.
Anschließend startet nach einem Klick auf \cmd{Weiter} der Download des Installers.
Dies kann einige Zeit dauern, da ca. 40MB heruntergeladen werden müssen.
Nach erfolgreichem Download wird das Setup automatisch gestartet.
Folgen Sie nun den Anweisungen des Assistenten.
Erreichen Sie den letzten Schritt, stellen Sie sicher, dass \cmd{Configure now} aktiviert ist (s. Abb. \ref{fig:mysqlConfigureNow}).
Wählen Sie dort die Standardkonfiguration aus (s. Abb \ref{fig:mysqlStandard}).
Damit wird MySQL als Dienst bei jedem Start von Windows gestartet.
Wichtig ist, dass Sie sich das Passwort des root-Nutzers gut merken.

\begin{figure}
	\centering
	\includegraphics[width=\textwidth]{latex/images/mysql-setup-configurenow_en}
	\caption{Wählen Sie im letzten Schritt des Installers Configure now aus}
	\label{fig:mysqlConfigureNow}
\end{figure}

\begin{figure}
	\centering
	\includegraphics[width=\textwidth]{latex/images/mysql-config-standard_en}
	\caption{Wählen Sie die Standardkonfiguration}
	\label{fig:mysqlStandard}
\end{figure}

Nach dem die MySQL-Konfiguration abgeschlossen ist, können Sie das Setup von \appName{} beenden.
Auf der letzten Seite kann angegeben werden, ob \appName{} gestartet werden soll.
Ist zusätzlich \cmd{Liesmich anzeigen} aktiviert, wird die Online-Dokumentation geöffnet.
Fahren Sie nun mit \ref{sec:configureApp} fort. Dort können Sie auch eine Datenbank und einen Nutzer erstellen lassen.

\subsection{Erstellen aus den Source}
\label{sec:BuildFromSource}

\subsubsection{Linux}

Laden Sie das Quellpaket von \href{\mirror/src}{\mirror/src} herunter und entpacken es.
Die benötigten Abhängigkeiten sind in der dependencies.xml des jeweiligen Unterordners aufgeführt.
Haben Sie die Abhängigkeiten erfüllt und sind Sie in das Quellverzeichnis gewechselt, können Sie die Anwendung mit Hilfe der Befehle\\

cmake -DWITH\_ALL\_PLUGINS=ON \textbackslash \\
-DL10N\_ALL=ON ./ \\
make install\\

erstellen und installieren.

\subsubsection{Mac}

\subsubsection{Windows}

Installieren Sie
\begin{itemize}
	\item Qt 4 mit MinGW von \href{http://qt.nokia.com/downloads}{http://qt.nokia.com/downloads}
	\item CMake von \href{http://www.cmake.org/cmake/resources/software.html}{http://www.cmake.org/cmake/resources/software.html}
	\item OpenSSL von \href{http://www.slproweb.com/products/Win32OpenSSL.html}{http://www.slproweb.com/products/Win32OpenSSL.html}
	\item QCA2-src Paket für MinGW von \href{https://sourceforge.net/projects/kde-windows/files/qca}{https://sourceforge.net/projects/kde-windows/files/qca}
	\item LibEngsas from \href{https://trac.engsas.de/libengsas/changeset/latest/trunk?old_path=\%2F\&format=zip}{https://trac.engsas.de/libengsas}
\end{itemize}

Bearbeiten Sie \textit{qca\textbackslash{}cmake\textbackslash{}modules\textbackslash{}FindOpenSSL.cmake} und fügen Sie einen Kommentar zur Zeile \\

MARK\_AS\_ADVANCED(OPENSSL\_INCLUDE\_DIR OPENSSL\_LIBRARIES) \\

hinzu, so dass sie nun\\

\#MARK\_AS\_ADVANCED(OPENSSL\_INCLUDE\_DIR OPENSSL\_LIBRARIES)\\

lautet.

Stellen Sie nun sicher, dass der \textit{MinGW\textbackslash{}bin} Ordner aus der Qt-Installation und Qt selbst in Ihrem Pfad enthalten ist.
Dazu klicken Sie mit der rechten Maustaste auf den \cmd{Arbeitsplatz} und wählen \cmd{Eigenschaften}.
Anschließend können Sie im Bereich \cmd{Erweitert} die Umgebungsvariablen bearbeiten (s. Abbildung \ref{fig:xpenvsetup}).

\begin{figure}
	\centering
	\includegraphics[width=\textwidth]{latex/images/xpenvsetup_de}
	\caption{Setup der Umgebungsvariablen in Windows XP}
	\label{fig:xpenvsetup}
\end{figure}

Konfigurieren Sie qca nun mit CMake.
Achten Sie dabei darauf, dass Sie QCA mit dem CMAKE\_BUILD\_TYPE Release konfigurieren, falls Sie \appName{} nicht mit BUILD\_DEBUG (in diesem Dokument wird \appName{} nicht mit BUILD\_DEBUG gebaut) erstellen möchten.
Anschließend können Sie es mit \textit{mingw32-make} erstellen und mit \textit{mingw32-make install} installieren.
Nach der Installation wechseln Sie in das Programmverzeichnis der QCA2-Installation (Standard: \textit{c:\textbackslash{}Programme\textbackslash{}QCA\textbackslash{}bin}) und führen\\

\cmd{qcatool2.exe plugins}\\

aus.
Die Ausgabe sollte diese Zeilen\\

Available Providers:\\
  qca-ossl\\
    This product includes cryptographic software written by Eric Young\\
    (eay@cryptsoft.com)\\

enthalten.

Im nächsten Schritt müssen Sie das MySQL-Plugin für QT erstellen.

Der letzte Schritt, bevor Sie \appName{} konfigurieren, erstellen und installieren können, ist die Installation von LibEngsas.
Um dies zu erreichen, entpacken Sie das heruntergeladene Archiv und konfigurieren es mit\\

\cmd{cmake -DBUILD\_DEV=ON ./\\
mingw32-make install}\\

Abschließend können Sie \appName{} mit\\

\cmd{cmake -DWITH\_ALL\_PLUGINS=ON \textbackslash \\
-DL10N\_ALL=ON ./ \\
mingw32-make install}\\

konfigurieren, erstellen und installieren. Zum starten der Anwendung geben Sie danach\\

\cmd{epartexe meganizer}\\

in einer Konsole ein.

\section{Installation und Konfiguration des Datenbankservers}
\label{sec:installDatabase}

\subsection{Linux}
\label{sec:installDatabaseLinux}

Dieser Abschnitt ist für Sie nur von Bedeutung, wenn Sie noch keine Datenbank eingerichtet haben, sollten Sie lediglich den Zugang zur Datenbank auf diesem Rechner noch nicht eingerichtet haben, haben aber bereits eine Datenbank für \appName{}, können Sie diesen Abschnitt überspringen.

\appName{} nutzt als Datenbanksystem MySQL, daher müssen Sie zunächst sicherstellen, dass der MySQL-Server auf Ihrem System installiert ist.
Anschließend vergewissern Sie sich, dass der Server läuft und bei jedem Systemstart gestartet wird.
Da der MySQL-Server in jeder Distribution vorhanden ist, werden die letzten beiden Aufgaben in der Regel durch die Paketverwaltung durchgeführt.

Folgen Sie nun den Schritten in \ref{sec:configureApp}, um \appName{} zu konfigurieren.
Dort können Sie auch eine leere Datenbank sowie einen Nutzer erstellen lassen.

\subsection{Mac}
\label{sec:installDatabaseMac}

Haben Sie den MySQL-Server installiert, folgen Sie den Schritten in \ref{sec:configureApp}, um \appName{} zu konfigurieren.
Dort können Sie auch eine leere Datenbank sowie einen Nutzer erstellen lassen.

\section{Konfigurieren von \appName{}}
\label{sec:configureApp}

\appName{} benutzt zur Konfiguration beim ersten Start einen Einrichtungsassistenten.
Dieser hilft Ihnen, alle nötigen Einstellungen vorzunehmen.
Der wichtigste Schritt ist die Einrichtung der Datenbankverbindung (s. Abb. \ref{fig:WizardDBSetup}).
Ist \cmd{Datenbank erstellen}, wird \appName{} Sie nach dem Administratorzugang für den Datenbankserver fragen und eine Datenbank erstellen.
Durch Aktivieren von \cmd{Nutzer erstellen} wird zusätzlich der angegebene Nutzer angelegt und mit dem eingegeben Passwort sowie den nötigen Berechtigungen ausgestattet.
Anschließend erzeugt \appName{} automatisch die nötige Datenbankstruktur bzw. aktualisiert eine vorhandene ältere.
Alle Einstellungen die Sie hier vornehmen können, können Sie auch über den Menüpunkt \cmd{Einstellungen} im Menü \cmd{Bearbeiten} erreichen.

\begin{figure}
	\centering
	\includegraphics[width=\textwidth]{latex/images/wizard-dbsetup_de}
	\caption{Die Datenbankeinstellungen im Einrichtungsassistenten}
	\label{fig:WizardDBSetup}
\end{figure}

\chapter{Grundlagen und Philosophien}

\section{Grundlegende Vorgehensweise}
\label{sec:basics}

Egal ob Sie ein Medium suchen oder ein neues anlegen möchten, Sie starten immer mit der Suche nach dem Medium.
Das dient zum einen dazu, dass Sie keine Medien mehrfach eingeben, da Sie das vorhandene Medium bereits gefunden haben sollten, bevor Sie das neue hinzufügen können.
Zum anderen dient dies dazu, die gefunden Treffer aus externen Quellen (wie Amazon) anzuzeigen, die Sie zur Datenübernahme nutzen können.
Für die Eingabe der Suchparameter steht Ihnen das Fenster Suche zur verfügung, welches sich nach dem ersten Start auf der linken Seite befindet (s. Abb. \ref{fig:GuiStart}).
Das Fenster ist wie auch einige andere Fenster ein dockbares Fenster.
Das bedeutet, dass Sie das Fenster schließen, vergrößern, verschieben und aus dem Hauptfenster herauslösen können.
Sollten Sie es geschlossen haben und benötigen es anschließend wieder, finden Sie für jedes dieser Fenster unter dem Menüpunkt \cmd{Ansicht} einen eintrag, mit dem Sie die Sichtbarkeit an und ausschalten können.
Die Anordnung und Sichtbarkeit der Fenster werden gespeichert sobald Sie \appName{} beenden.
Beim nächsten Start befinden sich die Fenster wieder in der letzten Anordnung, daher werden nicht sichtbare Fenster auch nicht wieder angezeigt.

\begin{figure}
	\centering
	\includegraphics[width=\textwidth]{latex/images/guistart_de.png}
	\caption{Programmoberfläche nach dem Start}
	\label{fig:GuiStart}
\end{figure}

Sollten Sie zu Beginn Ihrer Arbeit mit \appName{} Probleme mit der Deutung der Symbole haben, können Sie im Einstellungsdialog auswählen, dass neben dem Symbol auch ein Text angezeigt wird.
Den Einstellungsdialog erreichen Sie über den Menüpunkt Bearbeiten in der Menüleiste.

\section{Medium Identification Number}

Die MIN wird genutzt, um ein Medium (s. \ref{tab:MINOverview}) möglichst eindeutig zu identifizieren.
Dabei muss jedoch beachtet werden, dass die verschiedenen Medientypen verschiedene Nummerntypen besitzen.
So werden Bücher z.B. mit der ISBN-13 bzw. mit der ISBN-10 identifiziert.
CD's und Videos hingegen mit UPC-A Nummern.
Hinzu kommt, dass Medien weitere Nummern besitzen können, die in Ihrer vielzahl kaum zu überblicken sind.
Dabei sind insbesondere Musikstücke als Medientyp von Bedeutung, da Ihnen oft spezielle Verzeichnisnummern wie Nummern aus dem Köchelverzeichnis oder dem Bachwerkeverzeichnis zugeordnet werden.
Aus diesem Grund bietet das System einige wichtige Nummernsystem von sich aus an (s. Tab. \ref{tab:MINOverview}).
Um Ihnen jedoch die Flexibilität zu geben, auch spezielle Nummernsysteme zu nutzen, können Sie eigene Nummerntypen anlegen.
Allerdings kann das System nur bei den ausgelieferten Nummernsystemen Prüfungen und Umrechnungen durchführen.

\begin{table}
	\caption{Übersicht über verschiedene MIN's}
	\label{tab:MINOverview}
	\begin{tabular}{lp{4cm}lp{4cm}}
		\tabHead{Type} 	& \tabHead{Description} 							& \tabHead{Medias} 	& \tabHead{Convertible} \\
		\toprule
		EAN							& European Article Number 						& Alle							& ISBN-13, UPC					\\
		ISBN-13					& International Standard Book Number 	& Bücher						& ISBN-10								\\
		ISBN-10					& International Standard Book Number	& Bücher						& 											\\
		UPC							& Universal Product Code							&	CD's, Filme, DVD	& 											\\
	\end{tabular}
\end{table}

\section{Hersteller - Verschiedene Medienarten und Beziehungen zu MINs}
\label{sec:ManufacturersAndMINRanges}

Hersteller werden bei verschiedenen Medientypen unterschiedlich bezeichnet. Bei Büchern heißen sie beispielsweise Verlag, bei Musik Label usw.
Diese Unterschiede berücksichtig \appName{} in dem spezifischen Bearbeitungsdialog eines Mediums.
Darüberhinaus wird der unterschied aber ignoriert.
Daher können Sie ein Label ebenso als Verlag für ein Buch verwenden und umgekehrt.
Daher steht Ihnen ebenfalls ein zentraler Dialog zur Verfügung, um Hersteller zu bearbeiten, wie er in Abschnitt \ref{sec:EditManufacturers} erläutert ist.

In Bezug auf MINs, ist es unter umständen möglich, Hersteller mit Hilfe eines bestimmten Bereiches einer MIN eindeutig zu identifizieren.
Dies ist nicht bei allen MIN-Typen möglich, aber bei dem wichtigsten, der EAN.
Die folgenden Nummern eines Herstellers zeigen dies.

\begin{itemize}
	\item 9783404156856
	\item 9783404123544
	\item 9783785722565
	\item 9783404616138
	\item 9783404150717
\end{itemize}

Mit Ihnen ist einfach zu erkennen, dass der Hersteller mindestens durch die 9783404 (9783 steht für deutschsprachige Bücher) identifiziert werden kann.
Sobald \appName{} diese Beziehung kennt, kann es alle neu hinzugefügten Bücher, die 9783404 in ihrer MIN enthalten, automatisch diesem Hersteller zuordnen.
Die Berechnung dieser Verbindung zwischen MIN und Hersteller, wird automatisch durchgeführt, sobald Sie ein neues Medium hinzugefügt haben.
Möchten Sie sie manuell starten, klicken Sie auf \cmd{Berechne Herstellerverbindungen} unter \cmd{Bearbeiten}.
Diese Ergebnisse werden in Ihrer lokalen Datenbank abgespeichert.
Anschließend versucht \appName{} den Hersteller anhand dieser Merkmale automatisch zu erkennen.
Dieses vorgehen bietet bereits einige Vorteile und verschnellert den Hinzufügeprozess.
Allerdings hat dieses Verfahren zwei große Nachteile.
Zum einen muss jeder Nutzer erst einige Medien für jeden Hersteller hinzufügen, bevor eine Verbindung berechnet und genutzt werden kann.
Zum anderen müssen die Daten für jeden Hersteller weiterhin herausgesucht und eingepflegt werden.

Um diese Nachteile zu beheben, kann \appName{} auch eine externe Datenbank benutzen. Dafür sendet \appName{} eine Anfrage mit der aktuellen MIN an die Datenbank und erhält den Hersteller mit allen Daten zurück. Der Nutzer kann dann entscheiden, ob er diese Daten nutzt oder nicht.
Der Server wird auch genutzt, um im Dialog zur Bearbeitung von Herstellern, die Daten von neuen Herstellern zu finden.
Aber um diese Daten aus der Datenbank zu erhalten, müssen die Verbindungen zwischen MINs und Herstellern der zentralen Datenbank bekannt sein.
Daher fragt Sie \appName{}, ob er Ihre bekannten Verbindungen zwischen MINs und Herstellern, an die zentrale Datenbank senden darf.
Diese Daten enthalten keinerlei personenbezogene Daten, sondern nur die Daten über den Hersteller und die zugehörigen MIN-Bereiche (Also keine ganzen MINs, sondern nur z.B. 9783404).
Wir kontrollieren diese Daten dann und fügen sie der Datenbank hinzu.
Anschließend profitieren auch andere Nutzer von diesem Vorteil.
Daher bitten wir um Ihr Verständnis, dass \appName{} die o.g. online Abfragen nur durchführt, wenn der Datenübertragung zur zentralen Datenbank zugestimmt wurde.
Übrigens können Sie die Datenbank auch online mit Ihrem Browser unter \href{http://mins.engsas.de}{http://mins.engsas.de} abfragen.

\chapter{Benutzung}

\section{Suche nach Medien}

Die Suche nach Medien erfolgt über das Suchfenster, welches zunächst auf der linken Seite platziert ist.
Starten Sie Ihre suche mit der Auswahl des Medientyps.
Dies ist immer dann sinnvoll, wenn Sie im folgenden Ablauf ausschließlich diesen Medientyp benutzen möchten.
Durch die Wahl eines definierten Typens, werden die spezifischen Eigenschaften angezeigt und können ebenfalls bearbeitet werden.
Suchen Sie hingegen nach allen Typen, können Sie lediglich Eigenschaften bearbeiten, die alle Medientypen gemeinsam haben (z.B. Titel).
Die Suchergebnisse werden nach dem Start der Suche im Hauptfenster angezeigt.
Hierbei wird in der ersten Spalte mit einem Symbol erläutert, aus welcher Quelle das Medium stammt.
Ist es aus Ihrer Sammlung, wird dies durch das Symbol des Programmes, den Teigmann mit dem Buch, angezeigt.
Sollte das Medium aus einer externen Quelle stammen, wird das Symbol für die Quelle dargestellt (z.B. \includegraphics[height=8pt]{../../../src/searchplugins/amazon/icons/amazon} für Amazon).
Über die Suchoption ``Suchgebiet``, können Sie wählen, ob externe Quellen durchsucht werden.
Die Option Standard bedeutet, dass zunächst nach Medien gesucht wird, die Ihnen gehören.
Wird dabei kein Ergebnis erzielt, werden lokale Medien anderer Nutzer einbezogen.
Führt auch dies zu keinem Ergebnis, werden alle externen Quellen abgefragt.

\subsection{Nutzung von externen Datenquellen (wie Amazon)}

Suchplugins dienen dazu, externe Datenquellen zu durchsuchen, falls das Medium noch nicht lokal vorhanden ist. Zur Zeit kann Amazon durchsucht werden. Generell müssen jedoch zwei Schritte durchgeführt werden. Da jede Datenquelle die Medientypen anders bezeichnet, muss zunächst eine Verbindung zwischen dem Medientyp in appName{} und dem Typ in der Datenquelle hergestellt werden (s. Abb. \ref{fig:materialtypeConnect}). Diese Abfrage erscheint automatisch, falls der Suchanbieter genutzt wird und noch keine Verbindung angelegt ist. Sollten Sie die Verbindung nachträglich ändern wollen, können Sie dies über den Einstellungsdialog im \cmd{Bearbeiten}-Menü und dem jeweiligen Suchanbieter durchführen.

\begin{figure}
	\centering
	\includegraphics[width=\textwidth]{latex/images/materialtype-connect_de}
	\caption{Verbindung der Medientypen zwischen \appName{} und einem Suchanbieter}
	\label{fig:materialtypeConnect}
\end{figure}

Als zweiten Schritt müssen noch besondere Eigenschaften des Medientyps in \appName{} und dem Medientyp in der Datenquelle verbunden werden. Das ist nötig, da die Plugins keine Kenntnisse über die speziellen Eigenschaften des Medientyps in \appName{} haben und jede Datenquelle andere Daten anbietet. So kann mit Amazon z.B. bei einem Buch die Seitenzahl ermittelt werden, dass Genre oder der Veröffentlichungsort aber nicht. Um dieser Vielfalt gerecht zu werden, müssen Eigenschaften der Medien, die nicht standardisiert sind (wie z.B. Titel, Genre, Hersteller) verbunden werden. Dies geschieht im gleichen Bereich des Einstellungsdialog oder ebenfalls bei der ersten Suchanfrage. In diesem Dialog wählen Sie ein Attribut des Medientyps und ein passendes des Suchanbieters. Anschließend klicken Sie auf Verbinden (s. Abb. \ref{fig:mediaAttributesConnect}). Sollten Sie eine Verbindung lösen wollen, wählen Sie die Verbindung aus und klicken auf das rote Minuszeichen. Anschließend können Sie die frei gewordenen Eigenschaften neu verbinden.

\begin{figure}
	\centering
	\includegraphics[width=\textwidth]{latex/images/mediaattributes-connect_de}
	\caption{Verbindung von Medienattributen}
	\label{fig:mediaAttributesConnect}
\end{figure}

\subsection{Medienlisten exportieren}
\label{sec:MediaExport}

Möchten Sie eine Liste von Medien exportieren, wählen Sie eine Suchabfrage, die alle Medien enthält, die epxortiert werden sollen. Anschließend können Sie wie üblich eine Auswahl dieser Liste markieren oder alle auswählen in dem Sie Strg+A drücken (Es werden auch alle Einträge exportiert, falls kein Eintrag ausgewählt ist). Die markierten Einträge können dann durch einen Klick auf \cmd{Exportieren} im Kontextmenü oder in der Symbolleiste exportiert werden. Zur Zeit steht ein Export in das HTML- und das OpenDocument-Format zur Verfügung.

\section{Ein neues Medium hinzufügen}

Das hinzufügen neuer Medien beginnt wie schon in \ref{sec:basics} beschrieben, mit der Suche nach dem entsprechendem Medium.
Dabei sollten Sie zunächst den gewünschten Medientyp auswählen.
Nach der Suche erscheinen die Funde wie gewohnt im Hauptfenster.
Möchten Sie nun eines der angezeigten Ergebnisse hinzufügen, wählen Sie es mit einem Linksklick aus und klicken anschließend im Kontextmenü auf \cmd{Auswahl hinzufügen}.
Alternativ können Sie auch in der Symbolleite auf \cmd{Auswahl hinzufügen} klicken.
Danach öffnet sich das Fenster für Details.
Hier sollten Sie alle Angaben sorgfältig überprüfen bzw. ergänzen, da diese Angaben entscheidend sind, dass Sie das Medium später wiederfinden.
Durch einen Klick auf Ok wird das Medium nun eingefügt und es erscheint das \appName{}-Symbol in der ersten Spalte.
Sollte kein Suchergebnis vorhanden oder zutreffend sein, können Sie durch klick auf \cmd{Neues Medium} in der Symbolleiste oder im Kontextmenü, ein neues Medium hinzufügen.
Dabei befinden Sie sich direkt im leeren Detailfenster des neuen Mediums.

\section{Medien bearbeiten}

Die Bearbeitung von Medien erfolgt über den bereits bekannten Detaildialog für Medien.
Diesen erreichen Sie nach der Auswahl des Mediums über \cmd{Bearbeiten} im Kontextmenü oder in der Symbolleiste.

\section{Virtuelle Medien verwalten}

Virtuelle Medien sind in \appName{} Medien, die zwar in der Datenbank vorhanden sind, aber physisch nicht existieren.
Dies sind zum Beispiel Bücher, die Sie angelegt haben und als Wunsch markiert haben.
Darunter können aber auch Geschenkideen und Medien für Literaturlisten fallen.

\subsection{Wünsche}

In \appName{} bedeutet ein Wunsch, dass sich der \cmd{Eigentümer} des Mediums dieses wünscht.
Möchten Sie hingegen ein Medium jemand anderem schenken, wird es hier als Geschenkidee bezeichnet.
Wünsche beziehen sich demnach immer auf den jeweiligen Eigentümer.
Um ein Medium als Wunsch zu markieren, wechseln Sie in das Detailfenster des Mediums und aktivieren das Kästchen im Reiter \cmd{Eigene Details} hinter \cmd{Wunsch}. Ihre Wünsche können Sie schnell finden, indem Sie im Suchfenster unter \cmd{Status} \cmd{Wünsche} auswählen. Wie Sie diese Liste exportieren, erfahren Sie in \ref{sec:MediaExport}.

\subsection{Geschenkideen}

Haben Sie eine Geschenkidee, können Sie diese ebenfalls in \appName{} verwalten. Dazu stellen Sie zunächst sicher, dass Sie die beschenkte Person als Nutzer in der Datenbank angelegt haben. Öffnen Sie dazu den Nutzerdialog, indem Sie auf \cmd{Nutzer} im \cmd{Datei}-Menü klicken. Es öffnet sich ein Dialog zur Nutzerbearbeitung, dessen Grundaufbau den Dialogen entspricht, die in \ref{sec:ManageData} näher beschrieben ist. Wenn Sie einen neuen Nutzer anlegen, ist es wichtig, dass Sie keinen Nutzernamen eingeben, wenn der Nutzer die Datenbank nicht auch benutzt. Geben Sie einen Nutzernamen ein, obwohl der Nutzer keinen Zugang hat, können Sie keine Ausleihvorgänge in \appName{} von Medien dieses Nutzers durchführen.

Haben Sie den Nutzer angelegt, fügen Sie zunächst das Medium in die Datenbank ein, falls es nicht bereits enthalten ist. Anschließend wechseln Sie in das Detailfenster des Mediums dort auf den Reiter \cmd{Sonstiges} (s. Abb. \ref{fig:PresentIdeas}). Dort können Sie auf der rechten Seite Nutzer auswählen und durch einen Klick auf den Pfeil nach links als Geschenkempfänger markieren. Besitzen Sie das Medium selbst nicht, aktivieren Sie noch das Kästchen hinter \cmd{Nur Geschenk}. Dadurch wird das Medium nicht nur als Geschenk, sondern auch als virtuelles Medium markiert. Sollten Sie einen Empfänger entfernen wollen, wählen Sie den Nutzer aus und klicken auf den Pfeil nach rechts.

\begin{figure}
	\centering
	\includegraphics[width=\textwidth]{latex/images/details-present_de}
	\caption{Medium als Geschenkidee markieren}
	\label{fig:PresentIdeas}
\end{figure}

Haben Sie das Geschenk an den Empfänger übergeben, können Sie das Geschenk ebenfalls als übergeben markieren.
Dabei wird der Beschenkte automatisch als Eigentümer des Mediums hinzugefügt.
Ist das Medium zusätzlich als \cmd{Nur Geschenk} markiert, wird das Medium aus Ihrer Liste entfernt.
Außerdem wird der Empfänger nicht mehr in der Liste der potentiellen Geschenkempfänger für dieses Medium aufgelistet.
Durchführen können Sie diesen Schritt, in dem Sie im Detailsfenster im Reiter \cmd{Sonstiges} auf den Empfänger mit der rechten Maustaste klicken und im Kontextmenü \cmd{Bereits Übergeben} auswählen.

Möchten Sie alle Ihre Geschenkideen anzeigen, wählen Sie im Suchfenster als \cmd{Status} \cmd{Wünsche und Geschenke} aus. Diese Liste können Sie auch wie in \ref{sec:MediaExport} beschrieben, exportieren. Übrigens sind die eingetragenen Geschenke nicht für die beschänkte Person sichtbar.

\subsection{Literatur}

Unter Literatur wird ein Medium verstanden, dass in einem Projekt verwndet wird. Ein Projekt kann z.B. eine Studienarbeit oder ein Artikel oder alles andere sein, wofür Sie andere Medien verwenden. Um ein neues Projekt anzulegen oder um die einem Projekt zugeordneten Medien anzulegen, klicken Sie im \cmd{Datei}-Menü auf \cmd{Projekte}. Dieser Dialog verhält sich ähnlich wie die in \ref{sec:ManageData} beschriebenen. Suchen Sie ein bestimmtes Projekt, können Sie im Filter einen bestandteil des Namens eingeben. In der Liste darunter sehen Sie sofort die passenden Projekte (s. Abb. \ref{fig:ProjectsProject}).

\begin{figure}
	\centering
	\includegraphics[width=\textwidth]{latex/images/projects-project_de}
	\caption{Die Projektverwaltung in Meganizer}
	\label{fig:ProjectsProject}
\end{figure}

Zum Anlegen eines neuen Projektes, klicken Sie unten auf \cmd{Neu}. Jetzt ist die rechte Seite des Fensters aktiviert und Sie können die Eigenschaften des Projektes ändern. Der Projektname ist dabei eine Pflichteingabe. Führt Ihr Projekt zu einem neuen Medium, welches ebenfalls in \appName{} vorhanden ist, können Sie dieses als Ergebnis auswählen. Haben Sie die Angaben ausgefüllt, klicken Sie unten auf \cmd{Speichern}. Nun können Sie im Reiter \cmd{Materialien} Medien zu Ihrem Projekt hinzufügen und zu jedem Material einen Kommentar eingeben. Durch einen Klick auf das grüne Plus zeichen, fügen Sie Materialien hinzu, währen Sie mit dem roten Minuszeichen, das gewählte Material entfernen (s. Abb. \ref{fig:ProjectsMediaList}).

\begin{figure}
	\centering
	\includegraphics[width=\textwidth]{latex/images/projects-medialist_de}
	\caption{Für das Projekt verwendete Medien}
	\label{fig:ProjectsMediaList}
\end{figure}

Sollten Sie das Material selbst nicht besitzen und es lediglich als Literatur für ein Projekt dienen, können Sie es im Detailfenster unter \cmd{Eigene Details} als \cmd{Literatur} markieren.

\section{Medien kaufen}

Es ist möglich direkt in \appName{} Medien zu erwerben. Zur Zeit steht Ihnen dazu Amazon als Verkäufer zu Verfügung. Sie können jedes Medium kaufen, auch wenn es nicht in der Datenbank vorhanden ist. Wichtig ist, dass es entweder lokal oder bei einem Suchanbieter gefunden wird. Zum Kauf wählen Sie das Medium aus und klicken entweder in der Symbolleiste oder im Kontextmenü auf \cmd{Kaufen}. Darauf hin öffnet sich auf der rechten Seite Ihr Warenkorb (s. Abb. \ref{fig:ShoppingCart}). Darin wird Ihnen angezeigt, welche Medien Sie in welcher Anzahl und zu welchem Preis zum Kauf gewählt haben. Weiterhin wird Ihnen bei jedem Medium unten rechts ein Logo des Verkäufers angezeigt. Die Farbe des Eintrages zeigt Ihnen die Verfügbarkeit an. Rot bedeutet, der Artikel ist bei keinem Anbieter verfügbar. Orange bedeutet, er ist nicht in ausreichender Stückzahl verfügbar. Grün zeigt an, dass der Artikel in ausreichender Menge angeboten wird. Ist das Feld gepunktet, bedeutet es, dass der Gegenstand gebraucht ist. Welche Angebote des Suchanbieters genutzt werden, können Sie in den jeweiligen Einstellungen im Einstellungsdialog verändern. Per Standard werden nur Neuwaren von Originalhändlern (z.B. nur Amazon und keine Amazon Marketplace Händler) einbezogen.

\begin{figure}
	\centering
	\includegraphics[height=15cm]{latex/images/shoppingcart_de}
	\caption{Der Warenkorb}
	\label{fig:ShoppingCart}
\end{figure}

Möchten Sie die Menge eines Produktes erhöhen, wöhlen Sie es aus und drücken auf +. Alternativ können Sie auch das Kontextmenü nutzen. Dies gilt auch für das Verringern der Menge, was Sie mit Drücken der --Taste erreichen. Zum Entfernen drücken Sie \cmd{Entf}. Im  Kontextmenü können Sie ebenfalls den genutzten Anbieter bzw. das genutzte Angebot bei einem Anbieter wählen. Normalerweise versucht \appName{} im \cmd{auto} Modus, den gesamten Warenkorb möglichst günstig zu halten. Dabei wird auch versucht, die Versandkosten mit einzubeziehen.

Haben Sie alle Waren in der gewünschten Menge im Warenkorb, können Sie mit einem Klick auf \cmd{Kaufen} den Kaufvorgang starten. Dadurch werden die Waren in der gewählten Menge in Ihren Warenkorb des Anbieters gelegt und Sie anschließend auf die Seite Webseite des Warenkorbes weitergeleitet.

\section{Medien Verleihen}

Sie können den Verleihvorgang von Medien in \appName{} nachvollziehen.
Auf diese Weise können Sie zum einen Ihre ausgeliehenen Medien und zum anderen Ihre verliehenen Medien verwalten.
Die Vorgänge werden über einen speziellen Dialog vorgenommen. Sie erreichen ihn entweder in dem Detailfenster des Mediums unter \cmd{Leihe} (s. Abb. \ref{fig:Loaning}) oder im Kontextmenü des Mediums bzw. über die Symbolleiste.
Dort können Sie den gesamten Prozess durchlaufen.
Die \cmd{Zusammenfassung} nach Programmstart (Sie können sie auch jederzeit über das Menü \cmd{Ansicht} erreichen) zeigt Ihnen einen Status aller Verleihprozesse an, die Sie betreffen.

\begin{figure}
	\centering
	\includegraphics[width=\textwidth]{latex/images/loanmedium_de}
	\caption{Medien leihen und verleihen}
	\label{fig:Loaning}
\end{figure}

\section{Daten für Medien verwalten}
\label{sec:ManageData}

Daten für Medien sind zum Beispiel Personen und Genres, die für verschiedene Medien benötigt werden (auch Fremdschlüssel genannt).
Zur Bearbeitung dieser Daten stehen Ihnen Dialoge zur Verfügung, die alle ähnlich aufgebaut sind (s. Abb. \ref{fig:DialogGenres}).
Auf der linken Seite finden Sie eine Liste der vorhandenen Daten (in diesem Fall die existierenden Genres).
Suchen Sie ein bestimmtes Datum, können Sie durch die Eingabe eines Filters die Liste verkleinern (s. Abb. \ref{fig:DialogGenresFilter}).

Möchten Sie nun einen Eintrag anschauen, wählen Sie ihn durch einen Klick mit der linken Maustaste aus.
Auf der rechten Seite des Dialogs wird nun der vollständige Eintrag angezeigt.
Möchten Sie den Eintrag ändern, klicken Sie auf \cmd{Bearbeiten}.
Möchten Sie das Ergebnis speichern, klicken Sie anschließend auf \cmd{Speichern}.
Dadurch werden die Änderungen in die Datenbank übertragen.
Gleichzeitig wird der Filter auf den Wert des geänderten Eintrages geändert.
Dies dient dazu, den geänderten Eintrag automatisch zu wählen.
Möchten Sie die Änderungen verwerfen, klicken Sie einfach auf einen anderen Eintrag aus der Liste ohne auf \cmd{Speichern} zu klicken.\\
Möchten Sie einen neuen Eintrag hinzufügen, klicken Sie auf \cmd{Neu}.
Dabei wird der Eintrag des Filters übernommen.
Zum Speichern der Ergebnisse klicken Sie ebenfalls auf \cmd{Speichern}.

\begin{figure}
	\centering
	\includegraphics[width=\textwidth]{latex/images/genres_de}
	\caption{Der Dialog zur Bearbeitung von Genres}
	\label{fig:DialogGenres}
\end{figure}

\begin{figure}
	\centering
	\includegraphics[width=\textwidth]{latex/images/genres-gefiltert_de}
	\caption{Vorhandene Einträge filtern}
	\label{fig:DialogGenresFilter}
\end{figure}

Diese Dialoge werden automatisch angezeigt, wenn Sie ein Medium in die Datenbank einfügen, dessen Fremdschlüssel nicht eindeutig aufgelöst werden können oder noch nicht in der Datenbank vorhanden sind.
In diesem Fall wird der Filter auf den aktuellen Eintrag des Mediumss gesetzt.
Wird daraufhin in der Liste kein Eintrag angezeigt, kontrollieren Sie bitte genau, ob der Fremdschlüssel nicht doch bereits vorhanden ist und sich nur die Schreibweise leicht unterscheidet.
Dies können Sie erreichen, in dem Sie den Filter entsprechend anpassen.
Sollten Sie einen passenden Eintrag gefunden haben, wählen Sie ihn mit der linken Maustaste aus und klicken Sie auf \cmd{Ok}.
Ist der Eintrag noch nicht vorhanden, erstellen Sie ihn wie oben beschrieben \cmd{Neu}.
Anschließend wählen Sie ihn ebenfalls aus und klicken auf \cmd{Ok}.
Möchten Sie das Medium doch nicht einfügen, klicken Sie auf \cmd{Abbrechen}.

\subsection{Personen und Rollen}

Sie können einem Medium Personen zuordnen, die mit dem Medium in Verbindung stehen. Dies können Autoren, Herausgeber, Komponisten, Dirigenten, Orchester und viele andere sein.
Die Verbindungsart wird innerhalb \appName{} als Rolle bezeichnet.
Die gängisten Rollen werden durch die Medienplugins automatisch erzeugt.
So erzeugt zum Beispiel das Buchplugin automatisch die Rolle des Autoren.
Da die Rollenvielfalt jedoch sehr groß ist, können und sollten Sie sich weitere Rollen hinzufügen.
Den dafür nötigen Dialog erreichen Sie über \cmd{Datei} -> \cmd{Rollen} oder durch Klick auf \cmd{Neue Rolle} im Detailsfenster für Medien.

\subsection{Hersteller}
\label{sec:EditManufacturers}

Jedem Medium müssen Sie einen Hersteller zuordnen.
Im Detailfenster der Medien wird dieser allerdings unter der jeweiligen Bezeichnung für den Medientyp aufgelistet.
Für ein Buch wäre dies der Verlag.
Intern unterscheidet die Datenbank diese Bezeichnung nicht, daher stehen Ihnen bei allen Medientypen alle Hersteller zur Verfügung.
Dies begründet auch, dass der Menüeintrag des Dialogs im Dateimenü allgemein Hersteller lautet.
Sie können den Dialog ebenfalls über den Suchknopf hinter dem Herstellereintrag im Detailfenster für Medien erreichen.

Mit einem Klick auf den grünen, kreisrunden Pfeil, können Sie ferner eine online Abfrage mit dem eingegebenen Namen durchführen.
Dabei können Sie auswählen, ob alle Daten überschrieben werden, oder nur leere Felder ausgefüllt werden.
Sollte dieser Knopf nicht verfügbar sein, haben Sie evtl. deaktiviert, dass die Verbindungen zwischen MINs und Herstellern an die zentrale Datenbank gesendet werden.
Dies können Sie im Einstellungsdialog ändern.
Lesen Sie auch Abschnitt \ref{sec:ManufacturersAndMINRanges} für weitere Details.

\subsection{Genre}

Für Genres gilt ebenfalls, dass Sie unabhängig vom Medientyp sind.
Der Dialog kann ebenfalls über das Dateimenü und über das Detailsfenster für Medien erreicht werden.

\section{Datenbank Sicherung und Wiederherstellung}

Möchten Sie eine Sicherung der Datenbank vornehmen, rufen Sie den Dialog \cmd{Datenbank Sicherung} unter \cmd{Bearbeiten} auf. Im erscheinenden Dialog wählen Sie zunächst eine Datei aus, in der die Sicherung erstellt werden soll. Anschließend klicken Sie auf \cmd{Export}. Daraufhin wird eine SQL-Datei erstellt, die die gesamte Datenbank enthält.

Da aktuell die Wiederherstellung noch nicht grafisch unterstützt wird, müssen Sie sich zunächst mit Ihrem Datenbank nutzer an der MySQL-Konsole anmelden und eine leere Datenbank erstellen (s. auch \ref{sec:installDatabase}). Die Daten aus der SQL-Datei können Sie dann mit\\

use NAME\_DER\_LEEREN\_DATENBANK;\\
source PFAD\_ZUR\_SQL-DATEI;\\

einlesen.

\section{Nutzung externer Dateitypen}

\end{document}