0byt3m1n1
Path:
/
home
/
kassiope
/
www
/
administrer
/
[
Home
]
File: rubriques.php
<? include("../configuration.inc.php"); necessite_identification(); necessite_priv("admin"); $DOC_TITLE = "Gérer les rubriques"; include("modeles/haut.php"); function affiche_arbo_rub(&$sortie, &$selectionne, $parent=0, $indent="") { GLOBAL $frm, $repertoire_images, $wwwroot, $repertoire_upload; $qid = mysql_query_override("SELECT id, nom_".$_SESSION['langue'].", description_".$_SESSION['langue'].", image, etat, position FROM gaia_rubriques WHERE parent_id = $parent ORDER BY position"); if ($qid) { if (mysql_num_rows_override($qid) > 0) { $i = 0; while ($rub = mysql_fetch_array_override($qid)) { if ($rub['image'] !="") {$logo = "<img src=".$repertoire_upload."/".$rub['image']." width=\"100\" />";} else { $logo = "";} if (empty($rub['etat'])) {$etat = '<i class="ti-check-empty"></i>';} else {$etat = '<i class="ti-check"></i>';} $sortie .= " <tr bgcolor=\"".($i % 2 == 0 ? '#F4F4F4' : '#ffffff' )."\"><td align=\"center\" width=\"50\"> <a title=\"Modifier\" rel=\"tooltip\" href=\"".$_SERVER['PHP_SELF']."?mode=modif&id=".$rub['id']."\"><i class=\"ti-pencil\"></i></a> <a href=\"#myModal".$rub['id']."\" role=\"button\" data-toggle=\"modal\" title=\"Supprimer\" rel=\"tooltip\"><i class=\"ti-close\"></i></a> </td> <td align=\"left\">$indent<a class=normal href=". $_SERVER['PHP_SELF'] ."?mode=modif&id=" . $rub['id'] .">" . html_entity_decode($rub['nom_'.$_SESSION['langue'].'']) ."</a></td> <td align=\"left\">". $etat ."</td> </tr>"; $sortie .= '<div id="myModal'.$rub['id'].'" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">X</button> <h3 id="myModalLabel">Supprimer</h3> </div> <div class="modal-body"> <p>Êtes-vous sur de vouloir supprimer cet enregistrement ?</p> </div> <div class="modal-footer"> <button class="btn" data-dismiss="modal" aria-hidden="true">Annuler</button> <a class="btn btn-primary" href="'.$_SERVER['PHP_SELF'].'?mode=suppr&id='.$rub['id'].'">Supprimer</a> </div> </div>'; $i++; if ($rub['id'] != $parent) { affiche_arbo_rub($sortie, $selectionne, $rub['id'], $indent." "); } } } } } $start = vn($_REQUEST['start']);// Détermine la variable start (début de page) switch (vb($_REQUEST['mode'])) { case "ajout" : affiche_formulaire_ajout_rubrique(vn($_REQUEST['id'])); break; case "modif" : affiche_formulaire_modif_rubrique(vn($_REQUEST['id'])); break; case "suppr" : supprime_rubrique(vn($_REQUEST['id'])); affiche_formulaire_liste_rubrique(vn($_REQUEST['id'])); break; case "supprfile" : supprime_fichier(vn($_REQUEST['id']), $_GET['file']); affiche_formulaire_modif_rubrique(vn($_REQUEST['id'])); break; case "insere" : if (!empty($_FILES['image']['name'])) { $img = upload($_FILES['image']); } insere_sous_rubrique(vn($_REQUEST['id']), vb($img), $_POST); affiche_formulaire_liste_rubrique(vn($_REQUEST['id'])); break; case "maj" : if (!empty($_REQUEST['image'])) { $img = $_POST['image']; } else { if (!empty($_FILES['image']['name'])) { $img = upload($_FILES['image']); } } maj_rubrique(vn($_REQUEST['id']), vb($img),$_POST); affiche_formulaire_liste_rubrique(vn($_REQUEST['id'])); break; case "recherche" : affiche_recherche_liste_rubrique(vn($_REQUEST['id']), $_POST); break; default : affiche_formulaire_liste_rubrique(vn($_REQUEST['id'])); break; } include("modeles/bas.php"); /****************************************************************************** * FONCTIONS *****************************************************************************/ function affiche_formulaire_ajout_rubrique($id) { global $rubrique_options, $frm; /* Affiche un formulaire de rubrique vide */ /* Valeurs par défaut */ $frm["parent"] = array($id); $frm["nouveau_mode"] = "insere"; foreach ($_SESSION['lng'] as $lng) { $frm['nom_'.$lng.''] = ""; $frm['description_'.$lng.''] = ""; } $frm['image'] = ""; $frm['etat'] = ""; $frm['position'] = 0; $frm['on_special'] = ""; $frm["titre_soumet"] = "Ajouter"; /* Affiche la liste des rubriques, en présélectionnant la rubrique choisie. */ construit_arbo_rub($rubrique_options, $frm["parent"]); affiche_formulaire_rubrique(); } function affiche_formulaire_modif_rubrique($id) { /* Affiche le formulaire de modification de rubrique. */ global $frm, $rubrique_options; /* Charge les infos de la rubrique. */ $qid = mysql_query_override("SELECT * FROM gaia_rubriques WHERE id = '$id'"); $frm = mysql_fetch_array_override($qid); $frm["parent"] = array($frm["parent_id"]); $frm["nouveau_mode"] = "maj"; $frm["titre_soumet"] = "Sauvegarder changements"; /* Affiche la liste des rubriques, en présélectionnant la rubrique choisie. */ construit_arbo_rub($rubrique_options, $frm["parent"]); affiche_formulaire_rubrique(); } function supprime_rubrique($id) { /* Supprime la rubrique spécifiée par ve($_REQUEST['id']), et déplace tous les produits sous * cette rubrique au parent immédiat. */ /* Trouve le parent de cette rubrique */ $qid = mysql_query_override(" SELECT rub.nom_".$_SESSION['langue'].", rub.parent_id, parent.nom_".$_SESSION['langue']." AS parent FROM gaia_rubriques rub, gaia_rubriques parent WHERE parent.id = rub.parent_id AND rub.id = '$id' "); if ($qid) { if (mysql_num_rows_override($qid) > 0) { $rub = mysql_fetch_array_override($qid); /* Réaffecte tous les produits de cette rubrique à la rubrique parente */ $qid = mysql_query_override(" UPDATE gaia_articles_rubriques SET rubrique_id = ".$rub['parent_id']." WHERE rubrique_id = '$id' "); /* Réaffecte toutes les sous-rubriques de cette rubrique à la rubrique parente */ $qid = mysql_query_override(" UPDATE gaia_rubriques SET parent_id = ".$rub['parent_id']." WHERE parent_id = '$id' "); } else { /* Réaffecte tous les produits de cette rubrique à la rubrique parente */ $qid = mysql_query_override(" UPDATE gaia_articles_rubriques SET rubrique_id = '0' WHERE rubrique_id = '$id' "); /* Réaffecte toutes les sous-rubriques de cette rubrique à la rubrique parente */ $qid = mysql_query_override(" UPDATE gaia_rubriques SET parent_id = '0' WHERE parent_id = '$id' "); } mysql_query_override("DELETE FROM gaia_rubriques WHERE id = '$id'"); } ?> <div class="alert alert-success"> La rubrique a été effacée. Tous ses articles et sous-rubriques ont été réassignés à la rubrique supérieure. </div> <? } function insere_sous_rubrique($id, $img, $frm) { /* Ajoute une nouvelle sous-rubrique sous le parent ve($_REQUEST['id']). Tous les champs sont stockés dans la variable $frm */ valide($frm['on_special']); valide($frm['etat']); if (!empty($frm['nom_'.$_SESSION['langue'].''])) { $sql = ""; $sql .= "INSERT INTO gaia_rubriques (etat"; foreach ($_SESSION['lng'] as $lng) { $sql .= ", nom_".$lng.""; } $sql .= ") VALUES ('".$frm['etat']."'"; foreach ($_SESSION['lng'] as $lng) { $sql .= ", '".addslashes($frm['nom_'.$lng.''])."'"; } $sql .= ")"; mysql_query_override($sql) or DIE('Une erreur de connexion à la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR()); } else { echo "<font color=\"red\"><b>Vous devez inserer un nom de rubrique.</b></font>"; } } function maj_rubrique($id, $img, $frm) { /* Met à jour la rubrique $id avec les nouvelles valeurs contenues dans $frm */ valide($frm['on_special']); valide($frm['etat']); if ($frm['parent'] == $id) { $parent_id = 0; } else { $parent_id = $frm['parent']; } $sql = ""; $sql .= " UPDATE gaia_rubriques SET etat = '$frm[etat]'"; foreach ($_SESSION['lng'] as $lng) { $sql .=",nom_".$lng." = '".addslashes($frm['nom_'.$lng.''])."'"; } $sql .=" WHERE id = $id "; mysql_query_override($sql) or DIE('Une erreur de connexion à la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR()); } function affiche_formulaire_liste_rubrique($id) { global $rubrique_options; /* Affiche un formulaire de rubrique vide */ /* Valeurs par défaut */ $frm["parent"] = array($id); $frm["nouveau_mode"] = "insere"; foreach ($_SESSION['lng'] as $lng) { $frm['nom_'.$lng.''] = ""; } $frm["position"] = ""; $frm["etat"] = ""; $frm["on_special"] = ""; $frm["alpha"] = ""; /* Affiche la liste des rubriques, en présélectionnant la rubrique choisie. */ affiche_arbo_rub($rubrique_options, $frm["parent"]); affiche_liste_rubrique($frm["parent"]); } function affiche_liste_rubrique($post) { GLOBAL $rubrique_options; GLOBAL $id; GLOBAL $wwwroot; ?> <table border="0" class="tablespace" width="100%"> <tr valign="top"><th colspan="5" class="entete">LISTE DES RUBRIQUES</th></tr> <tr > <td colspan="5" class="action"><a href="<?=$_SERVER['PHP_SELF']?>?mode=ajout"> Ajouter une rubrique</a></td> </tr> <tr bgcolor="#6699ff"> <td class="menu">Action</td> <td class="menu">Rubriques</td> <td class="menu">Etat</td> </tr> <?=$rubrique_options?> </table> <?}?> <? function affiche_formulaire_rubrique() { GLOBAL $frm,$rubrique_options,$id,$repertoire_images, $wwwroot, $repertoire_upload; ?> <form name="entryform" method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data"> <input type="hidden" name="mode" value="<?=$frm["nouveau_mode"]?>"> <input type="hidden" name="id" value="<?=$frm['id']?>"> <table border=0 widtd="100%" cellpadding="0" cellspacing="1" width="100%" class="tablespace"> <tr> <th class="entete" colspan="2">Ajouter une rubrique</th> </tr> <tr> <td class=normal>Etat de la rubrique :</td> <td class=normal> <input type="radio" name="etat" value="1" <?php if((vb($frm['etat'])=="1")||(!vb($frm['etat']))) {echo "checked";} ?>>En ligne<br /> <input type="radio" name="etat" value="0" <?php if(vb($frm['etat'])=="0") {echo "checked";} ?>>En attente </td> </tr> <?php foreach ($_SESSION['lng'] as $lng) { echo (($nblng>1)?'<tr><td colspan="2" class="menu">BLOC DE LANGUE '.strtoupper($lng).'</td></tr>':''); ?> <tr> <td>Nom <?echo $lng ?>:</td> <td><input class="formulaire1" type="text" name="nom_<?echo $lng ?>" value="<?php echo stripslashes(vb($frm['nom_'.$lng.'']))?>"></td> </tr> <? } ?> <tr> <td colspan="2" align="center"><input class="bouton" type="submit" value="<?=$frm["titre_soumet"] ?>"></td> </tr> </table> </form> <? } ?>