#!/bin/bash

PROGRAM=/usr/bin/postmaster
RUNLEVEL=3
NEEDS="+remote_fs"

. /etc/init.d/smgl_init
. /etc/sysconfig/postgresql

start()
{
  echo "Starting postmaster..."
  cd "$DBPATH" &&
  if  [[  -z  "$PORT"  ]];  then
    if  [[ "$LOGFILE" = 'syslog' ]];  then
      su -l "$USER" -s /bin/sh -c "pg_ctl start -D '$DBPATH'"
    else
      su -l "$USER" -s /bin/sh -c "pg_ctl start -D '$DBPATH' -l '$LOGFILE'"
    fi
  else
    if  [[ "$LOGFILE" = 'syslog' ]];  then
      su -l "$USER" -s /bin/sh -c "pg_ctl start -D '$DBPATH' -o \"-i -p '$PORT'\""
    else
      su -l "$USER" -s /bin/sh -c "pg_ctl start -D '$DBPATH' -l '$LOGFILE' -o \"-i -p '$PORT'\""
    fi
  fi
  evaluate_retval
}

stop()
{
  echo "Stopping postmaster..."
  cd "$DBPATH" &&
  su -l "$USER" -s /bin/sh -c "pg_ctl stop -D '$DBPATH' -m fast"
  evaluate_retval
}

restart()
{
  echo "Restarting postmaster..."
  cd "$DBPATH" &&
  if  [[ "$LOGFILE" = 'syslog' ]];  then
    su -l "$USER" -s /bin/sh -c "pg_ctl restart -D '$DBPATH'"
  else
    su -l "$USER" -s /bin/sh -c "pg_ctl restart -D '$DBPATH' -l '$LOGFILE'"
  fi
}
