# OMEM-Gallery

Bilder-Galerie und -Slider für den Alamos Alarmmonitor des THW OV Memmingen  
Dieser Code bietet eine API zum Abrufen von Bildern auf Basis von Express.JS


## Einrichtung


Die Ports (HTTP:3411, HTTPS:3412) lassen sich über die .env Datei ändern.
Die API ist für den Betrieb hinter einem Reverse-Proxy gedacht.

Um die Bilder zu ändern, gibt es 2 Unterordner im Ordner "uploaded":
- /slider/ für die Diashow. Die Namensgebung ist irrelevant, jedoch muss es jpg oder png sein. Die Liste aktualisiert sich automatisch beim nächsten Refresh.
- /4pic/ für das Abrufen einzelner Bilder, die jeweils nach dem Format "<ID>.jpg" bzw. "<ID>.png" benannt werden müssen.

Um die API dauerhaft zu starten, kann nach Clone des Repos auf einen Linux-Server in den Ordner "/var/node/omemgallery/" (kann in "server_omemgallery.json" geändert werden) der folgende Befehl ausgeführt werden: "forever start server_omemgallery.json". Der Server läuft dann im Hintergrund und startet sich bei einem Crash automatisch neu. Über "forever list" kann der aktuelle Status abgerufen werden und über "forever stop omem-gallery" kann der Server gestoppt werden.

## Verwendung

Für den Abruf gibt es mehrere URLs:
- /getonepic -> Diashow-Modus für ein einzelnes Bild, das sich über einen Refresh-Header nach 10 Sekunden neulädt und das nächste Bild der Liste anzeigt. Über einen Session-Key wird sichergestellt, dass jeder Client die Liste unabhängig durchrotiert.
- /getonepic-norefresh -> Diashow-Modus ohne automatischen Refresh. Zeigt bei jedem Aufruf ein anderes Bild. Ebenfalls mit Session-Key
- /get4pic/<ID> -> Raster-Modus für jede Id wird ein festgelegtes Bild ausgegeben, das dann bspw. auf einem 2x2 Raster in einem Frontend dargestellt werden kann

Die URL und der Port hängen von der Konfiguration ab.
