#!/usr/bin/env bash
#------------------------------------------------------------------------------#
#
# Dieses Skript liest die verfügbaren seiten aus dem Dateisystem und ruft sie per HTTPS ab.
# Dann werden sie zu lokal aufrufbaren HTML-Dateien konvertiert.
#
#------------------------------------------------------------------------------#
VERSION="v2021030100"
QUELLE="/home/http/wiki"
ZIEL="/tmp/wiki"
WIKISERVER="192.168.1.1"
if [ ! -d "${QUELLE}" ] ; then
echo "
Es konnte kein Doku-Wiki-Verzeichnis gefunden werden.
"
exit 1
fi
rm -fr ${ZIEL}
mkdir -p ${ZIEL}
### HTML-Dateien ablegen
#
cd ${QUELLE}/data/pages/ && ls *.txt | sed 's/\.txt//' | while read WIKI
do
#
#
#
wget -F --no-check-certificate "https://${WIKISERVER}/wiki/doku.php?id=${WIKI}" -O - | sed \
-e 's###g' \
-e 's###g' \
-e 's###g' \
-e 's#/wiki/lib/tpl/default/images/favicon.ico#favicon.ico#' \
-e 's#start&do=backlink#start.html#' \
-e 's#href="start"#href="start.html"#' \
> ${ZIEL}/${WIKI}.html
done
### CSS-Dateien
#
wget -F --no-check-certificate "https://${WIKISERVER}/wiki/lib/exe/css.php?s=all&t=default&tseed=1274567601" -O /tmp/all.css
cat /tmp/all.css | sed -e 's#}#}³#g' -e 's#(/wiki/lib/images/fileicons/#(#g' -e 's#(/wiki/lib/images/interwiki/#(#g' -e 's#(/wiki/lib/images/#(#g' | tr -s '³' '\n' > ${ZIEL}/all.css
wget -F --no-check-certificate "https://${WIKISERVER}/wiki/lib/exe/css.php?t=default&tseed=1274567601" -O /tmp/screen.css
cat /tmp/screen.css | sed -e 's#}#}³#g' -e 's#(/wiki/lib/images/fileicons/#(#g' -e 's#(/wiki/lib/images/interwiki/#(#g' -e 's#(/wiki/lib/images/#(#g' | tr -s '³' '\n' > ${ZIEL}/screen.css
wget -F --no-check-certificate "https://${WIKISERVER}/wiki/lib/exe/css.php?s=print&t=default&tseed=1274567601" -O /tmp/print.css
cat /tmp/print.css | sed -e 's#}#}³#g' -e 's#(/wiki/lib/images/fileicons/#(#g' -e 's#(/wiki/lib/images/interwiki/#(#g' -e 's#(/wiki/lib/images/#(#g' | tr -s '³' '\n' > ${ZIEL}/print.css
### Dateien, auf die in den CSS-Dateien verwiesen wird
#
cat /tmp/all.css /tmp/screen.css /tmp/print.css | sed -e 's#}#}³#g' | tr -s '³' '\n' | sed -e 's#.*(/wiki/##g' -e 's#).*##g' | while read DATEI
do
if [ -r "${QUELLE}/${DATEI}" ] ; then
cp ${QUELLE}/${DATEI} ${ZIEL}/
fi
done
### eingebettete Bilder ins Ziel-Verzeichniss kopieren
#
cp -a ${QUELLE}/data/media/* ${ZIEL}/
#cp -a ${QUELLE}/lib/tpl/default/images/favicon.ico ${ZIEL}/