#!/bin/bash
# -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
source /etc/ulibauto || exit 1
urequire conf

function display_help() {
    uecho "$scriptname: initialiser un environnement de développement

USAGE
    $scriptname [destdir]

OPTIONS
    -n, --name NAME
        Spécifier le nom du projet"
}

name=
args=(
    --help '$exit_with display_help'
    -n:,--name: name=
)
parse_args "$@"; set -- "${args[@]}"

destdir="${1:-.}"
confopt="${name:+-i}"

read_value $confopt "Veuillez entrer le nom du projet" name "$name"

dest="$destdir/$name"
[ -d "$dest" ] && die "Le répertoire $(ppath "$dest") existe déjà"

einfo "Vous allez créer un nouveau projet $name dans le répertoire $(ppath "$destdir")"
ask_yesno "Voulez-vous continuer?" O || die

estep "Copie des fichiers"
rsync -a --exclude "/$scriptname" "$scriptdir/" "$dest" || die

setx nulibdir=readlink "$scriptdir/nulib"
setx nulibdir=abspath "$scriptdir/$nulibdir"
setx nulibdir=relpath "$nulibdir" "$dest"

estep "Correction du lien nulib"
ln -sfT "$nulibdir" "$dest/nulib"

estep "Maj de la configuration"
conf_enable "$dest/config/server.conf" NAME="$name"

enote "Fin de la copie. Vous pouvez maintenant configurer $name/config/server.conf"
