#!/bin/bash

p_nom=${0##*/}
p_projet=samba
eq_modele=esbl
eq_rep_log=/var/log/esbl

if [ "$1" == "instance" ]; then


    mkdir -p ${eq_rep_log}
    LOG=${eq_rep_log}/install_${p_projet}.log

    touch $LOG
    log ()
    {
	        logger -t EQDOMINST -s -f $LOG "$1" >> $LOG 2>&1
    }

    m="DEBUT_:PGM=$p_nom"
    log "$m"

    echo "$p_nom:Mise en place des répertoires et permissions pour samba bureautique"

    container_path_fichier=$(CreoleGet container_path_fichier)

    if [ $(mount |grep " /home "|wc -l) -eq 1 ]; then
        if [ -L "$container_path_fichier/data" ]; then
            echo "$p_nom: le lien /data existe"
        else
            [ ! -d "/home/data" ] && mkdir /home/data
            ln -s /home/data $container_path_fichier/data  >> $LOG 2>&1
        fi
        # si le serveur est en mode conteneur creation du lien sur le maitre
        if [ "$container_path_fichier" != "" ]; then
            if [ -L "/data" ]; then
                echo "$p_nom: le lien /data existe sur le maitre"
            else
                echo "$p_nom: création du lien /data sur le maître"
                ln -s /home/data /data  >> $LOG 2>&1
            fi
        fi
    fi

    #Création des répertoires /data/etc et /etc/samba/includes
    [ ! -d "/data/etc" ] && mkdir /data/etc
    [ ! -d "/etc/samba/includes" ] && mkdir /etc/samba/includes

    #Création des répertoires bureautiques et permissions
    mkdir -p /data/bureautique
    if [ -L "$container_path_fichier/bureautique" ]; then
        echo "$p_nom: le lien /bureautique existe"
    else
        echo "$p_nom: création du lien /bureautique"
        ln -s /data/bureautique $container_path_fichier/bureautique  >> $LOG 2>&1
    fi

    # si le serveur est en mode conteneur creation du lien sur le maitre
    if [ "$container_path_fichier" != "" ]; then
        if [ -L "/bureautique" ]; then
            echo "$p_nom: le lien /bureautique existe sur le maitre"
        else
            echo "$p_nom: création du lien /bureautique sur le maître"
            ln -s /home/data/bureautique /bureautique  >> $LOG 2>&1
        fi
    fi
    chmod 2755 $container_path_fichier/data/bureautique/


    chgrp 1513 $container_path_fichier/data/bureautique
    cd $container_path_fichier/data/bureautique
    mkdir -p echanges
    mkdir -p echanges/jour
    mkdir -p echanges/semaine
    mkdir -p echanges/mois
    mkdir -p dossiers
    mkdir -p diffusion
    mkdir -p individuel
    mkdir -p imprimantes

    #Création des répertoires pour le téléchargement automatique des pilotes imprimantes windows
    # serves drivers to Windows NT x86
    # Adaptation eSBL
    SAMBAPRINT="$container_path_fichier/data/bureautique/imprimantes"

    for rep in COLOR  IA64  W32ALPHA  W32MIPS  W32PPC  W32X86  WIN40  x64
        do
            /bin/mkdir -p $SAMBAPRINT/$rep
        done
    chown -R root:1512 $SAMBAPRINT
    chmod -R 775 $SAMBAPRINT


    # pour les impressions [printers]
    mkdir -p $container_path_fichier/var/spool/samba
    chmod 1777 $container_path_fichier/var/spool/samba

    #Droits sur echangeschmod 2755 echanges
    chmod 3777 echanges/jour echanges/semaine echanges/mois

    #Droits sur diffusion et  imprimantes
    chgrp 1512 diffusion dossiers

    setfacl    -m g:1512:rwx,g::rx,u::rwx,o::rx dossiers/
    setfacl -d -m g:1512:rwx,g::rx,u::rwx,o::rx dossiers/

    # diffusion et imprimantes : lire et modif pour admins
    chmod 2755  diffusion
    setfacl    -m g:1512:rwx,g::rx,u::rwx,o::rx diffusion/
    setfacl -d -m g:1512:rwx,g::rx,u::rwx,o::rx diffusion/

    setfacl -R  -m g:1512:rwx,g::rx,u::rwx,o::rx imprimantes/
    setfacl -dR -m g:1512:rwx,g::rx,u::rwx,o::rx imprimantes/

    # création du fichier /data/etc/smb-local.conf
    touch $container_path_fichier/etc/samba/includes/smb-local.conf

    m="FIN___:PGM=$p_nom"
    log "$m"

fi

exit 0
