#!/bin/bash
#
#	guadalinex-check: Actualiza ficheros de configuracin
#
########################################################################
#

test $UID -eq 0 || exit 0

# funcin upgrade. Uso: upgrade <source> <original file> <upgraded file> <backup directory>
#
prefix=$2

function upgrade {
	test -f $1 || exit 0
	md5_source=`md5sum $1 | cut -d" " -f1`
	md5_original=`md5sum $2 | cut -d" " -f1`

	if ( test $md5_original = $md5_source )
	then
		cp $3 $1
	else
		echo -e "\n\tWarning: El fichero de configuracin: $1 ha sido modificado tras la primera instalacin. Se crear copia de seguridad del fichero anterior en: $4\n"
		mkdir -p $4
		cp -p $1 $4
		cp -p $3 $1
	fi
}

function remove {
	test -e $1 || exit 0
	md5_source=`md5sum $1 | cut -d" " -f1`
	md5_original=`md5sum $3 | cut -d" " -f1`

	if ( test $md5_original = $md5_source )
	then
		mv $4/$2 $1
		rmdir $4
	fi
}

if [ ! $# -eq 2 ]
	then echo "Usage: guadalinex-config install|remove PATH"
else
	case $1 in
	install)
	
		for i in $(cat $prefix/lista)
		do upgrade $(echo $i | cut -d"@" -f1) $prefix/`echo $i | cut -d"@" -f2` $prefix/`echo $i | cut -d"@" -f3` $(echo $i | cut -d"@" -f4)
		done
		;;
	remove)
		for i in $(cat $prefix/lista)
		do remove $(echo $i | cut -d"@" -f1) $(echo $i | cut -d"@" -f2) $prefix/`echo $i | cut -d"@" -f3` $(echo $i | cut -d"@" -f4)
		done
		;;
	*)
		echo "Usage: guadalinex-config install|remove PATH"
		;;
	esac
fi
