#!/bin/sh
#
# Start the Roxen webserver

test -x /usr/bin/pike -a -x /usr/lib/roxen/start || exit 0

# Source any user definable options we might have...
if [ -f /usr/lib/roxen/start_options ]; then
    OPTIONS=`cat /usr/lib/roxen/start_options`
else
    OPTIONS=""
fi

case "$1" in
  start)
    echo -n "Starting Roxen http server: roxen"
    cd /usr/lib/roxen
    ./start --pid-file=/var/run/roxen/roxen.pid $OPTIONS > /dev/null
    echo "."
    ;;
  stop)
    if [ -f /var/run/roxen/roxen.pid ]; then
	echo -n "Stopping Roxen http server: roxen"
	touch /var/run/roxen/roxen_shutdown.pid

	for pid in `cat /var/run/roxen/roxen.pid`; do
	    kill -TERM $pid
	done
	rm /var/run/roxen/roxen.pid

	echo "."
    else
	echo "No pidfile found, sorry."
    fi
    ;;
  reload|force-reload)
    if [ -f /var/run/roxen/roxen.pid ]; then
	echo -n "Reloading configuration for Roxen http server: roxen"

	for pid in `cat /var/run/roxen/roxen.pid | sed -e 1d`; do
	    kill -HUP $pid
	done

	echo "."
    else
	echo "No pidfile found, sorry."
    fi
    ;;
  restart)
    sh /etc/init.d/roxen stop
    sleep 2
    sh /etc/init.d/roxen start
     ;;
  *)
    echo "Usage: /etc/init.d/roxen {start|stop|reload|restart|force-reload}"
    exit 1
esac

exit 0
