0byt3m1n1
Path:
/
home
/
kassiope
/
www
/
administrer
/
[
Home
]
File: utilisateurs.php
<? $menu = 2; include("../configuration.inc.php"); necessite_identification(); necessite_priv("admin"); $DOC_TITLE = "Gérer les utilisateurs"; //ini_set('display_errors',1); include("modeles/haut.php"); /* Initialisation des variables */ $start = intval(vn($_REQUEST['start']));// Détermine la variable start (début de page) $id = intval(vn($_REQUEST['id'])); $order = "id_utilisateur"; $sort = "DESC"; $priv = ""; switch (vb($_REQUEST['mode'])) { case "ajout" : afficher_formulaire_ajout_utilisateur(); break; case "modif" : affiche_formulaire_modif_utilisateur($_REQUEST['id_utilisateur']); break; case "suppr" : efface_utilisateur($_REQUEST['id_utilisateur']); afficher_liste_utilisateurs($order, $sort, $priv, $group, $start); break; case "insere" : insere_utilisateur($_POST); afficher_liste_utilisateurs($order, $sort, $priv, $group, $start); break; case "search" : afficher_liste_utilisateurs_recherche($order, $sort, $priv, $group, $start); break; case "maj" : maj_utilisateur($_POST); afficher_liste_utilisateurs($order, $sort, $priv, $group, $start); break; case "liste" : $priv = $_GET['priv']; $group = $_GET['group']; afficher_liste_utilisateurs($order, $sort, $priv, $group, $start); break; case "init_mdp" : initialise_mot_passe($_REQUEST['email']); $qid = mysql_query_override("SELECT email FROM gaia_utilisateurs WHERE id_utilisateur = '".$_REQUEST['email']."'"); $user = mysql_fetch_object_override($qid); echo '<div class="alert alert-success">Le mot de passe de <b>'.pv($user->email).'</b> a été remis à zéro.<br />Son nouveau mot de passe lui a été envoyé par mail. <button type="button" class="close" data-dismiss="alert">×</button></div>'; $order = "email"; $sort = "DESC"; afficher_liste_utilisateurs($order, $sort, $priv, $group, $start); break; default : afficher_liste_utilisateurs($order, $sort, $priv, $group, $start); break; } include("modeles/bas.php"); /****************************************************************************** * FONCTIONS *****************************************************************************/ function afficher_formulaire_ajout_utilisateur() { /* Affiche un formulaire vide pour ajouter un nouvel utilisateur */ global $wwwroot, $dirroot; /* Initialise les valeurs par défauts pour un formulaire vide */ $frm['id_utilisateur'] = ""; $frm['paiement'] = array(); $frm['email'] = ""; $frm['civilite'] = ""; $frm['prenom'] = ""; $frm['nom_famille'] = ""; $frm['email'] = ""; $frm['telephone'] = ""; $frm['fax'] = ""; $frm['portable'] = ""; $frm['adresse'] = ""; $frm['code_postal'] = ""; $frm['ville'] = ""; $frm['pays'] = ""; $frm['societe'] = ""; $frm['siret'] = ""; $frm['ape'] = ""; $frm['remise_percent'] = "0"; $frm['remise_valeur'] = "0"; $frm['naissance'] = date("d/m/Y"); $frm['points'] = "0"; $frm['pays'] = ""; $frm['format'] = ""; $frm['siret'] = ""; $frm['ape'] = ""; $frm['code_banque'] = ""; $frm['code_guiche'] = ""; $frm['numero_compte'] = ""; $frm['cle_rib'] = ""; $frm['domiciliation'] = ""; $frm['iban'] = ""; $frm['bic'] = ""; $frm['url'] = ""; $frm['description'] = ""; $frm['format'] = ""; $frm['date_insert'] = ""; $frm['date_update'] = ""; $frm['avoir'] = 0; $frm['newsletter'] = "checked"; $frm['commercial'] = "checked"; $frm['nouveau_mode'] = "insere"; $frm['titre_soumet'] = "Ajouter utilisateur"; include("modeles/utilisateur_form.php"); } function affiche_formulaire_modif_utilisateur($id_utilisateur) { /* Affiche un formulaire vide pour modifier un utilisateur */ global $wwwroot, $dirroot; $qid = mysql_query_override("SELECT * FROM gaia_utilisateurs WHERE id_utilisateur = '$id_utilisateur'"); if ($qid) { if (mysql_num_rows_override($qid) > 0) { $frm = mysql_fetch_array_override($qid); } } $frm['nouveau_mode'] = "maj"; $frm['titre_soumet'] = "Sauvegarder les Changements"; include("modeles/utilisateur_form.php"); } function efface_utilisateur($id_utilisateur) { /* Efface l'utilisateur dont le nom d'utilisateur est $nom_utilisateur */ $qid = mysql_query_override("DELETE FROM gaia_utilisateurs WHERE id_utilisateur = '$id_utilisateur'"); $qid = mysql_query_override("SELECT email FROM gaia_utilisateurs WHERE id_utilisateur = '$id_utilisateur'"); $utilisateur = mysql_fetch_object_override($qid); echo '<div class="alert alert-error">L\'utilisateur a été effacé <button type="button" class="close" data-dismiss="alert">×</button></div>'; } function insere_utilisateur($frm) { /* Ajout d'un utilisateur */ $newsletter = valide($frm['newsletter']); $commercial = valide($frm['commercial']); $remise_percent = (float)$frm['remise_percent']; $password = MDP(); $naissance = preg_replace('/(\d{2,2})\/(\d{1,2})\/(\d{1,4})/' , "\\3-\\2-\\1" ,$frm['naissance']); $qid = mysql_query_override(" INSERT INTO gaia_utilisateurs ( date_insert , date_update , email , mot_passe , priv , groupe , civilite , prenom , nom_famille , telephone , fax , portable , adresse , code_postal , ville , pays , newsletter , commercial , remise_percent , points , format , societe , siret , ape , code_banque , code_guichet , numero_compte , cle_rib , domiciliation , iban , bic , url , description , avoir , naissance ) VALUES ( now() , now() ,'".addslashes($frm['email'])."' ,'" . md5($password) ."' ,'".addslashes($frm['priv'])."' ,'".addslashes($frm['groupe'])."' ,'".vb($frm['civilite'])."' ,'".htmlspecialchars($frm['prenom'],ENT_QUOTES)."' ,'".htmlspecialchars($frm['nom_famille'],ENT_QUOTES)."' ,'".$frm['telephone']."' ,'".$frm['fax']."' ,'".$frm['portable']."' ,'".htmlspecialchars($frm['adresse'],ENT_QUOTES)."' ,'".addslashes($frm['code_postal'])."' ,'".htmlspecialchars($frm['ville'],ENT_QUOTES)."' ,'".intval($frm['pays'])."' ,'".intval($frm['newsletter'])."' ,'".intval($frm['commercial'])."' ,'".$remise_percent."' ,'".intval($frm['points'])."' ,'".addslashes($frm['format'])."' ,'".addslashes($frm['societe'])."' ,'".addslashes($frm['siret'])."' ,'".addslashes($frm['ape'])."' ,'".addslashes($frm['code_banque'])."' ,'".addslashes($frm['code_guichet'])."' ,'".addslashes($frm['numero_compte'])."' ,'".addslashes($frm['cle_rib'])."' ,'".htmlspecialchars($frm['domiciliation'],ENT_QUOTES)."' ,'".addslashes($frm['iban'])."' ,'".addslashes($frm['bic'])."' ,'".addslashes($frm['url'])."' ,'".htmlspecialchars($frm['description'],ENT_QUOTES)."' ,'".vn($frm['avoir'])."' , '".$naissance."' )") or DIE('Une erreur de connexion à la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR()); $clientid = mysql_insert_id_override(); $code_client = "CLT".date("Y").$clientid; mysql_query_override("UPDATE gaia_utilisateurs SET code_client = '".$code_client."' WHERE id_utilisateur = '".$clientid."'"); foreach($frm['paiement'] as $k => $v): mysql_query_override("INSERT INTO gaia_utilisateurs_paiements (id_utilisateur, id_paiement) values ('".$clientid."','".$v."')"); endforeach; echo '<div class="alert alert-success">L\'utilisateur <b>'.($frm['email']).'</b> a été créé avec le mot de passe : <b>'.($password).'</b></div>'; } function maj_utilisateur($frm) { global $lg; /* Mise à jour d'un enregistrement d'utilisateur */ $newsletter = valide($frm['newsletter']); $commercial = valide($frm['commercial']); $remise_percent = (float)$frm['remise_percent']; $naissance = preg_replace('/(\d{2,2})\/(\d{1,2})\/(\d{1,4})/' , "\\3-\\2-\\1" ,$frm['naissance']); $rec = mysql_query_override("select * from gaia_utilisateurs where id_utilisateur = '".$frm['id_utilisateur']."'"); $user = mysql_fetch_array_override($rec); if($user['priv']=='stop' && $frm['priv']=='reve') { $mail = get_static(356); $mailObjet = mail_transform(1,$mail['description_'.$lg], $frm['id_utilisateur'], 0 ); mail_confirm($frm['email'],$mail['nom_'.$lg],($mailObjet),"From:$support"); } $qid = mysql_query_override(" UPDATE gaia_utilisateurs SET date_update = now() , email = '".addslashes($frm['email'])."' , code_client = '".addslashes($frm['code_client'])."' , priv = '".addslashes($frm['priv'])."' , groupe = '".addslashes($frm['groupe'])."' ,civilite = '".addslashes(vb($frm['civilite']))."' ,prenom = '".htmlspecialchars($frm['prenom'],ENT_QUOTES)."' ,nom_famille = '".htmlspecialchars($frm['nom_famille'],ENT_QUOTES)."' ,telephone = '".addslashes($frm['telephone'])."' ,fax = '".addslashes($frm['fax'])."' ,portable = '".addslashes($frm['portable'])."' ,adresse = '".htmlspecialchars($frm['adresse'],ENT_QUOTES)."' ,code_postal = '".addslashes($frm['code_postal'])."' ,ville = '".htmlspecialchars($frm['ville'],ENT_QUOTES)."' ,pays = '".htmlspecialchars($frm['pays'],ENT_QUOTES)."' ,newsletter = '".intval($frm['newsletter'])."' ,commercial = '".intval($frm['commercial'])."' ,remise_percent = '".$remise_percent."' ,points = '".intval($frm['points'])."' ,format = '".addslashes($frm['format'])."' ,societe = '".addslashes($frm['societe'])."' ,siret = '".addslashes($frm['siret'])."' ,ape = '".addslashes($frm['ape'])."' ,code_banque = '".addslashes($frm['code_banque'])."' ,code_guichet = '".addslashes($frm['code_guichet'])."' ,numero_compte = '".addslashes($frm['numero_compte'])."' ,cle_rib = '".addslashes($frm['cle_rib'])."' ,domiciliation = '".htmlspecialchars($frm['domiciliation'],ENT_QUOTES)."' ,iban = '".addslashes($frm['iban'])."' ,bic = '".addslashes($frm['bic'])."' ,url = '".addslashes($frm['url'])."' ,description = '".htmlspecialchars($frm['description'],ENT_QUOTES)."' ,avoir = '".vn($frm['avoir'])."' ,naissance = '".$naissance."' WHERE id_utilisateur = '".intval($frm['id_utilisateur'])."' ") or DIE('Une erreur de connexion à la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR()); mysql_query_override("delete from gaia_utilisateurs_paiements where id_utilisateur = '".intval($frm['id_utilisateur'])."'"); foreach($frm['paiement'] as $k => $v): mysql_query_override("INSERT INTO gaia_utilisateurs_paiements (id_utilisateur, id_paiement) values ('".intval($frm['id_utilisateur'])."','".$v."')"); endforeach; echo '<div class="alert alert-success">L\'utilisateur a été modifié <button type="button" class="close" data-dismiss="alert">×</button></div>'; } function afficher_liste_utilisateurs(&$order, &$sort, &$priv, &$group, $start) { /* Lit toutes les catégories de la base et les affiche dans un tableau*/ global $wwwroot, $dirroot; $nb=50; mysql_query_override("update gaia_utilisateurs set is_new = 1"); $sql = "SELECT * FROM gaia_utilisateurs WHERE id_utilisateur != '911' ".(!empty($priv)?" and priv = '".$priv."' ":'')." ".(!empty($group)?" and groupe = '".$group."' ":'')." group by id_utilisateur ORDER BY ".$order." ".$sort." LIMIT $start,$nb"; $sql_count = "SELECT COUNT(*) FROM gaia_utilisateurs WHERE id_utilisateur != '911' ".(!empty($priv)?" and priv = '".$priv."' ":'')." ".(!empty($group)?" and groupe = '".$group."' ":'')." group by id_utilisateur ORDER BY ".$order." ".$sort." LIMIT $start,$nb"; /* if(empty($priv)) { $sql = "SELECT * FROM gaia_utilisateurs where id_utilisateur != '911' ORDER BY ".$order." ".$sort." LIMIT $start,$nb"; $sql = "SELECT sum(IF(c.statut in (3,5,8),c.total_produit,0)) as ca, sum(IF(c.statut in (3,5,8),1,0)) as nbcom, u.* FROM gaia_utilisateurs u left join gaia_commandes c on c.id_utilisateur = u.id_utilisateur WHERE u.id_utilisateur != '911' group by u.id_utilisateur ORDER BY ".$order." ".$sort." LIMIT $start,$nb"; $sql_count = "SELECT COUNT(*) FROM gaia_utilisateurs WHERE id_utilisateur != '911' ORDER BY ".$order." ".$sort.""; } else { if ($priv == "newsletter") { $sql = "SELECT sum(IF(c.statut in (3,5,8),c.total_produit,0)) as ca, sum(IF(c.statut in (3,5,8),1,0)) as nbcom, u.* FROM gaia_utilisateurs u left join gaia_commandes c on c.id_utilisateur = u.id_utilisateur WHERE u.id_utilisateur != '911' and newsletter = '1' group by u.id_utilisateur ORDER BY ".$order." ".$sort." LIMIT $start,$nb"; $sql_count = "SELECT COUNT(*) FROM gaia_utilisateurs WHERE id_utilisateur != '911' and newsletter = '1' ORDER BY ".$order." ".$sort.""; } else { $sql = "SELECT sum(IF(c.statut in (3,5,8),c.total_produit,0)) as ca, sum(IF(c.statut in (3,5,8),1,0)) as nbcom, u.* FROM gaia_utilisateurs u left join gaia_commandes c on c.id_utilisateur = u.id_utilisateur WHERE u.id_utilisateur != '911' and priv = '".$priv."' group by u.id_utilisateur ORDER BY ".$order." ".$sort." LIMIT $start,$nb"; $sql_count = "SELECT COUNT(*) FROM gaia_utilisateurs WHERE id_utilisateur != '911' and priv = '".$priv."' ORDER BY ".$order." ".$sort.""; } } */ $qid = mysql_query_override($sql); include("modeles/utilisateur_liste.php"); } function afficher_liste_utilisateurs_recherche(&$order, &$sort, &$priv, &$group, &$start) { /* Lit toutes les catégories de la base et les affiche dans un tableau*/ global $wwwroot, $dirroot; $nb=50; $sup = '1=1'; if (!empty($_POST['cle'])) $sup .= " and ( code_client LIKE '%" . addslashes(trim($_POST['cle'])) . "%' OR email LIKE '%" . addslashes(trim($_POST['cle'])) . "%' OR LOWER(ville) LIKE '%" . mb_strtolower(addslashes(trim($_POST['cle']))) . "%' OR LOWER(nom_famille) LIKE '%" . mb_strtolower(addslashes(trim($_POST['cle']))) . "%' OR LOWER(code_postal) LIKE '%" . mb_strtolower(addslashes(trim($_POST['cle']))) . "%' OR LOWER(societe) LIKE '%" . mb_strtolower(addslashes(trim($_POST['cle']))) . "%')"; $sql = "SELECT sum(IF(c.statut in (3,5,8),c.total_produit,0)) as ca, sum(IF(c.statut in (3,5,8),1,0)) as nbcom, u.* FROM gaia_utilisateurs u left join gaia_commandes c on c.id_utilisateur = u.id_utilisateur WHERE ".$sup." group by u.id_utilisateur ORDER BY ".$order." ".$sort." LIMIT $start,$nb"; $sql = "SELECT u.* FROM gaia_utilisateurs u WHERE ".$sup." group by u.id_utilisateur ORDER BY ".$order." ".$sort." LIMIT $start,$nb"; $qid = mysql_query_override($sql) or DIE('Une erreur de connexion à la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR()); $sql_count = "SELECT COUNT(*) FROM gaia_utilisateurs WHERE ".$sup." ORDER BY ".$order." ".$sort.""; include("modeles/utilisateur_liste.php"); } ?>