#! /bin/bash
# Zeigt Termine aus dem Palm-Kalender in den nächsten drei Tagen an.
#

#
# Beispiel-Aufruf aus .bashrc
#

#    #Kalenderanzeige nur an wenn .c existsiert
#    if [ -e ~/.c ] ; then
#        #nur alle sechzig Minuten.
#        if [ x != x`find /home/wolfgang/.c -maxdepth 0 -mmin +60` ] ; then
#            touch /home/wolfgang/.c
#            /home/wolfgang/bin/dreitage
#        fi
#    fi

    RED=`echo -e '\033[31m'`
  GREEN=`echo -e '\033[32m'`  
DYELLOW=`echo -e '\033[33m'`  
   BLUE=`echo -e '\033[34m'`  
  GBLUE=`echo -e '\033[35m'`
 NORMAL=`echo -e '\033[0m'`
 
  LGREY=`echo -e '\033[37m'`
  DGREY=`echo -e '\033[1;30m'`

COLHEUTE=${RED}
COLMORGEN=${GBLUE}
COLUEBERM=${DYELLOW}
COLDREITAG=${GREEN}

COLHEAD=${DGREY}

##Farbtest
#    echo -n ${COLHEUTE}
#    echo HEUTE
#    echo -n ${NORMAL}
#    echo -n ${COLMORGEN}
#    echo COLMORGEN
#    echo -n ${NORMAL}
#    echo -n $COLUEBERM
#    echo COLUEBERM
#    echo -n ${NORMAL}
#    echo -n ${COLDREITAG}
#    echo COLDREITAG
#    echo -n ${NORMAL}
#

#Funktion, die die übersicht für einen Tag ausgibt.
#0=Heute
#1=morgen
#...
#uniq kann weg, sobald jpilot-dump nichtmehr geänderte Termine doppelt zeigt
#nach neustart jpilot sollte das stimmen mit ohne uniq?
tagesuebersicht() {
    TAG=$1
    jpilot-dump -N`date -d "+$TAG day" +%Y/%m/%d` '+D%bY/%bm/%bd %bH:%bM %A'
#    | recode utf8..lat1
}

#prüfen ob an dem Tag was ist
tagestest() {
    TAG=$1
    jpilot-dump -N`date -d "+$TAG day" +%Y/%m/%d` 
}


  HEUTE=$(tagestest 0)
 MORGEN=$(tagestest 1)
 UEBERM=$(tagestest 2)
DREITAG=$(tagestest 3)

FORMAT="%A %d %B:"

#Einträge im Todo mit Datum 
# nur die noch nicht erledigten erledigt,prio,???,Datum,"Text"
TODO=`mktemp`
jpilot-dump -T | grep "^0" | cut -d , -f 4- >$TODO

# Überfällige TODO-Einträge
gawk -F, '{ 
    DATE=$1 ; 
    gsub("/","",DATE) ;
    if( DATE < strftime("%Y%m%d")){
        print
    }
}' $TODO

if [ x"$HEUTE" != x -o x"$MORGEN" != x -o x"$UEBERM" != x -o x"$DREITAG" != x ]; then
    echo -n ${COLHEAD}
    date +"%Y/%m/%d in den nächsten drei Tagen gibt es folgende Termine:"
    echo -n ${NORMAL}
fi

if [ x"$HEUTE" != x ]; then
    echo -n ${COLHEUTE}
    LANG=de_DE.UTF-8 date "+Heute, $FORMAT"
    tagesuebersicht 0
    #jpilot-dump -N | cut -f 1,2,5 -d, --output-delimiter=' '
    echo -n ${NORMAL}
fi

    echo -n ${COLHEUTE}
grep `date -d "+0 day" +%Y/%m/%d` $TODO
    echo -n ${NORMAL}

if [ x"$MORGEN" != x ]; then
    echo -n ${COLMORGEN}
    LANG=de_DE.UTF-8 date -d "+1 day" "+$FORMAT"
    tagesuebersicht 1
    echo -n ${NORMAL}
fi

    echo -n ${COLMORGEN}
grep `date -d "+1 day" +%Y/%m/%d` $TODO
    echo -n ${NORMAL}

if [ x"$UEBERM" != x ]; then
    echo -n ${COLUEBERM}
    LANG=de_DE.UTF-8 date -d "+2 day" "+$FORMAT"
    tagesuebersicht 2
    echo -n ${NORMAL}
fi

    echo -n ${COLUEBERM}
grep `date -d "+2 day" +%Y/%m/%d` $TODO
    echo -n ${NORMAL}
if [ x"$DREITAG" != x ]; then
    echo -n ${COLDREITAG} 
    LANG=de_DE.UTF-8 date -d "+3 day" "+$FORMAT"
    tagesuebersicht 3
    echo -n ${NORMAL}
fi
    echo -n ${COLDREITAG} 
grep `date -d "+3 day" +%Y/%m/%d` $TODO
    echo -n ${NORMAL}
rm $TODO
echo
