#!/bin/bash
EMAIL_ADDR="alert@webhosting-franken.de"

## Restart Apache every night after syntax check.
APACHE_TEST=`apache2ctl configtest 2>&1`
if [[ "${APACHE_TEST//$'\r'/}" == "Syntax OK" ]]; then
    /etc/init.d/apache2 restart
  else
   echo "$APACHE_TEST"  | mailx -s "$HOSTNAME Alert!" $EMAIL_ADDR
fi

## Cleanup Logfiles older then 30 days
find /var/www/*/htdocs/logs/  -type f -mtime +30 -exec rm -r {} ';'

## Cleanup tmp folders
LOGFILE="/var/log/tmp-cleaner.log"
DAYS="+3"

echo "[$(date '+%Y-%m-%d %H:%M:%S')] Starte tmp-Cleanup..." >> "$LOGFILE"

for d in /var/www/*/tmp/; do
    if [ -d "$d" ]; then
        echo "[$(date '+%Y-%m-%d %H:%M:%S')] Durchsuche: $d" >> "$LOGFILE"

        # Alte Dateien löschen
        find "$d" -type f -mtime "$DAYS" -exec rm -f {} \;

        # Leere Unterverzeichnisse löschen (nicht das tmp-Verzeichnis selbst!)
        #### BUG!! find "$d"/* -type d -empty -delete >> "$LOGFILE" 2>&1

        # Sicherheitshalber sicherstellen, dass $d existiert
        #mkdir -p "$d"
    fi
done

echo "[$(date '+%Y-%m-%d %H:%M:%S')] tmp-Cleanup abgeschlossen." >> "$LOGFILE"
echo >> "$LOGFILE"
