#!/bin/sh

case $LANG in
	hu*)
	  appnotfound="Limbo Media nincs meg. Talán hibás a telepítés. Probáld újratelepíteni a programot"
	  findmsg="Megfelelő Java verzió keresése, kérem várjon..."
	  findtitle="Limbo Media"
	  foundengine="A megfelelő java verzió itt:"
	  javawserr="Javaws Nincs meg! Telepítse a Jre/Java csomagot és indítsa újra a programot!"
	  java3derr="Java 3D vagy egy komponens nincs meg! Most telepíteni kell a program működéséhez."
	  jvhome="Java home most :"
	  jvbin="Java binary itt: "
	  restart="A művelet befejeződött. Indítsa újra a programot."
	  starting="$findtitle indítása itt: $(cat /etc/blackPanther-release | sed -e 's|).*|\)|')"
	  ;;
        *)
	  appnotfound="Limbo Media not found. Maybe installation is broken. Try to reinstall application"
	  findmsg="I find compatible java version, please wait..."
	  findtitle="Limbo Media"
	  foundengine="Working JAVA version here:"                                                                                      
	  javawserr="Javaws NOT found! Please install an Jre/Java engine and restart application!"
	  java3derr="Java 3D or a component NOT found! Now need install for application working."
	  jvhome="Java home now  :"
	  jvbin="Java binary here:"
	  restart="The action is succesful. Please restart application."
	  starting="$findtitle starting on $(cat /etc/blackPanther-release | sed -e 's|).*|\)|')"
	  ;;
esac      

if [ -f /usr/lib/limbomedia/limbomedia.jar ];then
    APPDIR=/usr/lib/limbomedia
elif [ -f $HOME/.limbomedia/limbomedia.jar ];then
    APPDIR=$HOME/.limbomedia
elif [ -f $PWD/limbomedia.jar ];then
    APPDIR=$PWD/
fi
xmsg=`which pydialog 2>/dev/null||which kdialog 2>/dev/null|| which zenity 2>/dev/null|| echo`

if [ x$APPDIR = x ];then
    $xmsg --error "$appnotfound"
    exit
fi

CONFPREFIX="
	$HOME/.limbomedia/
	/etc
	$APPDIR/"
	
	FINDCONF=`find ${CONFPREFIX} -type f -name limbomedia.cfg 2>/dev/null| head -n 1`
	#echo "FINDCONF: $FINDCONF "

	for PREFIX in ${CONFPREFIX}; do
	    if test -f "${PREFIX}/limbomedia.cfg"; then LIMBOCONF="${PREFIX}/limbomedia.cfg" && break; fi
	done
	echo "LimboConf:$LIMBOCONF"

PROGRAM=`readlink "$0"`
if [ "$PROGRAM" = "" ]; then
  PROGRAM=$0
fi


PROGRAM_DIR=$APPDIR

if [ ! -f "${JAVA_HOME}/bin/java" ] ; then
    if [ ! -n "$DISPLAY" ];then
        echo "$findmsg"
     else
	notify-send -u low --icon dialog-warning "$findtitle" "$findmsg"
    fi
        PREFIXES="
		/usr/java
		/usr/lib/jvm/java/bin
		/usr/local/java
		/usr/local/
		/opt/j*/
		/usr/share/jvm/*/"
	FINDJAVA=`find ${PREFIXES} -type f -name java 2>/dev/null| head -n 1`
	FOUNDJAVA=`echo "$FINDJAVA" | sed 's|//|/|'`
	echo "$foundengine $FOUNDJAVA "

	for PREFIX in ${PREFIXES}; do
	    if test -x "${FOUNDJAVA}"; then BIN_JAVA="${FOUNDJAVA}" && break; fi
		 done

else 
    BIN_JAVA="$JAVA_HOME/bin/java"

fi

if [ ! -x "${BIN_JAVA}" ];then
           [ -n "$DISPLAY" ] && $xmsg --error "$javawserr" && exit
           [ ! -n "$DISPLAY" ] && echo -n "$javawserr" && exit
	echo ""
	echo "$javawserr"
	echo ""
	exit
    else
    		echo "$jvhome [ $(echo ${BIN_JAVA}| sed 's|/bin/java||') ]"
		echo "$jvbin  [ ${BIN_JAVA} ]"

fi

SERVICE=$(ps aux | grep -v grep | grep limbomedia.jar 2>/dev/null)
URL=$(cat $LIMBOCONF | grep ^lm.http.bind | awk -F= '{print $2}')
PORT=$(cat $LIMBOCONF | grep ^lm.http.port | awk -F= '{print $2}')

if [ ! -n $URL ]&&[ ! -n $PORT ];then
    echo "URL or PORT settings error! Check the config file: $LIMBOCONF"
    $xmsg --error "URL or PORT settings error! Check the config file: $LIMBOCONF or reinstall it LimboMedia"
    exit
fi
if [ -n "$SERVICE" ];then
echo "LimboMedia Service is running AS service on http://$URL:$PORT"
default-browser http://$URL:$PORT
else
if [ ! -f $HOME/.limbomedia/limbomedia.jar ];then
    echo "Creating LimboMedia directory in userdir"
    mkdir -p $HOME/.limbomedia
    cp -rf $PROGRAM_DIR/* $HOME/.limbomedia/
fi
echo "LimboMedia Service starting on http://$URL:$PORT"
notify-send -u normal --icon limbomedia "Limbo Media Server" "$starting http://$URL:$PORT"
cd $HOME/.limbomedia
exec ${BIN_JAVA} -jar ./limbomedia.jar &
sleep 10
while ! (default-browser http://$URL:$PORT); do sleep 5; done

fi
