#!/bin/bash

help_msg() {
	echo "Usage: $(basename $0) [-h][-v][-u NOM_DOSSIER_UTILISATEUR]"
	echo 'Description'
	echo '	-h	affiche cette aide'
	echo '	-v	mode verbeux'
	echo '	-u	nom du dossier utilisateur à créer'
}

verbose_print() {
	local MESSAGE="${@}"
	if [[ "${VERBOSE}" == true ]];then
	  printf "${MESSAGE}\n"
	fi
}

# Si aucun argument donné, on affiche l'aide
if [[ ${#} -eq 0 ]]; then
	help_msg
	exit 1
fi

# Définition des paramètres
optstring=":hvu:" #getopts cherchera les paramètres listés et attendra une valeur pour ceux suivis d'un ':' 

# Voici la liste des variables utilisées par getopts
# OPTIND => index de l'argument
# OPTARG => valeur de l'option si définie (-u option => OPTARG="option")
# IPTERR => 0 ou 1, si égal à 1 bash affiche les messages d'erreur
OPTION_O=false

while getopts ${optstring} arg ; do #itère sur les paramètres types -p, ne prends pas en compte les positionnels (args), le type long (--long) n'est pas accepté => cas '?)'
	case ${arg} in
	 	h)
		  help_msg
		  exit 0
		  ;;
		v)
		  VERBOSE='true'
		  verbose_print "Mode prolixe activé."
		  ;;
		u)
		  NOM_DOSSIER_UTILISATEUR="${OPTARG}"
		  ;;
		?)
		  echo "option invalide: -{OPTARG}."
		  echo
		  help_msg
		  echo
		 ;;
	esac
done

verbose_print "Nom utilisateur: $NOM_DOSSIER_UTILISATEUR"

CHEMIN_DOSSIER_COUPES_IMAGERIE_CIBLE=~/www/sauvegarde_anatomique/${NOM_DOSSIER_UTILISATEUR}/coupes_imagerie
CHEMIN_DOSSIER_LISTE_PATIEN_CIBLE=~/www/sauvegarde_anatomique/${NOM_DOSSIER_UTILISATEUR}/liste_patients
CHEMIN_DOSSIER_LOGS_CIBLE=~/www/sauvegarde_anatomique/${NOM_DOSSIER_UTILISATEUR}/log
CHEMIN_DOSSIER_SCENES_CIBLE=~/www/sauvegarde_anatomique/${NOM_DOSSIER_UTILISATEUR}/scenes
CHEMIN_DOSSIER_VOLUMES_CIBLE=~/www/sauvegarde_anatomique/${NOM_DOSSIER_UTILISATEUR}/volumes

if [ ! -d  ~/www/sauvegarde_anatomique/${NOM_DOSSIER_UTILISATEUR} ]; then
	verbose_print " Création dossier ~/www/sauvegarde_anatomique/${NOM_DOSSIER_UTILISATEUR}"
	mkdir ~/www/sauvegarde_anatomique/${NOM_DOSSIER_UTILISATEUR}
fi

if [ ! -d  ${CHEMIN_DOSSIER_COUPES_IMAGERIE_CIBLE} ]; then
	verbose_print " Création dossier ${CHEMIN_DOSSIER_COUPES_IMAGERIE_CIBLE}"
	mkdir ${CHEMIN_DOSSIER_COUPES_IMAGERIE_CIBLE}
fi

if [ ! -d  ${CHEMIN_DOSSIER_LISTE_PATIEN_CIBLE} ]; then
	verbose_print " Création dossier ${CHEMIN_DOSSIER_LISTE_PATIEN_CIBLE}"
	mkdir ${CHEMIN_DOSSIER_LISTE_PATIEN_CIBLE}
fi

if [ ! -d  ${CHEMIN_DOSSIER_LOGS_CIBLE} ]; then
	verbose_print " Création dossier ${CHEMIN_DOSSIER_LOGS_CIBLE}"
	mkdir ${CHEMIN_DOSSIER_LOGS_CIBLE}
fi

if [ ! -d  ${CHEMIN_DOSSIER_SCENES_CIBLE} ]; then
	verbose_print " Création dossier ${CHEMIN_DOSSIER_SCENES_CIBLE}"
	mkdir ${CHEMIN_DOSSIER_SCENES_CIBLE}
fi

if [ ! -d  ${CHEMIN_DOSSIER_VOLUMES_CIBLE} ]; then
	verbose_print " Création dossier ${CHEMIN_DOSSIER_VOLUMES_CIBLE}"
	mkdir ${CHEMIN_DOSSIER_VOLUMES_CIBLE}
fi

