#!/bin/bash
#
# Wenom Installation auf Debian 12 - hier bitte Daten individuell anpassen:
#
########################## IHRE DATEN ###################
MARIADB_ROOT_PW="Das_MariaDB_ROOT_Passwort"
#########################################################
#
#
##################### DATEN - INSTALLATION ######################################
SVWSRELEASE=1.0.4
Apache2Port=7443
INSTALLPATH=/var/www/html
#################################################################################
#
#
##################### AUF BENUZER ROOT PRUEFEN #########################################################
if ! [ $( id -u ) = 0 ]; then
    echo -e -n "${HELLROT}Bitte fuehren Sie dieses Script als root im root-Verzeichniss aus! ${NC}" 1>&2
    echo
    exit 1
fi
#
# Farbdefinitionen zur Ausgabe ####################################################################
ROT='\033[0;31m' 
HELLROT='\033[1;31m'
GRUEN='\033[0;32m'
HELLGRUEN='\033[1;32m'
GELB='\033[1;33m'
BLAU='\033[0;34m'
HELLBLAU='\033[1;34m'
LILA='\033[0;35m'
HELLLILA='\033[1;35m'
DUNKELESTUERKIS='\033[0;36m'
TUERKIS='\033[1;36m'
HELLGRAU='\033[0;37m'
WEISS='\033[1;37m'
NC='\033[0m' # No Color
#################################################################################################
#
echo
echo -e -n "${HELLBLAU}Installation des MariaDB-Servers. ${NC}"
echo
sleep 3
#
apt update
# Herunterladen des Skripts zum Einrichten des MariaDB-Repositorys und Ausführen des Skripts
curl -LsS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | bash -s -- --mariadb-server-version=11.7 --skip-maxscale --skip-tools
# Installieren der MariaDB-Datenbank
apt-get -y install mariadb-server
# Ausgabe der Erfolgsmeldung
echo
echo -e -n "${HELLBLAU}MariaDB 11.7 erfolgreich installiert. ${NC}"
echo
systemctl start mysql
systemctl enable mysql
#
#
### Sicherheitsrelevante Einstellungen in der DB vornehmen
#
echo
echo -e -n "${HELLBLAU}Sicherheitsrelevante Einstellungen in der DB vornehmen. ${NC}"
echo
sleep 3
##
#
# Root-Passwort setzen und Rechte neu laden
##mysql -e "ALTER USER 'root'@'localhost' IDENTIFIED BY '$MARIADB_ROOT_PW'; FLUSH PRIVILEGES;"
mysqladmin -u root password $MARIADB_ROOT_PW
#
wget -q --show-progress http://web.webolch.de/bauanleitung/downloads/linux/SH-Scripte/svws-install/50-server.cnf
mv 50-server.cnf /etc/mysql/mariadb.conf.d
echo
echo -e -n "${HELLBLAU}Warten auf den MariaDB-Server. ${NC}"
echo
sleep 5
systemctl status mysql --no-pager
echo
echo -e -n "${HELLGRUEN}OK ${NC}"
echo
sleep 3
#
#########################################################################################################################################
echo
echo -e -n "${HELLBLAU}Installation des SVWS-Servers.  ${NC}"
echo
echo -e -n "${WEISS}########################################################################################################################## ${NC}"
echo
echo -e -n "${WEISS}############## Die Installation des ${HELLROT}SVWS-Servers BITTE ohne MariaDB ${WEISS}ausfuehren!!!!!!!. ################# ${NC}"
echo
echo -e -n "${WEISS}########################################################################################################################## ${NC}"
echo
sleep 3
wget -q --show-progress http://web.webolch.de/bauanleitung/downloads/linux/SH-Scripte/svws-install/svwsconfig.json
wget -q --show-progress https://github.com/SVWS-NRW/SVWS-Server/releases/download/v$SVWSRELEASE/install-$SVWSRELEASE.sh
bash install-$SVWSRELEASE.sh
mv svwsconfig.json /etc/app/svws/conf/svwsconfig.json
#
sed -i "s|;extension=pdo_sqlite.*$|extension=pdo_sqlite|" /etc/php/${PHPVERSION}/apache2/php.ini
#
echo "
<Directory ${INSTALLPATH}>
   Options Indexes FollowSymLinks Includes ExecCGI
   AllowOverride All
   Require all granted
</Directory>" >> /etc/apache2/apache2.conf
#
### DocumentRoot anpassen
mkdir -p ${INSTALLPATH}/public
sed -i "s|DocumentRoot.*$|DocumentRoot ${INSTALLPATH}/public|" /etc/apache2/sites-available/000-default.conf
sed -i "s|DocumentRoot.*$|DocumentRoot ${INSTALLPATH}/public|" /etc/apache2/sites-available/default-ssl.conf
sed -i 's/443/'$Apache2Port'/g' /etc/apache2/sites-available/default-ssl.conf
sed -i 's/443/'$Apache2Port'/g' /etc/apache2/ports.conf
#
systemctl reload apache2.service
systemctl status apache2.service --no-pager
#
mkdir -p $INSTALLPATH/public/laufbahnplanung
cd $INSTALLPATH/public/laufbahnplanung
wget -q --show-progress https://github.com/SVWS-NRW/SVWS-Server/releases/download/v$SVWSRELEASE/SVWS-Laufbahnplanung-$SVWSRELEASE.zip
unzip SVWS-Laufbahnplanung-$SVWSRELEASE.zip
cd $INSTALLPATH
wget -q --show-progress http://web.webolch.de/bauanleitung/downloads/linux/SH-Scripte/svws-install/enmserver.zip
unzip enmserver.zip
#
echo
echo -e -n "${HELLGRUEN}OK ${NC}"
echo
sleep 3
#
echo -e -n "${HELLGRUEN}Die Installation ist abgeschlossen und steht zum Aufruf unter ${GELB}https://URL:8443 ${HELLGRUEN}oder ${GELB}https://IP:8443 ${HELLGRUEN}bereit. ${NC}"
echo
echo -e -n "${HELLTUERKIS}Die Installation ist abgeschlossen und der SchemaAdminsteht zum Aufruf unter ${GELB}https://URL:8443/admin ${HELLTUERKIS}oder ${GELB}https://IP:8443/admin ${HELLTUERKIS}bereit. ${NC}"
echo
