<?php
/****************************************************************************************
 * SMI (Services Maintenance Interventions) est une gestion libre de maintenance et de SAV
 *
 * Version 1.0.2
 *
 * Copyright (C) 2006-2015  Sylvain FATOME
 * This program is free software; you can redistribute it and/or modify it under the terms
 * of the GNU General Public License as published by the Free Software Foundation;
 * either version 2 of the License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
 * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 * See the GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License along with this program
 * (in the directory docs);
 * if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 * Boston, MA  02110-1301, USA.
 *
 * Contact : galawa@free.fr
 *
 * Web : http://smi.no-ip.org
 ****************************************************************************************/


// vérification des tentatives de hack
$pos = strpos($_SERVER['PHP_SELF'], "inc.php");
if ($pos === FALSE)
    $ok_inc = TRUE;
else
    $ok_inc = FALSE;
if ($ok_inc == FALSE) header("Location: ../index.php");

include_once("../inc/func.inc.php");
include_once("../inc/func_date.inc.php");
include_once("../inc/func_geo.inc.php");
include_once("../inc/func_txt.inc.php");
include_once("../inc/fic_age.inc.php");
include_once("../inc/fic_droits.inc.php");
include_once("../classes/ezSQL/shared/ez_sql_core.php");
include_once("../classes/ezSQL/mysqli/ez_sql_mysqli.php");
include_once("../inc/func_sql.inc.php");
Archivelog(@$_SESSION["code_log"]);
// Variables Formulaire
fix_magic_quotes();
$_GET = clean_str($_GET);
$_POST = clean_str($_POST);

$fic_ok = TRUE;
$csv_ok = TRUE;
$etape1 = FALSE;
$form_action = 'imp_data.php';
$nomfic = '';
$titre = '';
$rep = '';
$desc = '';
$cadre = "G";
$sep = "P";
$mess_err = '';
// Extensions autorisées
$ext_import = ['.txt','.csv'];

if (isset($_GET['td']))
    $td = @$_GET['td']; // On récupère le type en ligne de commande
else
    $td = @$_POST['td']; // On récupère le type en formulaire


// vérification du mode du connecté (pour éviter les hacks)
switch ($td) {
    case "cli" :
        if (@$_SESSION["niv_log"] <= 3)
            $mess_err = _("Vous n'avez pas le droit d'effectuer ce type d'importation");
        else
            $titre = _("IMPORTATION CLIENTS");
        break;
    case "art" :
        $titre = _("IMPORTATION ARTICLES");
        break;
    case "catm":
        $titre = _("IMPORTATION CATEGORIES MATERIELS");
        break;
    case "mque":
        $titre = _("IMPORTATION CONSTRUCTEURS/EDITEURS");
        break;
    case "tl":
        $titre = _("IMPORTATION TYPES LICENCES");
        break;
    case "dep":
        $titre = _("IMPORTATION DEPARTEMENTS/ETATS/REGIONS");
        break;
    case "pays":
        $titre = _("IMPORTATION PAYS");
        break;
    case "villes":
        // Les agences n'ont droit qu'aux imports clients
        if (@$_SESSION["niv_log"] <= 4)
            $mess_err = _("Vous n'avez pas le droit d'effectuer ce type d'importation");
        else
            $titre = _("IMPORTATION VILLES");
        break;
    default :
        $mess_err = _("Vous n'avez pas le droit d'effectuer ce type d'importation");
        break;
}

// On vérifie les droits en fonction du niveau utilisateur
// Et on affecte le dossier racine des imports
switch (@$_SESSION["niv_log"]) {
    case 4 :
        $row = lit_enr_age(@$_SESSION["code_log"], TRUE);
        if (is_array($row)) {
            extract($row);
            $rep = $url_gfc . "/agences/" . strtolower($age_code) . "/imports";
            $desc = _("Répertoire pour imports agence").' ' . $age_nom . " (" . $age_code . ")";
        } else
            $mess_err = _("Problème de paramètre agence");
        break;
    case 5 :
    case 9 :
        $rep = $url_gfc . "/imports";
        $desc = _("Répertoire pour imports administrateur & centre de gestion");
        break;
    default :
        $mess_err = _("Vous n'avez pas le droit d'effectuer d'importation");
        break;
}

if ($mess_err == '')
{
    // Si le sous-répertoire spécifique aux imports n'existe pas, on le crée
    if (!is_dir($rep)) {
        $cree_rep = @mkdir($rep);
        if ($cree_rep) {
            $db = open_database(DBUSER, DBPASS, DBNAME, DBHOST);
            switch (@$_SESSION["niv_log"]) {
                case 4 :
                    // On ajoute le détail dans le fichier MySQL
                    $rech = "INSERT INTO `" . TBFIC . "`";
                    $rech .= " (fic_nom,fic_type,fic_desc,fic_datecrea,fic_codecrea,fic_nbtel) VALUES";
                    $rech .= " ('$rep','0','" . $db->escape($desc) . "','$datea','$admin_code','')";
                    $db->query($rech);
                    break;
                case 5 :
                case 9 :
                    // On ajoute le détail dans le fichier MySQL
                    $rech = "INSERT INTO `" . TBFIC . "`";
                    $rech .= " (fic_nom,fic_type,fic_desc,fic_datecrea,fic_codecrea,fic_nbtel) VALUES";
                    $rech .= " ('$rep','0','" . $db->escape($desc) . "','$datea','$admin_code','')";
                    $db->query($rech);
                    break;
                default :
                    $mess_err = _("Vous n'avez pas le droit d'effectuer d'importation");
                    break;
            }
            $db->disconnect();
        } else
            $mess_err = _("Problème de création du dossier de stockage des fichiers à importer");
        $mess_err = _("Problème de création du dossier de stockage des fichiers à importer");
    }
}

// Création de la liste des fichiers à importer
if ($mess_err == '')
{
    // Balayage du répertoire
    $tab_fic = [];
    $db = open_database(DBUSER, DBPASS, DBNAME, DBHOST);
    $dossier = opendir($rep);

    while (false !== ($Fichier = readdir($dossier))) {
        if (($Fichier != ".") && ($Fichier != "..") && ($Fichier != ".htaccess")) {
            $nom_fic_complet = $rep . "/" . $Fichier;
            if (is_file($nom_fic_complet) == TRUE) {
                $ext = strtolower(strrchr($Fichier, "."));
                if (exist_in_array($ext, $ext_import)) {
                    $rech = "SELECT fic_desc FROM `" . TBFIC . "` WHERE fic_nom = '" . $db->escape($nom_fic_complet) . "'";
                    $row = $db->get_row($rech, ARRAY_A);
                    if ($row)
                    {
                        $row = encode_str($row);
                        extract($row);
                        $tab_fic[$Fichier] = $fic_desc.' ('.$Fichier.')';
                    }
                    else
                        $tab_fic[$Fichier] = $Fichier;
                }
            }
        }
    }
    closedir($dossier);
    $db->disconnect();

    if (count($tab_fic) == 0)
        $mess_err = _("Aucun fichier à importer");
}

if ($mess_err == '')
{
    // On a validé le formulaire
    if (@$_POST["nbutton"] == "val")
    {
        if (isset($_POST['nomfic']))
            $nomfic = trim(@$_POST['nomfic']); // On récupère le nom du fichier à importer

        // Si nom du fichier, c'est que l'on en a choisi un
        if ($nomfic <> '')
        {
            // Chemin complet
            switch (@$_SESSION["niv_log"]) {
                case 4 :
                    $fichier = $url_gfc . "/agences/" . strtolower($age_code) . "/imports/" . @$_POST["nomfic"];
                    break;
                case 5 :
                case 9 :
                    $fichier = $url_gfc . "/imports/" . @$_POST["nomfic"];
                    break;
                default :
                    $mess_err = _("Problème de paramètres");
                    break;
            }

            // Variable d'encadrement
            $cadre = trim($_POST["cadre"]);
            switch ($cadre) {
                case "A" :
                    $encadre = "'";
                    break;
                case "R" :
                    $encadre = "";
                    break;
                default :
                    $encadre = "\"";
                    break;
            }

            // Délimiteur
            $sep = trim($_POST["sep"]);
            switch ($sep) {
                case "V" :
                    $delimiteur = ",";
                    break;
                default :
                    $delimiteur = ";";
                    break;
            }
        }

        if ($mess_err == '')
        {
            $form_action = 'import.php';

            // Lecture 1ère ligne pour créer la liste des champs
            $handle = @fopen($fichier, 'r');
            if ($handle) {
                if (($tab_csv = fgetcsv($handle, 0, $delimiteur, $encadre)) !== FALSE){
                    $tab_csv = encode_str2($tab_csv);
                }
                else
                    $mess_err = _("Problème dans le fichier à importer");
                fclose($handle);
            } else
                $mess_err = _("Problème à l'ouverture du fichier à importer");
        }
    }
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <title>SMI - <?PHP echo _("ESPACE PRIVE"); ?> : <?PHP echo _("Importation"); ?></title>

    <?PHP include_once("../inc/header.inc.php"); ?>

    <script language="javascript">
        <!--
        var tab1_champ = [];
        //-->
    </script>


    <script type="text/javascript">
        <!--
        function init_all() {
            init_Body();
            init_autohref('quit', 'click', 'index.php',false);
            <?PHP
            echo "init_valid_form('val','imp_maj','".$_SESSION['date_fmtshort']."',tab1_champ,'','');";
            if ($nomfic <> '')
                echo "readonly_id('nomfic-ligtitre-cadre-sep',false);";
            ?>
            Focus_first();
        }

        $(document).ready(function () {
            init_all();
        });
        //-->
    </script>
</head>

<body>
<?php
include_once("../inc/entete.inc.php");
?>
<br />
<p align="center"><span class="titrepage"><?PHP echo $titre ?></span></p>

<p>&nbsp;</p>
<?PHP
if ($mess_err == '')
{
?>
    <form name="imp_maj" id="imp_maj" method="post" action="<?PHP echo $form_action; ?>">
    <input name="titre" type="hidden" id="titre" value="<?PHP echo $titre ?>">
    <input name="td" type="hidden" id="td" value="<?PHP echo $td ?>">
    <input name="nbutton" type="hidden" id="nbutton" value="">
    <!-- Liste des fichiers -->
    <table width="100%" border="0">
        <tr>
            <td class="rubfrm" nowrap align="right" valign="top" id="f_nomfic">
                <?PHP echo _("Fichier à importer"); ?> :
            </td>
            <td nowrap valign="middle">
                <?PHP
                cre_select('nomfic', 'nomfic', $tab_fic, $nomfic, '', _("-- Faites votre choix --"));
                ?>
            </td>
        </tr>
        <tr>
            <td colspan="2">
                <div align="center" class="titre_std_gras_jaune_frouge">
                    <?PHP echo _("Paramètres d'importation"); ?>
                </div>
            </td>
        </tr>
        <tr>
            <td width="30%" class="rubfrm" id="f_ligtitre" align="right"><?PHP echo _("Importation de la 1ère ligne"); ?></td>
            <td>
                <?PHP
                cre_select('ligtitre', 'ligtitre', $non_oui4, '');
                ?>
            </td>
        </tr>
        <tr>
            <td width="160" class="rubfrm" id="f_cadre" align="right"><?PHP echo _("Champs encadrés par"); ?></td>
            <td>
                <?PHP
                cre_select('cadre', 'cadre', $tab_typ_encadrement, $cadre);
                ?>
            </td>
        </tr>
        <tr>
            <td width="160" class="rubfrm" id="f_sep" align="right"><?PHP echo _("Champs séparés par des"); ?></td>
            <td>
                <?PHP
                cre_select('sep', 'sep', $tab_typ_separateur, $sep);
                ?>
            </td>
        </tr>
    </table>

<?PHP
if ($nomfic <> '')
{
    echo '<table width="100%" border="0">';
    echo '<tr>';
    echo '<td colspan="2">';
    echo '<div align="center" class="titre_std_gras_jaune_frouge">'._("Paramètres spécifiques à ce type d'importation").'</div>';
    echo '</td>';
    echo '</tr>';

    switch ($td)
    {
    /****************************************/
    /**                 VILLES             **/
    /****************************************/

    case "villes" :
    ?>
    <tr>
        <td width="30%" class="rubfrm" id="f_majcatm"
            align="right"><?PHP echo _("Mettre à jour villes existantes"); ?></td>
        <td>
            <?PHP
            cre_select('majvilles', 'majvilles', $non_oui4, '');
            ?>
            <span
                class="annot_petit_it"><?PHP echo _("'Oui' : on met à jour si code déjà existant / 'Non' : on ignore"); ?></span>
        </td>
    </tr>
    <?PHP
    break;

    /****************************************/
    /**                   PAYS             **/
    /****************************************/

    case "pays" :
    ?>
    <tr>
        <td width="30%" class="rubfrm" id="f_majcatm" align="right"><?PHP echo _("Mettre à jour pays existants"); ?></td>
        <td>
            <?PHP
            cre_select('majpays', 'majpays', $non_oui4, '');
            ?>
            <span
                class="annot_petit_it"><?PHP echo _("'Oui' : on met à jour si code déjà existant / 'Non' : on ignore"); ?></span>
        </td>
    </tr>
    <?PHP
    break;

    /******************************************************/
    /**                   DEPARTEMENTS/ETATS             **/
    /******************************************************/

    case "dep" :
    ?>
    <tr>
        <td width="30%" class="rubfrm" id="f_majtl" align="right"><?PHP echo _("Mettre à jour départements existants"); ?></td>
        <td>
            <?PHP
            cre_select('majdep', 'majdep', $non_oui4, '');
            ?>
            <span
                class="annot_petit_it"><?PHP echo _("'Oui' : on met à jour si code déjà existant / 'Non' : on ignore"); ?></span>
        </td>
    </tr>
    <?PHP
    break;

    /******************************************************/
    /**                   TYPES LICENCES                **/
    /******************************************************/

    case "tl" :
    ?>
    <tr>
        <td width="30%" class="rubfrm" id="f_majtl" align="right"><?PHP echo _("Mettre à jour types existants"); ?></td>
        <td>
            <?PHP
            cre_select('majtl', 'majtl', $non_oui4, '');
            ?>
            <span
                class="annot_petit_it"><?PHP echo _("'Oui' : on met à jour si code déjà existant / 'Non' : on ignore"); ?></span>
        </td>
    </tr>
    <?PHP
    break;

    /******************************************************/
    /**                        MARQUES                   **/
    /******************************************************/

    case "mque" :
    ?>
    <tr>
        <td width="30%" class="rubfrm" id="f_majmque"
            align="right"><?PHP echo _("Mettre à jour marques existantes"); ?></td>
        <td>
            <?PHP
            cre_select('majmque', 'majmque', $non_oui4, '');
            ?>
            <span
                class="annot_petit_it"><?PHP echo _("'Oui' : on met à jour si code déjà existant / 'Non' : on ignore"); ?></span>
        </td>
    </tr>
    <?PHP
    break;

    /******************************************************/
    /**                CATEGORIES MATERIELS              **/
    /******************************************************/

    case "catm" :
    ?>
    <tr>
        <td width="30%" class="rubfrm" id="f_majcatm"
            align="right"><?PHP echo _("Mettre à jour catégories existantes"); ?></td>
        <td>
            <?PHP
            cre_select('majcatm', 'majcatm', $non_oui4, '');
            ?>
            <span
                class="annot_petit_it"><?PHP echo _("'Oui' : on met à jour si code déjà existant / 'Non' : on ignore"); ?></span>
        </td>
    </tr>
    <?PHP
    break;

    /******************************************************/
    /**                    CLIENTS                       **/
    /******************************************************/

    case "cli" :
    ?>
    <tr>
        <td width="30%" class="rubfrm" id="f_majcli"
            align="right"><?PHP echo _("Mettre à jour clients existants"); ?></td>
        <td>
            <?PHP
            cre_select('majcli', 'majcli', $non_oui4, '');
            ?>
            <span
                class="annot_petit_it"><?PHP echo _("'Oui' : on met à jour si code déjà existant / 'Non' : on ignore"); ?></span>
        </td>
    </tr>
    <tr>
        <td width="30%" class="rubfrm" id="f_catcli" align="right"><?PHP echo _("Codage nouvelles catégories"); ?></td>
        <td>
            <?PHP
            cre_select('catcli', 'catcli', $tab_typ_majccli, '', '', _("-- Faites votre choix --"));
            ?>
        </td>
    </tr>
    <tr>
        <td width="30%" class="rubfrm" id="f_civcli" align="right"><?PHP echo _("Codage nouvelles civilités"); ?></td>
        <td>
            <?PHP
            cre_select('civcli', 'civcli', $tab_typ_majciv, '', '', _("-- Faites votre choix --"));
            ?>
        </td>
    </tr>
    <tr>
        <td width="30%" class="rubfrm" id="f_actcli"
            align="right"><?PHP echo _("Activation des nouveaux comptes ?"); ?></td>
        <td>
            <?PHP
            cre_select('actcli', 'actcli', $non_oui4, '');
            ?>
            <span
                class="annot_petit_it"><?PHP echo _("'Oui' : Chaque compte sera activé et pourra se connecter / 'Non' : le compte sera créé mais ne sera pas activé"); ?></span>
        </td>
    </tr>
    <tr>
        <td width="30%" class="rubfrm" id="f_mailcli" align="right"><?PHP echo _("Envoi des logins/MDP aux clients ?"); ?></td>
        <td>
            <?PHP
            cre_select('mailcli', 'mailcli', $non_oui4, '');
            ?>
            <span
                class="annot_petit_it"><?PHP echo _("'Oui' : Chaque compte créé recevra son login &amp; son MDP / 'Non' : le MDP sera créé, aucun email envoyé"); ?></span>
        </td>
    </tr>
    <?PHP
    break;

    /******************************************************/
    /**                    ARTICLES                      **/
    /******************************************************/

    case "art" :;
    ?>
    <tr>
        <td width="30%" class="rubfrm" id="f_majart"
            align="right"><?PHP echo _("Mettre à jour articles existants"); ?></td>
        <td>
            <?PHP
            cre_select('majart', 'majart', $non_oui4, '');
            ?>
            <span
                class="annot_petit_it"><?PHP echo _("'Oui' : on met à jour si code déjà existant / 'Non' : on ignore"); ?></span>
        </td>
    </tr>
    <tr>
        <td width="30%" class="rubfrm" id="f_codefam" align="right"><?PHP echo _("Codage nouvelles familles"); ?></td>
        <td>
            <?PHP
            cre_select('codefam', 'codefam', $tab_typ_majfam, '', '', _("-- Faites votre choix --"));
            ?>
            <div class="annot_petit_itgras" style="margin-left:10px;margin-top:5px;">
                <?PHP echo _("Libellé famille"); ?> :
                <select name="s_fam_desc" id="s_fam_desc" class="annot_petit_it">
                    <option value="" selected="selected"><?PHP echo _("-- Faites votre choix --"); ?></option>
                    <?PHP
                    for ($j = 0; $j < count($tab_csv); $j++) {
                        echo "<option value=\"" . $j . "\">" . $tab_csv[$j] . "</option>";
                    }
                    ?>
                </select>
            </div>
        </td>
    </tr>
    <?PHP
    break;

    default :
        break;
    }
    echo '</table>';

    // Choix des champs à importer
    ?>
    <table width="100%" border="0">
    <tr>
        <td colspan="5">
            <div align="center" class="titre_std_gras_jaune_frouge"><?PHP echo _("Champs à importer"); ?></div>
            <div align="center"
                 class="annot_petit_it"><?PHP echo _("Tous les champs doivent être paramétrés (pour ne rien importer, ne rien choisir)"); ?></div>
        </td>
    </tr>
    <?PHP
    $db = open_database(DBUSER, DBPASS, DBNAME, DBHOST);
    switch ($td) {
        case "cli" :
            $rech = "DESCRIBE `" . TBCLI . "`";
            break;
        case "art" :
            $rech = "DESCRIBE `" . TBPDT . "`";
            break;
        case "catm" :
            $rech = "DESCRIBE `" . TBRPCAT . "`";
            break;
        case "mque" :
            $rech = "DESCRIBE `" . TBMQUE . "`";
            break;
        case "tl" :
            $rech = "DESCRIBE `" . TBRLTL . "`";
            break;
        case "dep" :
            $rech = "DESCRIBE `" . TBDEP . "`";
            break;
        case "pays" :
            $rech = "DESCRIBE `" . TBPAYS . "`";
            break;
        case "villes" :
            $rech = "DESCRIBE `" . TBVILLES . "`";
            break;
    }
    $fields = $db->get_results($rech, ARRAY_A);
    foreach ($fields as $field) {
        echo "<tr>";
        $nom = $field['Field'];
        $aimporter = TRUE;
        switch ($td) {
            /****************************************/
            /**                 VILLES             **/
            /****************************************/
            case "villes" :
                if ($nom == "villes_id")
                    $aimporter = FALSE;
                break;
            /****************************************/
            /**                   PAYS             **/
            /****************************************/
            case "pays" :
                if ($nom == "pays_id")
                    $aimporter = FALSE;
                break;
            /******************************************************/
            /**                   DEPARTEMENTS/ETATS             **/
            /******************************************************/
            case "dep" :
                if ($nom == "dep_id")
                    $aimporter = FALSE;
                break;
            /******************************************************/
            /**                   TYPES LICENCES                **/
            /******************************************************/
            case "tl" :
                if ($nom == "rltl_id")
                    $aimporter = FALSE;
                break;
            /******************************************************/
            /**                       MARQUES                    **/
            /******************************************************/

            case "mque" :
                if ($nom == "mque_id")
                    $aimporter = FALSE;
                break;
            /******************************************************/
            /**                CATEGORIES MATERIELS              **/
            /******************************************************/

            case "catm" :
                if ($nom == "rpcat_id")
                    $aimporter = FALSE;
                break;
            /******************************************************/
            /**                    CLIENTS                       **/
            /******************************************************/

            case "cli" :
                if (($nom == "cli_id") OR ($nom == "cli_datecrea") OR ($nom == "cli_codecrea") OR ($nom == "cli_datemod") OR ($nom == "cli_codemod") OR ($nom == "cli_pass") OR (($nom == "cli_prop") AND (@$_SESSION["niv_log"] == 4)))
                    $aimporter = FALSE;
                if ((@$_SESSION["niv_log"] == 4) AND ($nom == "cli_codedo"))
                    $aimporter = FALSE;
                break;
            /******************************************************/
            /**                    ARTICLES                      **/
            /******************************************************/

            case "art" :
                if (($nom == "pdt_id") OR ($nom == "pdt_datecrea") OR ($nom == "pdt_codecrea") OR ($nom == "pdt_datemod") OR ($nom == "pdt_codemod"))
                    $aimporter = FALSE;
                break;
        }
        if ($aimporter == TRUE) {
            $ok_null = TRUE;
            if ($field['Null'] == "NO")
                $ok_null = FALSE;
            $id_champ = "f_" . $nom;
            $nom_champ = "s_" . $nom;
            $tab_nomchamps[] = $nom_champ;

            // Traitement des cas particuliers
            switch ($td) {
                /******************************************************/
                /**                    CLIENTS                       **/
                /******************************************************/

                case "cli" :
                    if ($nom == "cli_ville") {
                        $tab_nomchamps[] = "s_cli_cp";
                        echo "<td width=\"30%\" class=\"rubfrm\" id=\"f_cp\">";
                        echo "<div align=\"right\">";
                        echo "cli_cp";
                        echo "</div>";
                        echo "</td>";
                        echo "<td>";
                        echo "<select name=\"s_cli_cp\" id=\"s_cli_cp\">";
                        echo '<option value="" selected="selected">' . _("-- Faites votre choix --") . '</option>';
                        for ($j = 0; $j < count($tab_csv); $j++) {
                            echo "<option value=\"" . $j . "\">" . $tab_csv[$j] . "</option>";
                        }
                        echo "</select>";
                        echo "<span class=\"annot_petit_it\">";
                        echo "<br />";
                        echo ' '._("Champ contrôlé");
                        echo "</span>";
                        echo "</td>";
                        echo "</tr>";
                        echo "<tr>";
                    }
                    break;
                /******************************************************/
                /**                    MARQUES                       **/
                /******************************************************/

                case "mque" :
                    if ($nom == "mque_ville") {
                        $tab_nomchamps[] = "s_mque_cp";
                        echo "<td width=\"30%\" class=\"rubfrm\" id=\"f_cp\">";
                        echo "<div align=\"right\">";
                        echo "cli_cp";
                        echo "</div>";
                        echo "</td>";
                        echo "<td>";
                        echo "<select name=\"s_mque_cp\" id=\"s_mque_cp\">\n";
                        echo "<option value=\"\" selected=\"selected\">" . _("-- Faites votre choix --") . "</option>\n";
                        for ($j = 0; $j < count($tab_csv); $j++) {
                            echo "<option value=\"" . $j . "\">" . $tab_csv[$j] . "</option>\n";
                        }
                        echo "</select>\n";
                        echo "<span class=\"annot_petit_it\">";
                        echo "<br />";
                        echo ' '._("Champ contrôlé");
                        echo "</span>";
                        echo "</td>";
                        echo "</tr>";
                        echo "<tr>";
                    }
                    break;
                default :
                    break;
            }
            echo "<td width=\"30%\" class=\"rubfrm\" id=\"" . $id_champ . "\">";
            echo "<div align=\"right\">";
            echo $nom;
            echo "</div>";
            echo "</td>";
            echo "<td>";
            echo '<select name="' . $nom_champ . '" id="' . $nom_champ . '">';
            echo '<option value="" selected="selected">' . _("-- Faites votre choix --") . '</option>';
            switch ($td) {
                /******************************************************/
                /**                    CLIENTS                       **/
                /******************************************************/

                case "cli" :
                    if ($nom == "cli_code")
                        echo '<option value="-1">' . _("-- Systématiquement créer un nouveau code --") . '</option>';
                    break;
                default :
                    break;
            }
            if ($ok_null == TRUE)
                echo '<option value="-1">' . _("-- Rien --") . '</option>';
            for ($j = 0; $j < count($tab_csv); $j++) {
                echo '<option value="' . $j . '">' . $tab_csv[$j] . '</option>';
            }
            echo '</select>';

            // Affichage des champs obligatoires
            if ($ok_null == TRUE) {
                echo '<span class="annot_petit_it">';
                echo ' '._("Vous pouvez ne rien importer dans ce champ");
                echo '</span>';
            }

            switch ($td) {
                /****************************************/
                /**                 VILLES             **/
                /****************************************/
                case "villes" :
                    echo "<span class=\"annot_petit_it\">";
                    switch ($nom) {
                        case "villes_codepays" :
                            echo "<br />";
                            echo " " . _("Code du pays et PAS nom du pays");
                            echo "<br />";
                            echo " " . _("Cohérence contrôlée");
                            break;
                        case "villes_cp" :
                        case "villes_dep" :
                        case "villes_nom" :
                            echo "<br />";
                            echo " " . _("Cohérence contrôlée");
                            break;
                    }
                    echo "</span>";
                    break;

                /****************************************/
                /**                   PAYS             **/
                /****************************************/
                case "pays" :
                    echo "<span class=\"annot_petit_it\">";
                    switch ($nom) {
                        case "pays_code" :
                            echo "<br />";
                            echo " " . _("Valeur : code vérifié et créé si besoin");
                            break;
                    }
                    echo "</span>";
                    break;

                /******************************************************/
                /**                   DEPARTEMENTS/ETATS             **/
                /******************************************************/
                case "dep" :
                    echo "<span class=\"annot_petit_it\">";
                    switch ($nom) {
                        case "dep_code" :
                            echo "<br />";
                            echo " " . _("Valeur : code vérifié et créé si besoin");
                            break;
                    }
                    echo "</span>";
                    break;

                /******************************************************/
                /**                   TYPES LICENCES                **/
                /******************************************************/
                case "tl" :
                    echo "<span class=\"annot_petit_it\">";
                    switch ($nom) {
                        case "rltl_code" :
                            echo "<br />";
                            echo " " . _("Valeur : code vérifié et créé si besoin");
                            break;
                    }
                    echo "</span>";
                    break;

                /******************************************************/
                /**                       MARQUES                    **/
                /******************************************************/
                case "mque" :
                    echo "<span class=\"annot_petit_it\">";
                    switch ($nom) {
                        case "mque_code" :
                            echo "<br />";
                            echo " " . _("Valeur : code vérifié et créé si besoin");
                            break;
                        case "mque_codepays" :
                            echo "<br />";
                            echo " " . _("Code du pays et PAS nom du pays");
                            break;
                        case "mque_dep" :
                        case "mque_ville" :
                        case "mque_pays" :
                        case "mque_telf" :
                        case "mque_fax" :
                            echo "<br />";
                            echo " " . _("Cohérence contrôlée");
                            break;
                    }
                    echo "</span>";
                    break;

                /******************************************************/
                /**                CATEGORIES MATERIELS              **/
                /******************************************************/

                case "catm" :
                    echo "<span class=\"annot_petit_it\">";
                    switch ($nom) {
                        case "rpcat_code" :
                            echo "<br />";
                            echo " " . _("Valeur : code vérifié et créé si besoin");
                            break;
                    }
                    echo "</span>";
                    break;

                /******************************************************/
                /**                    CLIENTS                       **/
                /******************************************************/

                case "cli" :
                    echo "<span class=\"annot_petit_it\">";
                    switch ($nom) {
                        case "cli_cat" :
                            echo "<br />";
                            echo " " . _("Code de la catégorie (longueur maxi : 5)");
                            break;
                        case "cli_prop" :
                            echo "<br />";
                            echo " " . _("'Rien' : 'propriétaire' non affecté, valeur : code agence vérifié");
                            break;
                        case "cli_codedo" :
                            echo "<br />";
                            echo " " . _("'Rien' : donneur d'ordres non affecté, valeur : code donneur d'ordres vérifié");
                            break;
                        case "cli_code" :
                            echo "<br />";
                            echo " " . _("'Systématiquement créer un nouveau code' : code créé, valeur : code vérifié et créé si besoin");
                            break;
                        case "cli_type" :
                            echo "<br />";
                            echo " " . _("Valeur entre 0 et 2");
                            break;
                        case "cli_codepays" :
                            echo "<br />";
                            echo " " . _("Code du pays et PAS nom du pays");
                            break;
                        case "cli_dep" :
                        case "cli_ville" :
                        case "cli_pays" :
                        case "cli_telf" :
                        case "cli_fax" :
                        case "cli_telp" :
                        case "cli_email" :
                        case "cli_mess" :
                            echo "<br />";
                            echo " " . _("Cohérence contrôlée");
                            break;
                        case "cli_civilite" :
                            echo "<br />";
                            echo " " . _("Code de la civilité (longueur maxi : 5)");
                            break;
                        case "cli_cpta" :
                            echo "<br />";
                            echo " " . _("Valeur entre 0 et 3");
                            break;
                    }
                    echo "</span>";
                    break;

                /******************************************************/
                /**                    ARTICLES                      **/
                /******************************************************/

                case "art" :
                    echo "<span class=\"annot_petit_it\">";
                    switch ($nom) {
                        case "pdt_code" :
                            echo "<br />";
                            echo " " . _("Valeur : code vérifié et créé si besoin");
                            break;
                        case "pdt_fam" :
                            echo "<br />";
                            echo " " . _("Code de la famille (longueur maxi : 20)");
                            break;
                        case "pdt_puttc" :
                            echo "<br />";
                            echo " " . _("Cohérence contrôlée (décimale = '.')");
                            break;
                        case "pdt_vendu" :
                            echo "<br />";
                            echo " " . _("Valeur entre 0 et 1");
                            break;
                    }
                    echo "</span>";
                    break;
            }
            echo "</td>";
        }
        echo "</tr>";
    }
    $db->disconnect();
    ?>
    </table>
<?PHP
}
?>
    <div align="center" id="boutons">
        <input name="val" type="button" class="bton_std" id="val" value="<?PHP echo _("Valider")?>">
        <input name="RAZ" type="reset" class="bton_std" id="RAZ" value="<?PHP echo _("Réinitialiser"); ?>">
        <input name="quit" type="button" class="bton_std" id="quit" value="<?PHP echo _("Quitter"); ?>">
    </div>
</form>
<!-- Fin du formulaire -->
<?PHP
}
else
    pop_ret_auto($mess_err, 'warn', "index.php");

include_once("pied.php");
?>
</body>
</html>