#!/bin/bash
#
# numpad_fr :	Script de gestion de la virgule sur le pavé numérique avec langue française
#
# author:	Daniel Moyne (dmoyne@free.fr)
#		le 28-11-2002
#
# short-description:	Install coma on numeric keyboard pad
# description:		[fr_FR]Installe la virgule sur le pavé numérique si la langue française est utilisée
# description:		[en]Installe la virgule sur le pavé numérique si la langue française est utilisée
# description:		[fr]Installe la virgule sur le pavé numérique si la langue française est utilisée
#
# chkconfig: 2345 99 80

# Source de la librairie functions
. /etc/rc.d/init.d/functions

#	The following file make bash to relock the numlock key when logging
#	since login unlock it.
SYSCONF_FILE=/var/lock/subsys/numpad_fr

# Si ce n'est pas la langue française qui est sélectionnée on ne fait rien

if [ $LANG = "fr" ] || [ $LANG = "fr_FR" ]; then

	# On regarde le type d'appel.
	case "$1" in
		start)
			gprintf "$(basename $0) : Installe virgule décimale sur clavier numérique"
			xmodmap -e 'keycode 0x5B = KP_Delete comma'
			touch $SYSCONF_FILE
			RETVAL=$?
		;;

		stop)
			
			gprintf "$(basename $0) : Restaure point décimal sur clavier numérique"
			xmodmap -e 'keycode 0x5B = KP_Delete KP_Decimal'
			rm -f $SYSCONF_FILE
			RETVAL=$?
		;;

		status)
			case "`xmodmap -pke | grep " 91"`" in
				"keycode  91 = KP_Delete KP_Decimal")
					gprintf "$(basename $0) : Point decimal installé sur clavier numérique"
					RETVAL=$?
				;;
				"keycode  91 = KP_Delete comma")
					gprintf "$(basename $0) : Virgule decimale installée sur clavier numérique"
					RETVAL=$?
				;;
				*)
					gprintf "$(basename $0) : Ni virgule, ni point décimal intallé !"
					RETVAL=1
			esac
		;;

		restart)
			$0 stop
			if [ $? = 0 ]; then
				$0 start
			fi
			RETVAL=65536
		;;
		
		reload)
			$0 start
			RETVAL=65536
		;;

		*)
			gprintf "Utilisation:\n%s {start|stop|restart|reload|status}\n" "$0"
			RETVAL=1
		;;
	esac

else
	gprintf "$(basename $0) : Ne fait rien"
	RETVAL=$?
fi

case "$RETVAL" in
	0)
	echo_success
	echo
	;;
	65536)
	;;
	*)
	echo_failure
	echo
	;;
esac

exit $RETVAL
