#!/bin/bash
########################################################################################################################
# But : mise en ligne automatique sur le serveur par ftp, de la dernière version de la doc du Framework.
# Auteur :  Jean-Pascal Milcent <jpm@tela-botanica.org>
# License : GPL v3
# Création : 12 mars 2014
# Version: 1
# Exemple : ./envoyerDoc.sh -h 193.54.123.169 -u telabotaa -p mot_de_passe
########################################################################################################################
# Constante
NBREPARAM=$#
CIBLE="./"
FTP_CIBLE="/www/doc/framework"

# Aide
E_OPTERR=65
if [ "$1" = '--help' ]
then # Le script a besoin d'au moins un argument sur la ligne de commande
	echo "Usage $0 -[parameters -u, -p ]"
	echo "Paramétres : "
	echo "	-h: indiquer l'hote ftp"
	echo "	-u: indiquer le nom de l'utilisateur ftp"
	echo "	-p: indiquer le mot de passe de l'utilisateur ftp"
	echo "	-v: indiquer la version du Framework"
	exit $E_OPTERR
fi

# Récupération des paramètres et des options de la ligne de commande
TEMP=`getopt -o u:p:h:v: -l help: -- "$@"`
if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi
eval set -- "$TEMP"
while [ ! -z "$1" ] ; do
	#echo $1" # "$2
	case "$1" in
		-h) HOST=$2;;
		-u) FTP_USER=$2;;
		-p) FTP_PASSWD=$2;;
		-v) VERSION=$2;;
		--) shift ; break ;;
		*) echo "Internal error!" ; exit 1 ;;
	esac
	shift 2
done

FTP_CIBLE="$FTP_CIBLE/$VERSION"

if [ $NBREPARAM -eq 0 ]; then
	echo "Utiliser --help pour voir les options de transfert."
elif [ "$VERSION" = "" ]; then
	echo "Vous n'avez pas indiqué la version du Framework. Utiliser --help pour voir les paramètres."
else
	echo "Transfert sur le serveur '$HOST' dans '$FTP_CIBLE' :";
	lftp ftp://$FTP_USER:$FTP_PASSWD@$HOST -e "set ftp:passive off; mirror -e -R -L -x .svn -x genererPhpDoc.sh -x envoyerDoc.sh $CIBLE $FTP_CIBLE ; quit"
fi;