From e639c2788805fce3f6c266f48444db3099906586 Mon Sep 17 00:00:00 2001
From: ulrich <undisclosed>
Date: Tue, 03 Apr 2018 16:40:30 +0000
Subject: [PATCH] collectFiles als API-Methode hinzugefuegt

---
 README.md |   63 ++++++++++++++++++++++++-------
 1 files changed, 48 insertions(+), 15 deletions(-)

diff --git a/README.md b/README.md
index 0de2dac..1b99dce 100644
--- a/README.md
+++ b/README.md
@@ -1,22 +1,43 @@
 # Dateiverwaltung
 
-Die Dateiverwaltung ist eine Webanwendung, die eine Bedienoberfläche und Funktionen zur Verwaltung von Dateien auf einem [Tomcat Servlet Container] (http://tomcat.apache.org) bereitstellt.
+Eine Bedienoberfläche zur Bearbeitung und Verwaltung von Dateien für die [WebBox](/data/ulrich/prg/webbox).  
 
 ## Funktionen
 
-Die Dateiverwaltung stellt die folgenden Funktionen bereit
+Die Dateiverwaltung besitzt die folgenden Funktionen
 
-- hier
-- Funktionen
-- auflisten
+- Persönliches und öffentliches Verzeichnis je Benutzer
+- Auflisten von Verzeichnissen und ihrer Inhalte
+- Ansehen der Datei-Inhalte
+- Erstellen und Bearbeiten von Texten und Dokumenten
+- Dateien und Ordner kopieren, verschieben und löschen
+- Hochladen per Drag and Drop direkt in Ordner
+- Listen- und Kachelansicht
 
-Die Bedienoberfläche passt sich an verschiedene Geräteausstattungen an (responsiv).
+Die Bedienoberfläche passt sich an verschiedene Geräteausstattungen an (responsiv). Weitere Informationen zur Dateiverwaltung finden sich auf der [Produktseite](/data/ulrich/prg/file-cms).
 
-Weitere Informationen zur Dateiverwaltung finden sich auf der Produktseite (Link noch angeben...).
+### Konfiguration
+
+Die Dateiverwaltung erhält den Ablageort von Dateien über den JNDI-Eintrag
+
+````
+<Environment  
+  name="wbxFileBase"
+  type="java.lang.String"
+  value="/pfad/zu/den/daten"
+  override="false"
+/>
+````
+
+Wenn die Angabe `wbxFileBase` wie oben als JNDI-Parameter angegeben wird, kann sie beispielsweise in der Datei `$CATALINA_BASE/context.xml` hinterlegt werden.
+
+#### Automatische Ermittlung des Ablageortes
+
+Ist die Angabe `wbxFileBase` nicht zu finden oder leer, wird der Ablageort `../../../daten` ausgehend von `$CATALINA_BASE/webapps` verwendet. Wenn also z.B. das webapps-Verzeichnis in `/usr/local/tomcat/webapps` liegt, dann wird das Datenverzeichnis der Dateiablage in `/usr/daten` vermutet. Liegt es stattdessen in `/media/extmirror/srv/wbx/sys/base/webapps` dann lautet der Datenpfad `/media/extmirror/srv/wbx/daten`.
 
 ## Webanwendung herstellen
 
-Zum Herstellen der Webanwendung wird ein Java Development Kit (JDK) benötigt, wie es z.B. von [Azul](http://azul.com) oder dem [OpenJDK-Projekt](http://openjdk.java.net/) erhältlich ist. In der hier folgenden weiteren Beschreibung wird der lokale Ablageort des Java Development Kits `$JDK` genannt.
+Zum Herstellen der Webanwendung wird ein Java Development Kit (JDK) benötigt, wie es z.B. von [Azul](http://azul.com) oder dem [OpenJDK-Projekt](http://openjdk.java.net/) frei erhältlich ist. In der hier folgenden weiteren Beschreibung wird der lokale Ablageort des Java Development Kits `$JDK` genannt.
 
 Desweiteren werden die folgenden Klassenbibliotheken benötigt
 
@@ -28,8 +49,9 @@
 Tomcat .............. lib/servlet-api.jar ........... $CATALINA_HOME
 XStream ............. xstream-1.4.7.jar ............. $JLIB
 Jettison ............ jettison-1.3.3.jar ............ $JLIB
+Thumbnailator ....... thumbnailator.jar ............. $CATALINA_BASE
+wbx-lib ............. wbx-lib.jar ................... $CATALINA_BASE
 Transit ............. Transit.jar ................... $JLIB
-FileSystem .......... FileSystem.jar ................ $JLIB
 ```
 Diese sind an folgenden Orten frei erhältlich:
 
@@ -37,12 +59,13 @@
 - [Apache Tomcat](http://tomcat.apache.org)
 - [XStream](https://github.com/codehaus/xstream)
 - [Jettison](https://github.com/codehaus/jettison)
-- [Transit](/gitblit/summary/Transit.git)
-- [FileSystem] (/gitblit/summary/FileSystem.git)
+- [Thumbnailator](https://github.com/coobird/thumbnailator)
+- [Transit](/gitblit/docs/Transit.git)
+- [wbx-lib](/gitblit/docs/wbx-lib.git)
 
 Nach Beschaffung des JDK und der oben angegebenen Klassenbibliotheken wird der Quellcode aus diesem Git-Repository an einen frei wählbaren lokalen Ablageort [heruntergeladen](http://uhilger.de/gitblit/zip/?r=file-cms.git&h=master&format=zip) und entpackt. In der hier folgenden weiteren Beschreibung wird das so entstandene Verzeichnis `file-cms-master` einschließlich des absoluten Pfades dorthin `$FILE-CMS` genannt. Ferner wird angenommen, dass die oben aufgeführten Klassenbibliotheken lokal an Orten abgelegt sind, deren Pfade mit den Platzhaltern `$JLIB` und `$CATALINA_HOME` gemeint sind. Anstelle der Platzhalter in den folgenden Kommandos muss also der absolute Pfad des lokalen Ablageortes eingesetzt werden.
 
-Zur Herstellung der WebBox-Verwaltung werden die folgenden Kommandos ausgeführt (Beispiel für Linux):
+Zur Herstellung der Dateiverwaltung werden die folgenden Kommandos ausgeführt (Beispiel für Linux):
 
 ```
 cd $FILE-CMS
@@ -55,7 +78,7 @@
 cd ../..
 cp $JLIB/* build/WEB-INF/lib
 
-$JDK/bin/javac -classpath $JLIB/commons-fileupload-1.3.2.jar:$JLIB/commons-io-2.5.jar:$JLIB/jettison-1.3.3.jar:$JLIB/Transit.jar:$JLIB/FileSystem.jar:$JLIB/xstream-1.4.7.jar:$CATALINA_HOME/lib/servlet-api.jar -d ./build/WEB-INF/classes src/java/de/uhilger/filecms/api/*.java src/java/de/uhilger/filecms/web/*.java src/java/de/uhilger/filecms/pub/*.java
+$JDK/bin/javac -classpath $JLIB/commons-fileupload-1.3.2.jar:$JLIB/commons-io-2.5.jar:$JLIB/jettison-1.3.3.jar:$JLIB/Transit.jar:$JLIB/xstream-1.4.7.jar:$CATALINA_HOME/lib/servlet-api:$CATALINA_BASE/lib/thumbnailator.jar:$CATALINA_BASE/lib/wbx-lib.jar.jar -d ./build/WEB-INF/classes src/java/de/uhilger/filecms/api/*.java src/java/de/uhilger/filecms/web/*.java src/java/de/uhilger/filecms/pub/*.java
 
 cp src/java/logging.properties build/WEB-INF/classes
 $JDK/bin/jar -cf dist/file-cms.war -C build .
@@ -63,6 +86,8 @@
 ```
 
 Das Webarchiv der Dateiverwaltung liegt anschließend als `$FILE-CMS/dist/file-cms.war` fertig zum Deployment bereit.
+
+Die im obigen Build-Skript bereits mit `$CATALINA_BASE` gekennzeichneten Klassenbibliotheken werden nicht als Teil des Webarchivs der Dateiverwaltung gebaut und im Verzeichnis `$CATALINA_BASE/lib` der WebBox erwartet.
 
 ### Distributionsalternative
 
@@ -74,10 +99,14 @@
 
 ```
 $CATALINA_BASE/webapps/jslib/bootstrap ............ mindestens in Version 4.0 alpha 6
-$CATALINA_BASE/webapps/jslib/jquery ............... mindestens in Version 1.11.1
+$CATALINA_BASE/webapps/jslib/jquery ............... mindestens in Version 3.2.1
 $CATALINA_BASE/webapps/jslib/mustache ............. mindestens in Version 2.3.0
 $CATALINA_BASE/webapps/jslib/font-awesome ......... mindestens in Version 4.4.0
 $CATALINA_BASE/webapps/jslib/codemirror ........... mindestens in Version 5.24.2
+$CATALINA_BASE/webapps/jslib/tinymce .............. mindestens in Version 4.3.4
+$CATALINA_BASE/webapps/jslib/fancybox ............. mindestens in Version 3
+$CATALINA_BASE/webapps/jslib/moment ............... mindestens in Version 2.8.1
+$CATALINA_BASE/webapps/jslib/numeral .............. mindestens in Version 2.0.6
 ```
 
 `$CATALINA_BASE` meint das in der der Datei [RUNNING.txt](http://tomcat.apache.org/tomcat-8.5-doc/RUNNING.txt) der Tomcat-Dokumentation so bezeichnete Verzeichnis. Nachfolgend die Quellen, von denen die obigen Abhängigkeiten bezogen werden können:
@@ -87,7 +116,11 @@
 - [Mustache](https://github.com/janl/mustache.js)
 - [Font Awesome](http://fontawesome.io/)
 - [Codemirror](https://codemirror.net)
+- [TinyMCE](https://tinymce.com)
+- [Fancybox](http://fancyapps.com/fancybox/3/)
+- [Moment](http://momentjs.com/)
+- [Numeral](http://numeraljs.com/)
 
 ## Lizenz
 
-Die Dateiverwaltung wird zu den Bedingungen der [GNU Affero General Public License](/gitblit/doc/file-cms.git/master/web!agpl.txt) bereitgestellt. Die von der Dateiverwaltung verwendeten Komponenten unterliegen zum Teil anderen Lizenzen. Deren Nutzungsbedingungen sind an den Quellen der Komponenten angegeben.
\ No newline at end of file
+Die Dateiverwaltung wird zu den Bedingungen der [GNU Affero General Public License](/gitblit/doc/file-cms.git/master/web!agpl.txt) bereitgestellt. Die von der Dateiverwaltung verwendeten Komponenten unterliegen zum Teil anderen Lizenzen. Deren Nutzungsbedingungen sind an den Quellen der Komponenten angegeben.

--
Gitblit v1.9.3