0byt3m1n1
Path:
/
home
/
kassiope
/
www
/
administrer
/
[
Home
]
File: marques.php
<?php $menu=31; include("../configuration.inc.php"); necessite_identification(); necessite_priv("admin"); /* ini_set('display_errors',1); error_reporting(E_ALL); */ $DOC_TITLE = "Gérer les marques"; include("modeles/haut.php"); $start = vn($_REQUEST['start']);// Détermine la variable start (début de page) switch (vb($_REQUEST['mode'])) { case "ajout" : affiche_formulaire_ajout_marque(vn($_REQUEST['id'])); break; case "modif" : affiche_formulaire_modif_marque($_REQUEST['id']); break; case "addfile" : if (isset($_REQUEST['id']) && !empty($_REQUEST['id'])) {$id = $_REQUEST['id']; maj_marque($_POST); } else $id = insere_sous_marque($_POST, 'ret'); if (!empty($_REQUEST['image'])) { $img = $_POST['image']; } else { if (!empty($_FILES['image']['name'])) { $img = move_upload_pict($_FILES['image'], ''); f_add_pict($id,$img); echo '<div class="alert alert-success">Votre photo a été insérée.</div>'; } } affiche_formulaire_modif_marque($id); break; case "majfile" : f_modif_pict($_POST); echo '<div class="alert alert-success">Votre image a bien été importée et retaillée.</div>'; affiche_formulaire_modif_marque($_REQUEST['id']); break; case "positionner" : if (isset($_POST['id'])) { for($i=0;$i<count($_POST['id']);$i++) { mysql_query_override("UPDATE gaia_marques SET position = '".$i."' WHERE id = '".intval($_POST['id'][$i])."'"); } } echo '<div class="alert alert-success">Le positionnement des marques a été effectué.</div>'; affiche_formulaire_liste_marque($_REQUEST['id']); break; case "suppr" : supprime_marque($_REQUEST['id']); affiche_formulaire_liste_marque($_REQUEST['id']); break; case "supprfile" : supprime_fichier(vn($_REQUEST['id'])); affiche_formulaire_modif_marque(vn($_REQUEST['id'])); break; case "supprfile2" : supprime_fichier(vn($_REQUEST['id']),2); affiche_formulaire_modif_marque(vn($_REQUEST['id'])); break; case "supprfile3" : supprime_fichier(vn($_REQUEST['id']),3); affiche_formulaire_modif_marque(vn($_REQUEST['id'])); break; case "insere" : insere_sous_marque($_POST); affiche_formulaire_liste_marque($_REQUEST['id']); break; case "maj" : maj_marque($_POST); affiche_formulaire_liste_marque($_REQUEST['id']); break; case "recherche" : affiche_recherche_liste_marque($_REQUEST['id'], $_POST); break; default : affiche_formulaire_liste_marque($_REQUEST['id']=0); break; } include("modeles/bas.php"); /****************************************************************************** * FONCTIONS *****************************************************************************/ function f_add_pict($f_id, $name , $nb='') { $query = "UPDATE gaia_marques SET image".$nb." = '".$name."' where id='".$f_id."'"; mysql_query_override($query); } function f_modif_pict($f_post, $nb='') { global $dirroot; extract($f_post); $query = "SELECT image".$nb." FROM gaia_marques where id='".$id."'"; $rec = mysql_query_override($query); $img_file = mysql_result_override($rec,0,'image'.$nb); $imgfile = $dirroot.'/upload/zoom_'.$img_file; $dest_small = $dirroot.'/upload/'.$img_file; $origimg = imagecreatefromjpeg($imgfile); $cropimg = imagecreatetruecolor($f_post['w'.$nb],$f_post['h'.$nb]); list($widtha, $heighta) = getimagesize($imgfile); imagecopyresized($cropimg, $origimg, 0, 0, $f_post['x1'.$nb], $f_post['y1'.$nb], $widtha, $heighta, $widtha, $heighta); imagejpeg($cropimg, $dest_small, 99); $thumb = imagecreatetruecolor($f_post['wi'.$nb], $f_post['he'.$nb]); $source = imagecreatefromjpeg($dest_small); imagecopyresized($thumb, $source, 0, 0, 0, 0, $f_post['wi'.$nb], $f_post['he'.$nb], $f_post['w'.$nb], $f_post['h'.$nb]); imagejpeg($thumb, $dest_small, 99); if(file_exists($dest_small)) { $query = "UPDATE gaia_marques SET image".$nb." = '".$img_file."' where id ='".$id."'"; mysql_query_override($query); //unlink($imgfile); } } function affiche_formulaire_ajout_marque() { global $frm; global $categorie_options; /* Affiche un formulaire de marques vide */ /* Valeurs par défaut */ $frm["nouveau_mode"] = "insere"; $frm["nom_fr"] = ""; $frm["description_fr"] = ""; $frm["image"] = ""; $frm["etat"] = ""; $frm["logo_pos"] = ""; $frm["taille_zone"] = ""; $frm["on_menu"] = ""; $frm['position'] = ""; $frm["titre_soumet"] = "Ajouter une marque"; affiche_formulaire_marque(); } function affiche_formulaire_modif_marque($id) { /* Affiche le formulaire de modification de marques. */ global $frm; /* Charge les infos de Le marques. */ $qid = mysql_query_override("SELECT * FROM gaia_marques WHERE id = $id"); $frm = mysql_fetch_array_override($qid); $frm["nouveau_mode"] = "maj"; $frm["titre_soumet"] = "Sauvegarder changements"; /* Affiche la liste des marques, en présélectionnant Le marques choisie. */ affiche_formulaire_marque(); } function supprime_marque($id) { /* Supprime Le marques spécifiée par $id, et déplace tous les produits sous * cette marques au parent immédiat. */ /* Trouve le parent de cette marques */ $qid = mysql_query_override("SELECT nom_fr FROM gaia_marques WHERE id = $id"); if ($qid) { if (mysql_num_rows_override($qid) > 0) { $bd = mysql_fetch_array_override($qid); /* efface cette marques */ /* Réaffecte tous les produits de cette marques à Le marques parente */ mysql_query_override("DELETE FROM gaia_produits_marques WHERE marque_id = $id"); /* Réaffecte toutes les sous-marques de cette marques à Le marques parente */ mysql_query_override("DELETE FROM gaia_marques WHERE id = $id"); echo '<div class="alert alert-error">La marque a été effacée <button type="button" class="close" data-dismiss="alert">×</button></div>'; } } ?> <? } function insere_sous_marque($frm, $sup = '') { /* Ajoute une nouvelle sous-marques sous le parent $id. Tous les champs sont stockés dans la variable $frm */ valide($frm['etat']); $qid = mysql_query_override(" INSERT INTO gaia_marques (nom_fr, description_fr, etat, logo_pos, taille_zone) VALUES ('".addslashes($frm['nom_fr'])."', '".addslashes($frm['description_fr'])."','".$frm['etat']."','".$frm['logo_pos']."','".$frm['taille_zone']."')") or DIE('Une erreur de connexion à la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR()); if (empty($sup)) echo '<div class="alert alert-success">La marque a été ajoutée <button type="button" class="close" data-dismiss="alert">×</button></div>'; else return mysql_insert_id_override(); } function maj_marque($frm) { /* Met à jour Le marques $id avec les nouvelles valeurs contenues dans $frm */ valide($frm['etat']); valide($frm['on_menu']); $qid = mysql_query_override(" UPDATE gaia_marques SET nom_fr = '".addslashes($frm['nom_fr'])."' ,description_fr = '".addslashes($frm['description_fr'])."' ,etat = '$frm[etat]' WHERE id = '".intval($_POST['id'])."' ") or DIE('Une erreur de connexion à la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR()); /* Efface toutes les catégories auxquelles le produit est associé */ echo '<div class="alert alert-success">La marque a été modifiée <button type="button" class="close" data-dismiss="alert">×</button></div>'; } function affiche_formulaire_liste_marque($id) { /* Affiche un formulaire de marques vide */ /* Valeurs par défaut */ $frm["parent"] = array($id); $frm["nouveau_mode"] = "insere"; $frm["nom_fr"] = ""; $frm["description_fr"] = ""; $frm["image"] = ""; $frm["etat"] = ""; $frm["titre_soumet"] = "Ajouter un marque"; /* Affiche la liste des marques, en présélectionnant Le marques choisie. */ affiche_liste_marque(); } function affiche_liste_marque() { GLOBAL $id; GLOBAL $wwwroot; ?> <form name="entryform" method="post" action="<?=$_SERVER['PHP_SELF']?>"> <input type="hidden" name="mode" value="positionner"> <table border=0 cellpadding=0 cellspacing=0 width="100%" class="tablespace"> <tr> <th colspan="4" class="entete">Liste des marques</th> </tr> <tr> <td colspan="4" class="action"><a href="<?=$_SERVER['PHP_SELF']?>?mode=ajout"> Ajouter un marque</a></td> </tr> <tr bgcolor="#6699ff"> <td class="menu">Action</td> <td class="menu">marques</td> <td class="menu" align="center">Etat</td> </tr> <? $result=mysql_query_override("SELECT * FROM gaia_marques ORDER BY position"); if (mysql_num_rows_override($result) == 0) { echo "<tr><td class=\"normal\" colspan=\"3\"><b>Aucune marque définie</b></td></tr>"; } else { echo '<tbody id="sortable">'; while ($Bd = mysql_fetch_array_override($result)) { ?> <tr> <td style="width:250px"> <input type="hidden" name="id[]" value="<?=$Bd['id']?>"> <i style="cursor:pointer; margin-right:10px" title="Tirer pour déplacer" rel="tooltip" class="icon-reorder"></i> <a href="#myModal<?=$Bd['id']?>" role="button" data-toggle="modal" title="Supprimer" rel="tooltip" ><i class="ti-close"></i></a> <a title="Modifier" rel="tooltip" href="<?=$_SERVER['PHP_SELF']?>?mode=modif&id=<?=$Bd['id'] ?>"><i class="ti-pencil"></i></a> </td> <td style="width:530px"> <a title="Modifier cette marque" href="<?=$_SERVER['PHP_SELF']?>?mode=modif&id=<?=$Bd['id'] ?>"> <?=stripslashes($Bd['nom_'.$_SESSION['langue'].''])?></a> </td> <td align="center"><?if (empty($Bd['etat'])) {echo '<i class="ti-check-empty"></i>';} else {echo '<i class="ti-check"></i>';} ?></td> </tr> <div id="myModal<?=$Bd['id']?>" class="modal hide fade" tabindex="-1" role="dialog" aria-marqueledby="myModalmarque" aria-hidden="true"> <div class="modal-dialog" role="document"> <div class="modal-content"> <div class="modal-header"> <h5 class="modal-title" id="exampleModalLabel">Supprimer</h5> <button type="button" class="close" data-dismiss="modal" aria-label="Close"> <span aria-hidden="true">×</span> </button> </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=<?=$Bd['id'] ?>">Supprimer</a> </div> </div> </div> </div> <?php } echo '</tbody>'; } echo '<tr><td colspan="3" align="center" class="bouton" style="background:#fff"><input type="submit" value="Positionner les marques"></td></tr>'; echo "</table></form>"; } function affiche_formulaire_marque() { GLOBAL $frm; global $id; global $repertoire_upload; global $wwwroot, $dirroot; global $categorie_options; global $markwidth, $markheight; ?> <form name="entryform" method="post" action="<?=$_SERVER['PHP_SELF']?>" enctype="multipart/form-data"> <input type="hidden" name="mode" id="mode" value="<?=$frm["nouveau_mode"]?>"> <input type="hidden" name="id" value="<?=(isset($frm['id'])?$frm['id']:'')?>"> <table border="0" class="tablespace" width="100%" cellpadding="0" cellspacing="0"> <tr> <th class="entete" colspan="2">Ajouter une marque</th> </tr> <tr> <td class="normal">Etat :</td> <td class="normal"> <input type="radio" name="etat" value="1" <?php if ((vb($frm['etat'])=="1")||(!$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> <td>Nom :</td> <td><input type="text" name="nom_fr" size=25 value="<?=$frm["nom_".$_SESSION['langue'].""] ?>"></td> </tr> <tr> <th colspan="2" class="entete">Logo :</th> </tr> <tr><td colspan="2"> <? if (!empty($frm['image'])) { echo '<input type="hidden" name="image" value="'.$frm['image'].'">'; $iden = $sup = ''; if (file_exists($dirroot.'/upload/zoom_'.$frm['image']) && !file_exists($dirroot.'/upload/'.$frm['image']) ) { $resized_img = list($temp_width, $temp_height) = getimagesize($dirroot.'/upload/zoom_'.$frm['image']); echo '<div class="alert alert-danger">ATTENTION ! Vous n\'avez pas encore recadré votre photo. Celle-ci n\'apparaitra pas sur le site.</div>'; $iden = 'id="target"'; echo '<input type="hidden" id="x1" name="x1" /> <input type="hidden" id="y1" name="y1" /> <input type="hidden" id="w" name="w" /> <input type="hidden" id="h" name="h" /> <input type="hidden" id="wi" name="wi" value="'.$markwidth.'" /> <input type="hidden" id="he" name="he" value="'.$markheight.'" />'; $sup = 'zoom_'; } echo '<center>'; echo '<img src="'.$wwwroot.'/upload/'.$sup.''.$frm['image'].'" '.$iden.'>'; echo '<div style="margin:20px 0"> '.((file_exists($dirroot.'/upload/zoom_'.$frm['image']) && !file_exists($dirroot.'/upload/'.$frm['image']) )?'<button type="submit" class="btn btn-success" name="modif_img" onclick="document.getElementById(\'mode\').value=\'majfile\'">Modifier l\'image</button>':'').' <a class="btn skyblue-bg" href="?mode=supprfile&id='.$frm['id'].'">Supprimer l\'image</a> </div>'; echo '</center>'; } else { echo '<span class="btn fileinput-button"> <i class="icon-plus icon-white"></i> <span>Logo : Sélectionnez une image...</span> <input type="file" name="image"> </span> <button type="submit" class="btn red-bg" name="add_img" onclick="document.getElementById(\'mode\').value=\'addfile\'">Ajouter une image</button><i>Minimum : '.$markwidth.'px X '.$markheight.'px</i>'; } ?> <input type="hidden" name="resized_temp_w" value="<?=$resized_img ? $temp_width : null;?>"> <input type="hidden" name="resized_temp_h" value="<?=$resized_img ? $temp_height : null;?>"> <script type="text/javascript"> $( document ).ready(function() { var api; var wi_w = $('input[name=wi]').val(); var wi_h = $('input[name=he]').val(); var temp_w = $('input[name=resized_temp_w]').val(); var temp_h = $('input[name=resized_temp_h]').val(); var ratio = parseFloat(wi_w/wi_h).toFixed(3); $('#target').Jcrop({ onChange: showCoords, onSelect: showCoords, aspectRatio: ratio },function(){ api = this; api.setSelect([130,65,130+350,65+285]); api.setOptions({ bgFade: true, allowResize: true, trueSize: [temp_w, temp_h] }); api.ui.selection.addClass('jcrop-selection'); }); }); </script> </td> </tr> <tr> <td colspan="2" class="bouton" align="center"><input type="button" onclick="history.go(-1)" value="Annuler"><input class="bouton" type="submit" value="<?=$frm["titre_soumet"] ?>"></td> </tr> </table> </form> <? } function supprime_fichier($id,$nb='') { /* Supprime le produit spécificié par $id. Il faut supprimer le produit * puis les entrées correspondantes de la table produits_marques. */ global $the_path ; /* Charge les infos du produit. */ $sql = "SELECT image".$nb." FROM gaia_marques WHERE id = '$id'"; $res = mysql_query_override($sql); $file = mysql_fetch_row_override($res); mysql_query_override("UPDATE gaia_marques SET image".$nb." = '' WHERE id = '$id'"); @unlink($the_path.$file[0]); echo '<div class="alert alert-error">Le fichier <b>'.$file[0].'</b> a été effacé du serveur</div>'; } ?>