#!/usr/bin/env sh  

decoder='ogg123'
music_home=/mnt/card/ogg
savefile=$music_home/savefile
tmpfile=$music_home/tmpfile

cd $music_home

pos=0;

while (true); do
        ${READDIALOG}

	result=`ls -a | iselect -a -n "" -t "a: play all r:restore c:clear savefile" -p$pos -ka -kr -kc -P -K`
 
       if [ -z "$result" ]; then exit; fi

        pos=`echo $result  | cut -d : -f 1`
        com=`echo $result  | cut -d : -f 2`
        name=`echo $result | cut -d : -f 3`

	case "$com" in 
	    r)
		if [ -f "$savefile" ]; then
		    cat $savefile | while read file
		      do
		      ${decoder}  "$file"
		      sed -n '2,$p' $savefile > $tmpfile # cut played music
		      cat $tmpfile >$savefile
		      rm $tmpfile
		    done
		fi
		    ;;
	    a)
		rm $savefile
		for file in *.ogg  # create filelist
		  do
		  echo `pwd`/$file  >> $savefile
		done
		cat $savefile | while read file
		  do
                  ${decoder}  "$file"
		  sed -n '2,$p' $savefile > $tmpfile # cut played music
		  cat $tmpfile >$savefile
		  rm $tmpfile
		done
		;;
	    c)
		rm $savefile
		rm $tmpfile
		;;
	    *)
		if [ -d "$name" ]; then cd "$name"; 
		else
		    tmp=`echo $name | sed 's/ /\\\ /g'` 
		    echo $tmp > $tmpfile
		    $tmpfile=`${decoder}  $tmp`
		    rm $tmpfile
		fi 
	esac
done

#set filelist=`echo '"' > $tmpfile ; ls -m | sed 's/, /","/g'|tr -d '\n' | sed 's/ /\\\040/g' | tr ',' ' ' >> $tmpfile ; echo '" ' >> $tmpfile; cat $tmpfile | tr -d '\n' > $tmpfile;  cat $tmpfile`
