#!/bin/sh

# Par Julien MOREAU	( jmoreau@bigfoot.com )

nbps=0				# Nombre de paramètres souhaités (sans option)
nom_cmde=`basename $0`		# Nom de la commande
usage="Usage: $nom_cmde"		# Message d'aide
usage=$usage"\n\tVous permez d'acceder à mes scripts à action à distance."

if test `uname` != "HP-UX" ; then e="-e" ; fi

if [ $# -ne $nbps ] ; then	# Si le nombre de paramètres est incorrecte,
	echo $e $usage 1>&2 ; exit 2	# Affichage aide puis arrêt.
fi

rep=~moreau_j/bin_pub/
goodusersfile=$rep.mailist
 badusersfile=$rep.badusers
sepa='*********' ; sepa=$sepa$sepa ; sepa=$sepa$sepa ; sepa=$sepa$sepa

title () {
	print -n "\033]0;$1\007" > /dev/tty
}

function _cd {
	typeset d

	\cd $* >/dev/null		# le vrai "cd" (interne)
	d="${PWD#$HOME/}"
	if [ "$TERM" = xterm ]
	then title "$MACHINE:$d"
	fi
}
alias cd _cd

grep -q ^`whoru` $goodusersfile
if [ $? -ne 0 ] ; then
	echo $e "Vous n'avez pas l'autorisation d'accéder à mes scripts\c" 1>&2
	echo $e " à action distante !\nPour cela, il faut s'enregistrer\c" 1>&2
	echo " avec la commande mail_reg" 1>&2
	echo " et ne pas appartenir au fichier .badusers." 1>&2
	ret=1
else
    grep -q ^`whoru`$ $badusersfile
    if [ $? -eq 0 ] ; then
	echo $e "Vous faîtes partie de la liste noire des mauvais\c" 1>&2
	echo $e " utlisateurs, ... dommage !\nPermission denied." 1>&2
	ret=1
    else

	cd ~moreau_j/bin ; ret=$?
	clear
	while true ; do
		echo $e "Contenu du répertoire :\n"
		ls -F
		echo $e "\nEntrez votre ligne de commande\c"
		echo $e " (touche [Entrée] pour quitter) :\n\t\c" ; read cmde
		if test -z "$cmde" ; then exit $ret ; fi ; echo 
		set $cmde ; /bin/ls -1|grep -q ^$1$
		if test $? -eq 0 ; then
			$cmde
			echo $e "\n# Valeur de retour \$? = $?"
		else
			echo "Commande invalide (pas de ce répertoire) !" 1>&2
		fi
		echo $e "\n$sepa\n"
	done
	cd $OLDPWD
 fi
fi

exit $ret

