#!/bin/bash
#############Global Options
music=totem
null_icon=/usr/local/share/avatar-factory/music-widget.png
music_widget_avatar=$HOME/Desktop/music_widget.desktop

#############User Options
if [ -f "$HOME/.avatar-factory/avatar-launcher" ]; then
	. $HOME/.avatar-factory/avatar-launcher
fi

#############

if [[ -d $HOME/Desktop ]]; then
	Desktop=Desktop
else
	Desktop=$(cat ~/.config/user-dirs.dirs | grep XDG_DESKTOP_DIR | sed -e 's|.*/||' -e 's/"//')
fi

music=$(echo $music | sed "s/-add$//")

case $music in
	muine | muine-add )	music=mono
	;;
esac


show_widget () {
	music_widget="$(cat $music_widget_avatar  | sed "s|^Icon=.*|Icon=$HOME/.avatar-factory/icons/music_widget.png|")"
	cat > "$HOME/$Desktop/music_widget.desktop" << message
"$music_widget"
message
}


hide_widget () {
	music_widget="$(cat $music_widget_avatar  | sed "s|^Icon=.*|Icon=$null_icon|")"
	cat > "$HOME/$Desktop/music_widget.desktop" << message
"$music_widget"
message
}


#############FLOW

player_state=0
while [ 1 = 1 ]; do
	if [ -f $music_widget_avatar ] ; then
		ps -C "$music" >& /dev/null
		if [[ $? -eq 0 ]]; then
			if [ $player_state != "running"  ]; then
				show_widget
				player_state=running
			fi
		else
			if [ $player_state != "close"  ]; then
				hide_widget
				player_state=close
			fi
		fi
	fi
	sleep 5
done



