clear
echo 
echo

if test "$1" = ""; then
   echo Expecting arguments: -test, -rmtest, -backup, -rmbackup, -restore 
   exit
   fi

if test "$FXDATA" = ""; then
   echo FXDATA environment variable not set
   exit
   fi

#Use only first database if multi databases exist
FXDATAPATH=`echo $FXDATA | awk '{split($0,a,":"); print a[1]}'`
FXDATAPATH=`echo $FXDATAPATH | awk '{split($0,a,"."); print a[1]}'`
export FXDATAPATH

FXDATABASE=${FXDATAPATH}.dbs; export FXDATABASE

if test "$1" = "-test"; then
    FXDATABASE2=${FXDATAPATH}test.dbs; export FXDATABASE2
    echo "Refreshing Test Database ($FXDATABASE to $FXDATABASE2)"
    mkdir $FXDATABASE2 2> /dev/null
    SAVEDIR=`pwd`
    cd $FXDATABASE; tar cf - .| (cd $FXDATABASE2; tar xf -)
    cd $SAVEDIR
    FXDATA=$FXDATABASE2; export FXDATA
    fxsql acttest.sql
    exit 0
    fi
if test "$1" = "-rmtest"; then
    FXDATABASE2=${FXDATAPATH}test.dbs; export FXDATABASE2
    echo "Removing Test Database ($FXDATABASE2)"
    rm -r $FXDATABASE2 2> /dev/null
    exit 0
    fi

if test "$1" = "-backup"; then
    FXDATABASE2=${FXDATAPATH}backup.dbs; export FXDATABASE2
    echo "Backing up Database ($FXDATABASE to $FXDATABASE2)"
    mkdir $FXDATABASE2 2> /dev/null
    cd $FXDATABASE; tar cf - .| (cd $FXDATABASE2; tar xf -)
    exit 0
    fi
if test "$1" = "-restore"; then
    FXDATABASE=${FXDATAPATH}backup.dbs; export FXDATABASE
    if test ! -d $FXDATABASE; then
       echo Backup database does not exist $FXDATABASE
       exit 0
       fi
    echo "Are you sure you want to restore database from backup (Y) ?"
    read answer
    if  test "$answer" != "Y" -a "$answer" != "y"; then
       exit 0
       fi
    FXDATABASE2=${FXDATAPATH}.dbs; export FXDATABASE2
    echo "Restoring Backup Database ($FXDATABASE to $FXDATABASE2)"
    cd $FXDATABASE; tar cf - .| (cd $FXDATABASE2; tar xf -)
    exit 0
    fi

if test "$1" = "-rmbackup"; then
    FXDATABASE2=${FXDATAPATH}backup.dbs; export FXDATABASE2
    echo "Removing Backup Database ($FXDATABASE2)"
    rm -r $FXDATABASE2 2> /dev/null
    exit 0
    fi

echo Invalid argument $1
