#!/bin/sh

# Add index.htm to DirectoryIndex
#--------------------------------

CHECK=`grep "^DirectoryIndex.*index.htm[[:space:]]" /etc/httpd/conf/httpd.conf`
if [ -z "$CHECK" ]; then
    logger -p local6.notice -t installer "app-web-server-core - adding index.htm to DirectoryIndex"
    sed -i -e 's/^DirectoryIndex/DirectoryIndex index.htm/' /etc/httpd/conf/httpd.conf
fi

# Set ServerTokens to prevent version leak
#-----------------------------------------

CHECK=`grep "^ServerTokens[[:space:]]*OS" /etc/httpd/conf/httpd.conf`
if [ -n "$CHECK" ]; then
    logger -p local6.notice -t installer "app-web-server-core - setting ServerTokens to prevent version leak"
    sed -i -e 's/^ServerTokens.*/ServerTokens Prod/' /etc/httpd/conf/httpd.conf
fi

# Add combined logging for SSL site
#----------------------------------

if [ -e /etc/httpd/conf.d/ssl.conf ]; then
    CHECKSSL=`grep "^CustomLog logs\/ssl_combined_access_log" /etc/httpd/conf.d/ssl.conf`
    if [ -z "$CHECKSSL" ]; then
        logger -p local6.notice -t installer "app-web-server-core - adding extra log format to SSL site"
        sed -e 's/<VirtualHost _default_:443>/<VirtualHost _default_:443>\
CustomLog logs\/ssl_combined_access_log combined/' /etc/httpd/conf.d/ssl.conf > /etc/httpd/conf.d/ssl.conf.new
        mv /etc/httpd/conf.d/ssl.conf.new /etc/httpd/conf.d/ssl.conf
    fi
fi

# Disable welcome.conf
#---------------------

CHECK=`grep "^<LocationMatch" /etc/httpd/conf.d/welcome.conf 2>/dev/null`
if [ -n "$CHECK" ]; then
    logger -p local6.notice -t installer "app-web-server-core - disabling welcome.conf splash page"
    sed -i -e 's/^/#/' /etc/httpd/conf.d/welcome.conf
fi

# Add default logo and start page
#--------------------------------

# TODO: update logos in clearos-logos so that the "ring theme" image does not have to be used here
if ( [ ! -f /var/www/html/logo.png ] && [ -f /usr/share/plymouth/themes/rings/header-image.png ] ); then
    logger -p local6.notice -t installer "app-web-server-core - adding default logo"
    cp /usr/share/plymouth/themes/rings/header-image.png /var/www/html/logo.png
    chmod 664 /var/www/html/logo.png
fi

if [ ! -f /var/www/html/index.html ]; then
    logger -p local6.notice -t installer "app-web-server-core - updating default web page"
    cp -p /usr/clearos/apps/web_server/deploy/index.html /var/www/html/index.html
    chmod 664 /var/www/html/index.html
fi

# Initialize hostname with default
#---------------------------------

/usr/clearos/apps/web_server/deploy/initialize

# Set default start/boot
#-----------------------

logger -p local6.notice -t installer "app-web-server-core - enabling web server"
chkconfig httpd on

logger -p local6.notice -t installer "app-web-server-core - starting web server"
service httpd start
