88 lines
4.9 KiB
TeX
88 lines
4.9 KiB
TeX
\chapter{Anforderungen}\label{ch:anforderungen}
|
|
|
|
\section{Laufzeitumgebung}
|
|
\subsection{Sprachen}
|
|
Wie bereits erwähnt wurden bei diesem Projekt nur die Sprachen \gls{html}, \gls{css} und JavaScript verwendet
|
|
|
|
\subsection{Keine Bibliotheken}
|
|
Auf JavaScript Bibliotheken und Frameworks wie \glqq jQuery\grqq, \glqq React\grqq~oder \glqq Angular\grqq~wurde verzichtet.
|
|
Stattdessen wurden native JavaScript-Funktionen verwendet.
|
|
|
|
Auch das \gls{html}- bezieziehungsweise \gls{css}-Framework \glqq Bootstrap\grqq~wurde nicht verwendet.
|
|
|
|
|
|
\section{Sicherheit}
|
|
\subsection{Authentifizierung}
|
|
Damit nicht jede Person zugang zu den Daten hat, muss der Benutzer sich authentifizieren.
|
|
Dafür wird beim starten der Webapp ein Login-Fenster angezeigt.
|
|
Sollte der Login am Server erfolgreich sein, wird der generierte Token in Session Storage gespeichert.
|
|
Das hat zur Folge, das der Login spätestens mit dem beenden der Browser-Session ungültig gemacht wird.
|
|
|
|
\subsection{Logout}
|
|
Der Logout wird zum einen vom Server automatisch durchgeführt, wenn seit 600 Sekunden keine Aktivität mehr erkannt wurde.
|
|
Des Weiteren wird im Browser beim Login und bei jeder Aktivität ein Timeout gesetzt, sodass der Token in Session Storage automatisch nach diesen 600 Sekunden gelöscht wird.
|
|
|
|
\section{Darstellung}
|
|
\subsection{Anpassung an Browserfenstern}
|
|
Da es unterschiedliche Bildschirme gibt, ist der Inhalt der App nicht überall gut lesbar.
|
|
Deshalb wurde mittels \gls{css} \glqq Media queries\grqq~dafür gesorgt, dass bei schmalen Geräten die Baum-Ansicht unter der Verzeichnis-Ansicht angezeigt wird.
|
|
Dadurch wird sichergestellt, dass auf Smartphones, die sowieso schon wenig Platz in der Breite haben, nicht noch mehr Platz \glqq verschwendet\grqq~wird.
|
|
|
|
\subsection{Usability}
|
|
Der Dateimanager ist von der Grundstruktur ähnlich aufgebaut wie der \glqq Windows Explorer\grqq~unter Windows oder \glqq Nautilus\grqq~unter Linux.
|
|
Nutzer, die diese Dateimanager schon genutzt haben, finden sich in der Webapp schnell zurecht.
|
|
|
|
\subsection{Fehlererkennung}
|
|
Auch wenn es eigentlich nicht vorkommen sollte, kann es immer wieder zu Fehlern kommen, weil die angefragte Datei zum Beispiel gelöscht wurde.
|
|
Die Fehlermeldungen des Servers werden von der App abgefangen und angezeigt.
|
|
|
|
\subsection{Verzeichnisse \& Dateitypen}
|
|
Verzeichnisse und Dateitypen werden in der Verzeichnisansicht durch unterschiedliche Icons angezeigt.
|
|
So wird sichergestellt, dass der Benutzer schnell herausfinden kann, um was es sich handelt.
|
|
|
|
\section{Navigation}
|
|
Die Navigation ist entweder über den Verzeichnis-Baum links beziehungsweise unten oder über die Datei-Ansicht rechts oder oben möglich.
|
|
Um sich ein Verzeichnis nach oben zu bewegen, kann \glqq ..\grqq~verwendet werden.
|
|
Um ein oder mehrere Verzeichnisse nach oben zu gehen, kann der Pfad oberhalb der Dateien verwendet werden.
|
|
|
|
\subsection{Verzeichnis öffnen}
|
|
Um ein Verzeichnis zu öffnen, kann das entsprechende Verzeichnis in der Verzeichnisansicht angeklickt werden.
|
|
|
|
\section{Datei-Handling}
|
|
\subsubsection{MP4-Video-Datei abspielen}
|
|
Der Dateimanager kann mp4-Video-Dateien abspielen, indem diese in der Verzeichnisansicht angeklickt werden.
|
|
|
|
\subsubsection{Audio-Datei abspielen}
|
|
Der Dateimanager kann Audio-Dateien abspielen, indem diese in der Verzeichnisansicht angeklickt werden.
|
|
|
|
\subsubsection{Bild-Datei ansehen}
|
|
Der Dateimanager kann Bild-Dateien anzeigen, indem diese in der Verzeichnisansicht angeklickt werden.
|
|
|
|
\subsubsection{Text-Datei bearbeiten}
|
|
Der Dateimanager kann Text-Dateien bearbeiten, indem diese in der Verzeichnisansicht angeklickt werden.
|
|
Im neuen Fenster kann der Inhalt der Datei bearbeitet werden und wird mit einem Klick auf \glqq Save\grqq~gespeichert.
|
|
|
|
\subsubsection{Datei herunterladen}
|
|
Eine Datei kann heruntergeladen werden, indem in der Verzeichnisansicht das Kontextmenü mittels Rechtsklick geöffnet wird.
|
|
|
|
\subsubsection{Datei löschen}
|
|
Eine Datei kann gelöscht werden, indem in der Verzeichnisansicht das Kontextmenü mittels Rechtsklick geöffnet wird.
|
|
|
|
\subsubsection{Text-Datei erstellen}
|
|
Um eine Text-Datei zu erstellen muss unten rechts über das \glqq +\grqq-Icon gehovert werden.
|
|
Bei den neu angezeigten Icons das zweite von oben anklicken, um die Datei zu erstellen.
|
|
Im Header des neuen Fensters kann der Dateiname festgelegt werden.
|
|
Der Rest ist gleich, wie beim bearbeiten von Text-Dateien.
|
|
|
|
\subsubsection{Datei hochladen}
|
|
Um eine Datei hochzuladen muss unten rechts über das \glqq +\grqq-Icon gehovert werden.
|
|
Bei den neu angezeigten Icons das dritte von oben anklicken, um die Datei hochzuladen.
|
|
|
|
\section{Verzeichnis-Handling}
|
|
\subsection{Verzeichnis löschen}
|
|
Ein Verzeichnis kann gelöscht werden, indem in der Verzeichnisansicht das Kontextmenü mittels Rechtsklick geöffnet wird.
|
|
|
|
\subsection{Verzeichnis erstellen}
|
|
Um ein Verzeichnis zu erstellen, muss unten rechts über das \glqq +\grqq-Icon gehovert werden.
|
|
Bei den neu angezeigten Icons das oberste anklicken, um das Verzeichnis zu erstellen.
|