log_file="/mnt/onboard/signedigc.log"
gpsdump_wpt="/usr/bin/gpsdump.wpt"
d=`date`
flight_software="NA"
task_file=""
wpt_name=""
latitude=""
longitude=""
altitude=""

metretofeet=0.3048


echo "" >> $log_file
echo "$d: Flight started at $d" >> $log_file

if ps -ef | grep "\/opt\/LK8000\/bin\/LK8000-KOBO" > /dev/null;
then 
flight_software="LK"
#for task_file in `grep LoadTask /mnt/onboard/LK8000/RUNTIME.log | cut -f2 -d"<" | cut -f1 -d ">"`
#do
#:
#done
  #echo "$d: LK8000 detected" >> $log_file
  #if [ $task_file = "" ]
  #then
    task_file="/mnt/onboard/LK8000/_Tasks/Default.lkt"
  #fi
fi

if ps -ef | grep "\/opt\/xcsoar\/bin\/xcsoar" > /dev/null;
then 
flight_software="XCS"
task_file="/mnt/onboard/XCSoarData/Default.tsk"
echo "$d: XCSoar detected" >> $log_file
fi

if [ $flight_software = "NA" ]
then
echo ""  >> $log_file
echo "$d: No flight software detected - no valid task" >> $log_file
exit
fi

echo "$d: Using $task_file for declared task" >> $log_file
echo "$d: Declared waypoints :" >> $log_file

IFS=$'\n'
wpt_num=1

echo "OziExplorer Waypoint File Version 1.0" > $gpsdump_wpt
echo "WGS 84" >> $gpsdump_wpt
echo "Reserved 2" >> $gpsdump_wpt
echo "Reserved 3" >> $gpsdump_wpt

if [ $flight_software = "LK" ]
then
 for waypoint_line in `grep "<point name=" $task_file`
 do
  wpt_name=`echo $waypoint_line | cut -f2 -d" " | cut -f2 -d"\""`
  wpt_name=${wpt_name/_/}
  latitude=`echo $waypoint_line | cut -f3 -d" " | cut -f2 -d"\""`
  longitude=`echo $waypoint_line | cut -f4 -d" " | cut -f2 -d"\""`
  altitude=`echo $waypoint_line | cut -f5 -d" " | cut -f2 -d"\""`
  echo "$d: $wpt_num ${wpt_name:0:5} $latitude $longitude $altitude" >> $log_file
  echo "$wpt_num,${wpt_name:0:5},$latitude,$longitude,43000,0,1,0,0,65535,,0,0,0,$altitude" >> $gpsdump_wpt
  wpt_num=$(($wpt_num+1))
 done
fi

if [ $flight_software = "XCS" ]
then

 working_line=""

 for waypoint_line in `egrep "<Waypoint altitude=|<Location latitude" $task_file`
 do
  line=`echo $waypoint_line | cut -f1 -d" " | sed "s/\t//g"`
  if [ $line = "<Waypoint" ]
  then
   working_line=$waypoint_line 
  fi
  
  if [ $line = "<Location" ]
  then
   working_line="$working_line $waypoint_line"
   wpt_name=`echo $working_line | cut -f5 -d" " | cut -f2 -d"\""`
   wpt_name=${wpt_name/_/}
   latitude=`echo $working_line | cut -f8 -d" " | cut -f2 -d"\""`
   longitude=`echo $working_line | cut -f9 -d" " | cut -f2 -d"\""`
   altitude=`echo $working_line | cut -f4 -d" " | cut -f2 -d"\""`
   echo "$d: $wpt_num ${wpt_name:0:5} $latitude $longitude $altitude" >> $log_file
   echo "$wpt_num,${wpt_name:0:5},$latitude,$longitude,43000,0,1,0,0,65535,,0,0,0,$altitude" >> $gpsdump_wpt
   working_line=""
   wpt_num=$(($wpt_num+1))
  fi
  
 done
fi
