#!/bin/bash
#
###################################################################################################################
#Autor: 		Daniel Meiß-Wilhelm																				  #
#Freigegeben:	Januar 29 2014																					  #
#Distro:		PCLinuxOS 2014																					  #
#Lizenze:		GPL2																							  #
#Benötigt:		yad, gtkdialog, grep, ffmpeg, (Bestehende Internetverbindung) (Optional): mplayer, vlc 			  #							
#Beschreibung:	LXFreeTV ist eine freie Stream Anwendung zum anschauen von diversen Web-Streams.				  #
#				Nutzung erfolgt auf eigene Gefahr, bei Verlust von jeglichen Daten übernimmt der                  #
#				Autor keine Haftung.																			  #
#				Diesen Hinweis bitte nicht enfernen. Danke														  #
#Webseite:		http://www.pclinuxos.com/forum/index.php/topic,124226.0.html									  #
#Danksagung an:	Revoluz, Rogaven, discoverer, Just17, Ken														  #
###################################################################################################################
Encoding=UTF-8
#################### i18n - Internationalization - Internationalisierung ##########################################
export TEXTDOMAIN=lxfreetv.gui
export TEXTDOMAINDIR="/usr/share/locale"
################################ temporäres Verzeichnis erstellen #################################################
TMP_DIR1=$HOME/tmp/lxfreetv
CONF_DIR=$HOME/.config/lxfreetv
if [ ! -f $CONF_DIR/conf.cfg ]; then
	echo "#Configuration file for LXFreeTV." > $CONF_DIR/conf.cfg
fi
############################### Verzeichnis bestimmen für die Aufnahmen ###########################################
if [ $(grep -c "tmp_path" $CONF_DIR/conf.cfg| cut -d " " -f2) -gt 0 ]; then
	TMP_PATH_S=`grep tmp_path $CONF_DIR/conf.cfg | cut -d " " -f2`
	else
	TMP_PATH_S=$"$TMP_DIR1"
fi
################################ Player Konfiguration auslesen ####################################################
if [ $(grep "realtime" $CONF_DIR/conf.cfg| cut -d ":" -f2) = true ]; then
	REALTIME_S=true
	else
	REALTIME_S=false
fi
echo "Realtime is $REALTIME_S"
############################################# Hauptfenster ########################################################
export SETTINGS_DIALOG='
<window window_position="1" title="LXFreeTV Einstellungen" resizable="true" icon-name="gtk-preferences" --space-expand="true" --space-fill="true">
<vbox>
	<frame>
		<hbox tooltip-text="'$"Wähle ein Verzeichnis zum speichern der Streams"'">
			<text><label>'$"TMP Verzeichnis:"'</label></text>
				<entry accept="newdirectory">
				<default>'"$TMP_PATH_S"'</default>
				<variable>DIRECTORY</variable>
				</entry>
					<button use-stock="true" label="gtk-open">
						<variable>FILE_BROWSE_FILENAME</variable>
						<action type="fileselect">DIRECTORY</action>
					</button>
		</hbox>
	<hseparator></hseparator>
		<vbox>
			<hbox>
			<text selectable="false" use-markup="True" width-chars="80" xalign="0">
				<label>"'$"Die Realtime <b>-re</b> Option aktivieren.
Mit dieser Option wird der Stream in Echtzeit gelesen. 
Das bedeutet das FFMPEG versucht so schnell wie möglich den Stream zu lesen."'"</label>
			</text>
			<checkbox active="'$REALTIME_S'">
				<label>'$"Realtime"'</label>
				<variable>REALTIME</variable>
			</checkbox>
			</hbox>
		</vbox>
	<hseparator></hseparator>		
	</frame>	
	<hbox start="true">
		<hbox start="true">
			<button use-stock="true" label="gtk-save">
				<action type="exit">save</action>
			</button>	
			<button use-stock="true" label="gtk-close"></button>
		</hbox>
	</hbox>
</vbox>
</window>
'

I=$IFS; IFS=""
for STATEMENT in  $(gtkdialog --center --program=SETTINGS_DIALOG); do
	eval $STATEMENT
done
IFS=$I

if [ "$EXIT" == "save" ];then
echo -e "#Configuration file for LXFreeTV.\ntmp_path $DIRECTORY\n#\n#Player Options\nrealtime: $REALTIME\n"| \
sed -e '/^\s*$/d' > $CONF_DIR/conf.cfg
	if [ ! $TMP_PATH_S = $DIRECTORY ]; then 
	yad --info --width=300 --height=100 --text=$"Sie haben das TMP Verzeichnis geändert. \
	\nSoll das jetzige Verzeichnis verschoben werden? \
	\nWenn Sie Nein klicken wird das jetzige gelöscht und ein neues angelegt. " \
	--window-icon=gtk-dialog-question --image=gtk-dialog-question --title=INFO \
	--button="gtk-yes:0" --button="gtk-no:1"
		if [ $? = 0 ]; then
			mv $TMP_PATH_S $DIRECTORY
			echo "mv $TMP_PATH_S $DIRECTORY"
			else
			rm -rf $TMP_PATH_S 
			echo "rm -rf $TMP_PATH_S"
			mkdir $DIRECTORY
			echo "mkdir $DIRECTORY"
		fi 
		yad --info --width=300 --height=100 \
		--text=$"Starten Sie jetzt LXFreeTV neu, um das neue Verzeichnis zu nutzen!" \
	--window-icon=gtk-dialog-info --image=gtk-dialog-info --title=INFO \
	--button="gtk-ok:0" 
	fi
	yad --info --width=300 --height=100 \
		--text=$"Starten Sie jetzt LXFreeTV neu, um die Änderungen anzuwenden!" \
	--window-icon=gtk-dialog-info --image=gtk-dialog-info --title=INFO \
	--button="gtk-ok:0"
fi
