#!/bin/bash

. ../dbcfg

while [ $# -gt 0 ] ; do
  case $1 in
    -sdb)   origdb=$2; shift 2;;
    -shost) orighost=$2; shift 2;;
    -ddb)   checkdb=$2; shift 2;;
    -dhost) checkhost=$2; shift 2;;
     *)     shift 1 ;;
  esac
done

function dbcopy ()
{
  savedb=$1.save;
  sourcedb=$1;
  sourcehost=$2;
  user=$3
  
  echo 'DROP DATABASE "'$savedb'";
        CREATE DATABASE "'$savedb'" 
            WITH OWNER = admindb 
            ENCODING = '\'UTF8\'' 
            TABLESPACE = pg_default 
            TEMPLATE = template0 
            LC_COLLATE = '\'de_CH.UTF-8\'' 
            LC_CTYPE = '\'de_CH.UTF-8\'' 
            CONNECTION LIMIT = -1;' \
  | psql --username=admindb --host=$sourcehost $sourcedb

    pg_dump --username=$user --host=$sourcehost --format=c $sourcedb | pg_restore --host=$sourcehost --username=$user --dbname="$savedb"
}

export PGPASSWORD=$origpass
dbcopy $origdb $orighost $origuser

export PGPASSWORD=$checkpass
dbcopy $checkdb $checkhost $checkuser
