#!/bin/bash
FILE=/tmp/$RANDOM
TOP=0
LEFT=3

# Additional heading space
HEADINGNEXTPAGE=16
HEADINGLEFT=0
HEADINGRIGHT=8

# GPG Space
NEXTPAGE=30
NEXTPAGESMALL=48
NEXTFIELDBOTTOM=6
NEXTFIELDRIGHT=14
NEXTFIELDRIGHTSMALL=25

if [ $# -eq 0 ]; then
  echo -e "$0: Syntax:\n$0 FIELD\n\nExample:\n$0 7\n\n\nFields:
  ==================
  | 0 | 1 || 6 | 7 |
  |---|---||---|---|
  | 2 | 3 || 8 | 9 |
  |---|---||---|---|
  | 4 | 5 || 10| 11|
  ==================
  "
  exit 1
fi

PAGE=$(($1 / 6))
FIELD=$(($1 % 6))

shift 1


echo "PAGE: $PAGE, FIELD: $FIELD"



function moveDown() {
  for((i=0; i<$(($FIELD / 2)); i++)); do
    for((j=0; j<$NEXTFIELDBOTTOM; j++)); do
      printf "\n" >> $FILE
    done
  done
}


function heading() {
  moveDown


  if [ $(($FIELD % 2)) -eq 0 ]; then
    HSPACE=$HEADINGLEFT
    SPACE=0
  else
    HSPACE=$HEADINGRIGHT
    SPACE=$NEXTFIELDRIGHT
  fi

  
  bigLetters $FILE

  if [ $PAGE -eq 1 ]; then
    makeLeft $HEADINGNEXTPAGE $FILE
    if [ $(($FIELD % 2)) -eq 1 ]; then
      makeLeft $(($HSPACE - 1)) $FILE
    fi
  else
    if [ $(($FIELD % 2)) -eq 0 ]; then
      makeLeft 1 $FILE
    fi
    makeLeft $HSPACE $FILE
  fi
  printf "c3gov\n" >> $FILE
  resetLetters $FILE

}

function insertDate() {
  if [ $(($FIELD % 2 )) -eq 0 ]; then
    SPACE=0
  else
    SPACE=$NEXTFIELDRIGHTSMALL
  fi

  smallLetters $FILE
  if [ $PAGE -eq 1 ]; then
    makeLeft $NEXTPAGESMALL $FILE
  fi
  makeLeft $LEFT $FILE
  makeLeft $(($SPACE + 2)) $FILE
  if [ -n "$EVENT" ]; then
    printf "$EVENT, $(date -I)" >> $FILE
  else
    printf "$(date -I)" >> $FILE
  fi

}

source ../include/nixdorf
init

makeNewline $TOP $FILE
heading
insertDate

printFile $FILE
rm $FILE
