#!/bin/sh
#
# prelude manager	The prelude log analyzer
#
# chkconfig: - 90 10
# description: The prelude manager

# Do not load RH compatibility interface.
WITHOUT_RC_COMPAT=1
 

# Source function library.
. /etc/init.d/functions

# Source networking configuration.
SourceIfNotEmpty /etc/sysconfig/network

PROG=prelude-manager
LOCKFILE=/var/lock/subsys/$PROG
PIDFILE=/var/run/$PROG.pid
RETVAL=0
P_USER=_prelude

# Get config.
CONFIG=/etc/sysconfig/$PROG
SourceIfNotEmpty "$CONFIG"


start() {
	# Start daemon.
	is_yes "$NETWORKING" || return 0
	prelude-admin list | grep -q "^prelude-manager "
	RETVAL=$?
	if [ $RETVAL = 1 ];then 
		echo "Profile 'prelude-manager' does not exist"
		prelude-admin add "prelude-manager" --uid 0 --gid $P_USER
		RETVAL=$?
		if [ $RETVAL = 0 ]; then
			echo_success
			echo
		else
			echo_failure
			echo
			return $RETVAL
		fi
	fi
	start_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --expect-user root -- $PROG -d -P $PIDFILE $OPTIONS
	RETVAL=$?
	return $RETVAL
}

stop() {
        # Stop daemons
	stop_daemon --pidfile "$PIDFILE" --lockfile "$LOCKFILE" --expect-user $P_USER -- $PROG
	RETVAL=$?
	return $RETVAL
}

restart() {
	stop
	start
}

reload()
{
	msg_reloading $PROG
	stop_daemon --pidfile "$PIDFILE" --expect-user root -HUP -- $PROG
	RETVAL=$?
	return $RETVAL
}

case "$1" in
    start)
	start
	;;
    stop)
	stop
	;;
    reload)
	reload
	;;
    restart)
	restart
	;;
    condstop)
	if [ -e "$LOCKFILE" ]; then
	    stop
	fi
	;;
    condrestart)
	if [ -e "$LOCKFILE" ]; then
	    restart
	fi
	;;
    condreload)
	if [ -e "$LOCKFILE" ]; then
	    reload
	fi
	;;
    status)
	status --pidfile "$PIDFILE" --expect-user $P_USER -- $PROG
	RETVAL=$?
	;;
    *)
	msg_usage "${0##*/} {start|stop|reload|restart|condstop|condrestart|condreload|status}"
	RETVAL=1
esac

exit $RETVAL
