#!/bin/sh
RECODE=recode
ERIC_PROJEKTDIR=$(pwd)
ERIC_DEMO=$ERIC_PROJEKTDIR/Debug/senddata
ERIC_LIBDIR=$ERIC_PROJEKTDIR/Linux-i686/lib

usage="senddata <xml> [Zertifikat] [PIN]"

# check and transform xml file
if [ ! -f "$1" ]
then
	echo "xml file missing"
	exit 1
fi

encod=$(head -n 1 $1 |sed "s/.*encoding=\"\([^\"]*\).*/\1/")
if [ "$encod" = "UTF-8" ]
then
	echo "converting UTF-8 to ISO ..."
	recode utf8..l1 <$1 >data.tmp
	sed "s/encoding=\"UTF-8/encoding=\"ISO-8859-15/" data.tmp >data.xml
elif [ "$encod" = "ISO-8859-15" ]
then
	cp $1 data.xml
else
	echo "unknown encoding: $encod"
	exit 1
fi

if [ -x $ERIC_DEMO ]; then
    echo Starte senddata ...
    # Verwende Kommandozeilenparameter falls sie beim Aufruf
    # angegeben wurden. Andernfalls verwende steuersatz.xml.
    case $# in
        0)
            echo "Usage: $usage"
            exit 1
            ;;
        1)
            ERIC_OPTS=data.xml
            ;;
        2)
            ERIC_OPTS="data.xml -c $2"
            ;;
        *)
            ERIC_OPTS="data.xml -c $2 -p $3"
            ;;
    esac

    # Aufruf der eric_demo
    # Ueber die Option -d wird das Heimverzeichnis gesetzt.
    # Ueber die Option -l wird das Protokollverzeichnis gesetzt.
    # Ueber die Option -c kann das Zertifikat gesetzt werden.
    # Ueber die Option -p kann die PIN gesetzt werden.
    $ERIC_DEMO $ERIC_OPTS -d $ERIC_LIBDIR -l $ERIC_PROJEKTDIR
else
    echo "Programm nicht gefunden: $ERIC_DEMO"
    echo "Bitte erstellen Sie das Programm durch den Aufruf von 'make'"
fi