#!/bin/bash
SHELL=/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin

cd /opt/euro-beta

ECR_FORCED_CLOSURE_TIME=`systools/get_eurodb_config_val ForcedECRClosureTime`
if [ -z $ECR_FORCED_CLOSURE_TIME ]
then
  ECR_FORCED_CLOSURE_TIME="00:00"
fi
FC_HOUR=${ECR_FORCED_CLOSURE_TIME:0:2}
FC_MIN=${ECR_FORCED_CLOSURE_TIME:3:2}

FC_MIN=$(((10#$FC_MIN+59)%60))

if [ $FC_MIN -eq 59 ]
then
  FC_HOUR=$(((10#$FC_HOUR+23)%24))
fi

FC_TIME=`printf "%02d%02d" $((10#$FC_HOUR)) $((10#$FC_MIN))`

[ "`date +%H%M`" = "$FC_TIME" ] || exit 0
###[ "`date +%H%M`" = "0923" ] || exit 0
date >&2
id >&2
echo "$0 $1" >&2

[ "`systools/get_eurodb_config_val AutomaticMidnightClosureECR`" = "1" ] || exit 0

INIFILE=eurodb.ini
if file e2gui_current | grep -q miniecr
then
  INIFILE=minidb.ini
fi  
DBNAME=`cat eurodb.ini | grep Database | cut -d'=' -f2`
MYSQL="mysql -peuro3g -ueuro3g $DBNAME"

SYSTEM_ECR_ID=`systools/get_eurodb_config_val SystemECRId`
OPEN_PARMS=`systools/get_eurodb_config_val SystemECRConnection`
#OPEN="open com1 9600 ela"

if [ "$1" != EXEC ]
then
  UBUNTU=`lsb_release -a 2>/dev/null | grep -qi "Ubuntu" && echo "1"` 
  if [ "$UBUNTU" ]
  then
    socat exec:"$0 EXEC" tcp-connect:127.0.0.1:9988 &
  else
    $0 EXEC <>/dev/tcp/127.0.0.1/9988 >&0 &
  fi
  exit 0
fi

# tee -a /tmp/midnight.log |
{ 
  read X || exit 1 # ela daemon ready

  MYSQL="mysql -peuro3g -ueuro3g $DBNAME"

  SYSTEM_ECR_ID=`systools/get_eurodb_config_val SystemECRId`
 
  for ((i=0; i<20; i++))
  do
    echo open $OPEN_PARMS
    read X || exit 1
    [ ${X/ *} -eq 200 ]  && break
    sleep 1
  done
  [ ${X/ *} -ne 200 ] && exit 1
  read X || exit 1 # 221 serial port

  echo fiscal_closure
#  echo DISP TEST fiscal_closure
  read X && [ ${X/ *} -eq 200 ] || exit 1
  TO_MIDNIGHT=$((70-`date +%S`))
  sleep $TO_MIDNIGHT 
  for ((i=0; i<20; i++))
  do
    ACT_CLOCK=`date "+%d%m%Y%H%M%S"`
    echo setclock $ACT_CLOCK
#    echo DISP setclock $ACT_CLOCK
    read X || exit 1
    [ ${X/ *} -eq 200 ]  && break
    sleep 5
  done
  echo quit
  echo "UPDATE ecr SET last_ticket_time='' WHERE id=$SYSTEM_ECR_ID;" | $MYSQL
  exit 0
} # | tee -a /tmp/midnight.log 

