exit('Longueur du mot de passe incorrecte !');
 }
 $test_profil_1 = (preg_match("#^p+[._-]?n+$#", $login)) ? TRUE : FALSE ; // prénom puis nom
 $test_profil_2 = (preg_match("#^n+[._-]?p+$#", $login)) ? TRUE : FALSE ; // nom puis prénom
 $test_profil_3 = (preg_match("#^p+$#", $login)) ? TRUE : FALSE ; // prénom seul
 $test_profil_4 = (preg_match("#^n+$#", $login)) ? TRUE : FALSE ; // nom seul
 if( !$test_profil_1 && !$test_profil_2 && !$test_profil_3 && !$test_profil_4 )
 {
   exit('Modèle de nom d\'utilisateur incorrect !');
 }
 // Mettre à jour les paramètres dans la base
 DB_STRUCTURE_ADMINISTRATEUR::DB_modifier_profil_parametre( $profil , 'user_profil_login_modele'    , $login );
 DB_STRUCTURE_ADMINISTRATEUR::DB_modifier_profil_parametre( $profil , 'user_profil_mdp_longueur_mini' , $mdp );
 if($profil=='ELV')
 {
   DB_STRUCTURE_ADMINISTRATEUR::DB_modifier_profil_parametre( $profil , 'user_profil_mdp_date_naissance' , $birth );
 }
 // Mettre aussi à jour la session
 if($profil=='ALL')
 {
   $_SESSION['TAB_PROFILS_ADMIN']['LOGIN_MODELE']      = array_fill_keys ( array_keys($_SESSION['TAB_PROFILS_ADMIN']['LOGIN_MODELE']     ) , $login );
   $_SESSION['TAB_PROFILS_ADMIN']['MDP_LONGUEUR_MINI'] = array_fill_keys ( array_keys($_SESSION['TAB_PROFILS_ADMIN']['MDP_LONGUEUR_MINI']) , $mdp   );
 }
 else
 {
   $_SESSION['TAB_PROFILS_ADMIN']['LOGIN_MODELE'][$profil]      = $login;
   $_SESSION['TAB_PROFILS_ADMIN']['MDP_LONGUEUR_MINI'][$profil] = $mdp;
 }
 if($profil=='ELV')
 {
   $_SESSION['TAB_PROFILS_ADMIN']['MDP_DATE_NAISSANCE'][$profil] = $birth;
if (!defined('SACoche')) {
    exit('Ce fichier ne peut être appelé directement !');
}
if ($_SESSION['SESAMATH_ID'] == ID_DEMO) {
    exit('Action désactivée pour la démo...');
}
$action = isset($_POST['f_action']) ? Clean::texte($_POST['f_action']) : '';
$tab_profils_actifs = isset($_POST['tab_id']) ? Clean::map_texte(explode(',', $_POST['tab_id'])) : array();
$tab_profils = array_keys($_SESSION['TAB_PROFILS_ADMIN']['TYPE']);
$tab_profils_inactifs = array_diff($tab_profils, $tab_profils_actifs);
$tab_profils_anormaux = array_diff($tab_profils_actifs, $tab_profils);
if (count($tab_profils_anormaux)) {
    exit('Erreur avec les profils transmis !');
}
// ////////////////////////////////////////////////////////////////////////////////////////////////////
// Choix des profils
// ////////////////////////////////////////////////////////////////////////////////////////////////////
if ($action == 'choix_profils') {
    // Il n'y a que quelques profils : on ne s'embête pas à comparer pour voir ce qui a changé, on effectue un update pour chacun.
    foreach ($tab_profils_actifs as $profil_sigle) {
        DB_STRUCTURE_ADMINISTRATEUR::DB_modifier_profil_parametre($profil_sigle, 'user_profil_actif', 1);
    }
    foreach ($tab_profils_inactifs as $profil_sigle) {
        DB_STRUCTURE_ADMINISTRATEUR::DB_modifier_profil_parametre($profil_sigle, 'user_profil_actif', 0);
    }
    exit('ok');
}
// ////////////////////////////////////////////////////////////////////////////////////////////////////
// On ne devrait pas en arriver là...
// ////////////////////////////////////////////////////////////////////////////////////////////////////
exit('Erreur avec les données transmises !');
    exit('Action désactivée pour la démo...');
}
$profil = isset($_POST['f_profil']) ? Clean::texte($_POST['f_profil']) : '';
$delai = isset($_POST['f_delai']) ? Clean::entier($_POST['f_delai']) : 0;
// ////////////////////////////////////////////////////////////////////////////////////////////////////
// Choix du délai avant une déconnexion automatique pour inactivité
// ////////////////////////////////////////////////////////////////////////////////////////////////////
if ($profil && $delai) {
    if ($profil != 'ALL' && !isset($_SESSION['TAB_PROFILS_ADMIN']['TYPE'][$profil])) {
        exit('Profil incorrect !');
    }
    if ($delai % 10 || $delai > 120) {
        exit('Délai incorrect !');
    }
    // Mettre à jour les paramètres dans la base
    DB_STRUCTURE_ADMINISTRATEUR::DB_modifier_profil_parametre($profil, 'user_profil_duree_inactivite', $delai);
    // Mettre aussi à jour la session
    if ($profil == 'ALL' || $profil == 'ADM') {
        $_SESSION['USER_DUREE_INACTIVITE'] = $delai;
    }
    if ($profil == 'ALL') {
        $_SESSION['TAB_PROFILS_ADMIN']['DUREE_INACTIVITE'] = array_fill_keys($_SESSION['TAB_PROFILS_ADMIN']['DUREE_INACTIVITE'], $delai);
    } else {
        $_SESSION['TAB_PROFILS_ADMIN']['DUREE_INACTIVITE'][$profil] = $delai;
    }
    exit('ok');
}
// ////////////////////////////////////////////////////////////////////////////////////////////////////
// On ne devrait pas en arriver là...
// ////////////////////////////////////////////////////////////////////////////////////////////////////
exit('Erreur avec les données transmises !');