#!/bin/bash
nomLogiciel="$(basename "$0")"
FONCTION="lecture et écriture de fichier ini ou conf"
VERSION="alpha"

echo "lancement $nomLogiciel..."

function _quitter {
    # mettre ici tout ce qui sera nescessaire à la bonne fermeture
echo "--------------------------------
AVANT sauverIni le fichier ini contient :"
cat $fichierIni

    # echo "$(sauverIni)" > "$nomLogiciel.ini"  ;
    sauverIni ;

echo "--------------------------------
APRES sauverIni le fichier ini contient :"
cat $fichierIni

    exit 0
}

function parserLigneIni {
    i=$@ ;
    case $i in
        # xxxxx=*)                xxxxxx="${i#*=}" ;;    
        nomLogiciel=*)            nomLogiciel="${i#*=}" ;;
        FONCTION=*)                FONCTION="${i#*=}" ;;
        VERSION=*)                VERSION="${i#*=}" ;;
        une_valeur=*)            une_valeur="${i#*=}" ;;
        une_autre_valeur=*)        une_autre_valeur="${i#*=}" ;;
        une_troisieme=*)        une_troisieme="${i#*=}" ;;
    esac
}

function chargerIni {
# [ -f "$fichierIni" ] || \#
    while read line ;
    do
        parserLigneIni "$line" ;
    done < "$fichierIni" ;
}

function sauverIni {
echo "nomLogiciel=$nomLogiciel
FONCTION=$FONCTION
VERSION=$VERSION
une_valeur=$une_valeur
une_autre_valeur=$une_autre_valeur
une_troisieme=$une_troisieme
"  > "$nomLogiciel.ini" ;
}

function _initialisation {
    une_valeur="On peut changer le fichier ini puis"
    une_autre_valeur="le relancer pour voir les changements"
    une_troisieme="des espaces et des lettres accentuées àÂâêïù"

echo "Les valeurs AVANT chargerIni sont :
nomLogiciel=$nomLogiciel
FONCTION=$FONCTION
VERSION=$VERSION
une_valeur=$une_valeur
une_autre_valeur=$une_autre_valeur
une_troisieme=$une_troisieme
"

    fichierIni="$nomLogiciel.ini"
    echo "le nom du fichier ini est : $fichierIni"
    if [ -f $fichierIni ] ; then
        echo "chargement du fichier ini"
        chargerIni ;
    fi

echo "Les valeurs APRES chargerIni sont :
nomLogiciel=$nomLogiciel
FONCTION=$FONCTION
VERSION=$VERSION
une_valeur=$une_valeur
une_autre_valeur=$une_autre_valeur
une_troisieme=$une_troisieme
"
}

function _main {
    _quitter
}

_initialisation
_main

echo "Ne doit pas s'afficher !"
exit 0