#!/bin/sh
# preinstalador script for Emalibre
# resumen de los parametros de este script:
#        * <new-preinst> `install'
#        * <new-preinst> `install' <old-version>
#        * <new-preinst> `upgrade' <old-version>
#        * <old-preinst> `abort-upgrade' <new-version>
set -e
pidFile="/var/run/emalibre.pid"
pidMonitorFile="/var/run/monitor_emalibre.pid"
echo ""
printf "\033[1;35m***************************************************************\n" 
printf "Gracias por instalar EMA Libre Cliente (Carpincho)!!.\n"
printf '***************************************************************\033[0m\n'
echo ""
printf "\033[1;4m1) Comenzamos por verificar si ya existe configuracion personal...\033[0m\n"
case "$1" in
	install|upgrade)
	
	printf "\033[1;10m * 1.0) Se verifica y detiene si existe EMA Libre corriendo.\033[0m"
	# 0. Se detiene emalibre si existe instancia corriendo.
	if [ -f $pidFile ]; then
	 rm -f /var/run/emalibre.pid
	 rm -f /var/run/emalibre.log
	 fi
	if [ -f $pidMonitorFile ]; then 
		rm -f /var/run/monitor_emalibre.pid
		rm -f /var/run/monitor_emalibre.log
	fi	
	printf "\033[1;32m --> OK. \033[0m\n" 
	# 1. Se consulta si existe el archivo de configuracion
	if [ -f "/usr/share/emalibre/conf/ConfiguracionGeneral.js" ]; then
	    printf "\033[1;10m * 1.1) Existe un archivo de configuración en conf/, se realiza backup.\033[0m"
	    cp -f /usr/share/emalibre/conf/ConfiguracionGeneral.js /tmp || true
	    printf "\033[1;32m --> OK. \033[0m\n"
	elif [ -f "/usr/share/emalibre/package.nw/conf/ConfiguracionGeneral.js" ]; then
	    printf "\033[1;10m * 1.1) Existe un archivo de configuración en package.nw/conf/, se realiza backup.\033[0m"
	    cp -f /usr/share/emalibre/package.nw/conf/ConfiguracionGeneral.js /tmp || true
	    printf "\033[1;32m --> OK. \033[0m\n"
	else
	    printf "\033[1;10m * 1.1) Es una instalación nueva, no existe archivo de configuración.\033[0m"
	    printf "\033[1;32m --> OK. \033[0m\n"
	fi
	printf "\033[1;4m2) Comienza la instalación:\033[0m\n"
	;;
	abort-upgrade)
	printf "\033[1;31m Opps... ocurrio un error!!. \033[0m\n"
	;;

    *)
	printf "\033[1;31mOpps. preinst llamado con un argumento desconocido \`$1'  \033[0m\n" >&2
	exit 1
    ;;
esac
exit 0
