#!/bin/sh
#
# delay    shell script for the claculation of a delay
#
# Usage:   delay  dd1 mm1 yyyy1   dd2 mm2 yyyy2
#          delay  dd1 mm1 yyyy1   [-]number_of_days
#

declare -i DAY_A
declare -i MONTH_A
declare -i YEAR_A
declare -i DAY_B
declare -i MONTH_B
declare -i YEAR_B
declare -i JD_A
declare -i JD_B
declare -i DIFF

if [ $# -lt 3 ] ; then
   echo 'Usage: delay <d1> <m1> <yyy1>  <d2> <m2> <yyy2>'
   echo '             <d1> <m1> <yyy1>  <[-]#of_days>'
   exit 1
fi

DAY_A=$[$1]
MONTH_A=$[$2]
YEAR_A=$[$3]

if [ $DAY_A -lt 1 -o $DAY_A -gt 31 ] ; then
   echo "delay: parameter #1 for day out of range"
   exit 1
fi

if [ $MONTH_A -lt 1 -o $MONTH_A -gt 12 ] ; then
   echo "delay: parameter #2 for month out of range"
   exit 1
fi

JD_A=`jd $1 $2 $3 | sed -e 's/\.[0-9]*$//'`

if [ $# -ge 6 ] ; then
   DAY_B=$[$4]
   MONTH_B=$[$5]
   YEAR_B=$[$6]
   if [ $DAY_B -lt 1 -o $DAY_B -gt 31 ] ; then
      echo "delay: parameter #4 for day out of range"
      exit 1
   fi
   if [ $MONTH_B -lt 1 -o $MONTH_B -gt 12 ] ; then
      echo "delay: parameter #5 for month out of range"
      exit 1
   fi
   JD_B=`jd $4 $5 $6 | sed -e 's/\.[0-9]*$//'`
   let DIFF=$[ $JD_B - $JD_A ]
   echo "$DIFF"
   exit 0
fi

if [ $# -eq 4 ] ; then
   let DELAY=$[$4]
   let DIFF=$[ $JD_A + $DELAY ]
   dow $DIFF -n ; echo -n " "
   dt "$DIFF"
   exit 0
fi

exit 0
