PEEL Shopping
Open source ecommerce : PEEL Shopping
rubriques.php
Go to the documentation of this file.
1 <?php
2 // This file should be in UTF8 without BOM - Accents examples: éèê
3 // +----------------------------------------------------------------------+
4 // | Copyright (c) 2004-2015 Advisto SAS, service PEEL - contact@peel.fr |
5 // +----------------------------------------------------------------------+
6 // | This file is part of PEEL Shopping 8.0.0, which is subject to an |
7 // | opensource GPL license: you are allowed to customize the code |
8 // | for your own needs, but must keep your changes under GPL |
9 // | More information: https://www.peel.fr/lire/licence-gpl-70.html |
10 // +----------------------------------------------------------------------+
11 // | Author: Advisto SAS, RCS 479 205 452, France, https://www.peel.fr/ |
12 // +----------------------------------------------------------------------+
13 // $Id: rubriques.php 46935 2015-09-18 08:49:48Z gboussin $
14 define('IN_PEEL_ADMIN', true);
15 include("../configuration.inc.php");
17 necessite_priv('admin_content');
18 
19 $GLOBALS['DOC_TITLE'] = $GLOBALS['STR_ADMIN_RUBRIQUES_TITLE'];
20 include($GLOBALS['repertoire_modele'] . "/admin_haut.php");
21 
23 $frm = $_POST;
24 
25 switch (vb($_REQUEST['mode'])) {
26  case "ajout" :
27  affiche_formulaire_ajout_rubrique(vn($_REQUEST['id']), $frm);
28  break;
29 
30  case "modif" :
31  affiche_formulaire_modif_rubrique(vn($_REQUEST['id']), $frm);
32  break;
33 
34  case "suppr" :
35  supprime_rubrique(vn($_REQUEST['id']));
36  affiche_formulaire_liste_rubrique(vn($_REQUEST['id']));
37  break;
38 
39  case "supprdiapo" :
40  supprime_fichier_diaporama(vn($_REQUEST['diapoid']), $_GET['file']);
41  affiche_formulaire_modif_rubrique(vn($_REQUEST['id']), $frm);
42  break;
43 
44  case "supprfile" :
45  supprime_fichier_rubrique(vn($_REQUEST['id']), $_GET['file']);
46  affiche_formulaire_modif_rubrique(vn($_REQUEST['id']), $frm);
47  break;
48 
49  case "insere" :
50  $form_error_object->valide_form($frm,
51  array('nom_' . $_SESSION['session_langue'] => $GLOBALS['STR_ADMIN_PRODUITS_ACHETES_ERR_NO_TITLE']));
52  if (!verify_token($_SERVER['PHP_SELF'] . $frm['mode'] . $frm['id'])) {
53  $form_error_object->add('token', $GLOBALS['STR_INVALID_TOKEN']);
54  }
55  if (!$form_error_object->count()) {
56  $frm['image'] = upload('image', false, 'image_or_pdf', $GLOBALS['site_parameters']['image_max_width'], $GLOBALS['site_parameters']['image_max_height'], null, null, vb($frm['image']));
58  echo $GLOBALS['tplEngine']->createTemplate('global_success.tpl', array('message' => sprintf($GLOBALS['STR_ADMIN_PRODUITS_ACHETES_MSG_CREATED_OK'], vb($_POST['nom_' . $_SESSION['session_langue']]))))->fetch();
59  affiche_formulaire_liste_rubrique(vn($_REQUEST['id']));
60  } else {
61  echo $form_error_object->text();
62  affiche_formulaire_ajout_rubrique(vn($_REQUEST['id']), $frm);
63  }
64  break;
65 
66  case "maj" :
67  if (!verify_token($_SERVER['PHP_SELF'] . $frm['mode'] . $frm['id'])) {
68  $form_error_object->add('token', $GLOBALS['STR_INVALID_TOKEN']);
69  }
70  if (!$form_error_object->count()) {
71  $frm['image'] = upload('image', false, 'image_or_pdf', $GLOBALS['site_parameters']['image_max_width'], $GLOBALS['site_parameters']['image_max_height'], null, null, vb($frm['image']));
72  maj_rubrique(vn($_REQUEST['id']), $frm);
73 
74  if ($GLOBALS['site_parameters']['display_content_category_diaporama']) {
75  if($GLOBALS['site_parameters']['used_uploader'] == 'html') {
76  upload_rubrique_diaporama(vn($_REQUEST['id']), $_POST); // ajout des images du diaporama
77  } else {
78  upload_rubrique_diaporama(vn($_REQUEST['id']), $_FILES); // ajout des images du diaporama
79  }
80  }
81  echo $GLOBALS['tplEngine']->createTemplate('global_success.tpl', array('message' => sprintf($GLOBALS['STR_ADMIN_PRODUITS_ACHETES_MSG_UPDATED_OK'], vn($_REQUEST['id']))))->fetch();
82  affiche_formulaire_liste_rubrique(vn($_REQUEST['id']));
83  } else {
84  if ($form_error_object->has_error('token')) {
85  echo $form_error_object->text('token');
86  }
87  affiche_formulaire_modif_rubrique($frm['id'], $frm);
88  }
89  break;
90 
91  case "modif_etat" :
92  if (isset($_GET['position']) && !empty($_GET['id'])) {
93  $qid = query("SELECT *
94  FROM peel_rubriques
95  WHERE id = " . intval($_GET['id']) . " AND " . get_filter_site_cond('rubriques', null, true) . "");
96  if ($result = fetch_assoc($qid)) {
97  // On intervertit les positions si une autre catégorie a la même position
98  $qid = query('UPDATE peel_rubriques
99  SET position="' . intval($result['position']) . '"
100  WHERE parent_id="' . intval($result['parent_id']) . '" AND position="' . intval($_GET['position']) . '" AND ' . get_filter_site_cond('rubriques', null, true));
101  }
102  query('UPDATE peel_rubriques
103  SET position="' . intval($_GET['position']) . '"
104  WHERE id="' . intval($_GET['id']) . '" AND ' . get_filter_site_cond('rubriques', null, true));
105  }
106  affiche_formulaire_liste_rubrique(vn($_REQUEST['id']));
107  break;
108 
109  default :
110  affiche_formulaire_liste_rubrique(vn($_REQUEST['id']));
111  break;
112 }
113 
114 include($GLOBALS['repertoire_modele'] . "/admin_bas.php");
115 
129 function affiche_arbo_rubrique(&$sortie, $selectionne, $parent_id = 0, $indent = "", $first_line = 0, $depth = 1)
130 {
131  static $tpl;
132  if(empty($tpl)) {
133  $tpl = $GLOBALS['tplEngine']->createTemplate('admin_arbo_rubrique.tpl');
134  }
135 
136  $sql = 'SELECT r.id, r.nom_' . $_SESSION['session_langue'] . ', r.site_id, r.etat, r.position, r.image, r.articles_review, r.technical_code
137  FROM peel_rubriques r
138  WHERE r.parent_id = "' . intval($parent_id) . '" AND ' . get_filter_site_cond('rubriques', 'r', true) . '
139  ORDER BY r.position' . (!empty($GLOBALS['site_parameters']['content_category_primary_order_by'])? ", r." . $GLOBALS['site_parameters']['content_category_primary_order_by'] : '') . '';
140  $qid = query($sql);
141  while ($rub = fetch_assoc($qid)) {
142  if (!empty($rub['image'])) {
143  $this_thumb = thumbs($rub['image'], 80, 50, 'fit');
144  $tpl->assign('image', $rub['image']);
145  $tpl->assign('image_src', $GLOBALS['repertoire_upload'] . '/thumbs/' . $this_thumb);
146  } else {
147  $tpl->assign('image', null);
148  $tpl->assign('image_src', null);
149  }
150  $tpl->assign('tr_rollover', tr_rollover($first_line, true));
151  $tpl->assign('ajout_rub_href', get_current_url(false) . '?mode=ajout&id=' . $rub['id']);
152  $tpl->assign('rubrique_src', $GLOBALS['administrer_url'] . '/images/rubrique-24.gif');
153  $tpl->assign('ajout_art_href', $GLOBALS['administrer_url'] . '/articles.php?mode=ajout&rubrique_id=' . $rub['id']);
154  $tpl->assign('prod_cat_src', $GLOBALS['administrer_url'] . '/images/prod-cat-24.gif');
155  $tpl->assign('nom', (!empty($rub['nom_' . $_SESSION['session_langue']])?$rub['nom_' . $_SESSION['session_langue']]:'['.$rub['id'].']'));
156  $tpl->assign('sup_href', get_current_url(false) . '?mode=suppr&id=' . $rub['id']);
157  $tpl->assign('drop_src', $GLOBALS['administrer_url'] . '/images/b_drop.png');
158  $tpl->assign('indent', $indent);
159  $tpl->assign('modif_href', get_current_url(false) . '?mode=modif&id=' . $rub['id']);
160  $tpl->assign('site_name', get_site_name($rub['site_id']));
161  $tpl->assign('depth', $depth);
162  $tpl->assign('position', $rub['position']);
163  $tpl->assign('up_href', get_current_url(false) . '?mode=modif_etat&id=' . $rub['id'] . '&position=' . ($rub['position'] - 1));
164  $tpl->assign('up_src', $GLOBALS['administrer_url'] . '/images/up.gif');
165  $tpl->assign('desc_href', get_current_url(false) . '?mode=modif_etat&id=' . $rub['id'] . '&position=' . ($rub['position'] + 1));
166  $tpl->assign('desc_src', $GLOBALS['administrer_url'] . '/images/desc.gif');
167  $tpl->assign('etat_onclick', 'change_status("rubriques", "' . $rub['id'] . '", this, "'.$GLOBALS['administrer_url'] . '")');
168  $tpl->assign('etat_src', $GLOBALS['administrer_url'] . '/images/' . (empty($rub['etat']) ? 'puce-blanche.gif' : 'puce-verte.gif'));
169  $tpl->assign('STR_ADMIN_RUBRIQUES_ADD_SUBCATEGORY', $GLOBALS['STR_ADMIN_RUBRIQUES_ADD_SUBCATEGORY']);
170  $tpl->assign('STR_ADMIN_ARTICLES_FORM_ADD', $GLOBALS['STR_ADMIN_ARTICLES_FORM_ADD']);
171  $tpl->assign('STR_ADMIN_RUBRIQUES_DELETE_CATEGORY', $GLOBALS['STR_ADMIN_RUBRIQUES_DELETE_CATEGORY']);
172  $tpl->assign('STR_DELETE', $GLOBALS['STR_DELETE']);
173  $tpl->assign('STR_ADMIN_DELETE_WARNING', $GLOBALS['STR_ADMIN_DELETE_WARNING']);
174  $tpl->assign('STR_ADMIN_LEVEL', $GLOBALS['STR_ADMIN_LEVEL']);
175  $tpl->assign('STR_NUMBER', $GLOBALS['STR_NUMBER']);
176  $sortie .= $tpl->fetch();
177  $first_line++;
178  if ($rub['id'] != $parent_id) {
179  affiche_arbo_rubrique($sortie, $selectionne, $rub['id'], $indent . "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;", $first_line, $depth + 1);
180  }
181  }
182 }
183 
192 {
193  // Valeurs par défaut
194  if(empty($frm)) {
195  $frm = array();
196  foreach ($GLOBALS['admin_lang_codes'] as $lng) {
197  $frm['nom_' . $lng] = "";
198  $frm['description_' . $lng] = "";
199  $frm['meta_titre_' . $lng] = "";
200  $frm['meta_key_' . $lng] = "";
201  $frm['meta_desc_' . $lng] = "";
202  }
203  $frm['etat'] = "";
204  $frm['technical_code'] = "";
205  $frm['image'] = "";
206  $frm['position'] = 0;
207  $frm['articles_review'] = "";
208  }
209  $frm["parent_id"] = $id;
210  $frm["nouveau_mode"] = "insere";
211  $frm['id'] = "";
212  $frm['site_id'] = "";
213  $frm["titre_soumet"] = $GLOBALS['STR_ADMIN_RUBRIQUES_CREATE'];
214 
215  // Affiche la liste des rubriques, en présélectionnant la rubrique choisie.
217 }
218 
227 {
228  if(empty($frm)){
229  // Pas de données venant de validation de formulaire, donc on charge le contenu de la base de données
230  // Charge les infos de la rubrique.
231  $qid = query("SELECT *
232  FROM peel_rubriques
233  WHERE id = '" . intval($id) . "' AND " . get_filter_site_cond('rubriques', null, true) . "");
234  if ($frm = fetch_assoc($qid)) {
235  } else {
236  echo $GLOBALS['tplEngine']->createTemplate('global_error.tpl', array('message' => $GLOBALS['STR_ADMIN_RUBRIQUES_ERR_NOT_FOUND']))->fetch();
237  return false;
238  }
239  }
240  $frm["nouveau_mode"] = "maj";
241  $frm["titre_soumet"] = $GLOBALS['STR_ADMIN_FORM_SAVE_CHANGES'];
242 
243  // Affiche la liste des rubriques, en présélectionnant la rubrique choisie.
245 }
246 
255 {
256  $sql = "SELECT nom_" . $_SESSION['session_langue'] . " AS nom
257  FROM peel_rubriques
258  WHERE id = '" . intval($id) . "' AND " . get_filter_site_cond('rubriques', null, true) . "";
259  $query = query($sql);
260  $current_rub = fetch_assoc($query);
261  // Trouve le parent de cette rubrique
262  $qid = query("SELECT rub.nom_" . $_SESSION['session_langue'] . ", rub.parent_id, parent.nom_" . $_SESSION['session_langue'] . " AS parent
263  FROM peel_rubriques rub
264  INNER JOIN peel_rubriques parent ON parent.id = rub.parent_id
265  WHERE rub.id = '" . intval($id) . "' AND " . get_filter_site_cond('rubriques', 'rub', true) . "");
266 
267  if ($rub = fetch_assoc($qid)) {
268  // Réaffecte tous les produits de cette rubrique à la rubrique parente
269  $qid = query("UPDATE peel_articles_rubriques
270  SET rubrique_id = " . intval($rub['parent_id']) . "
271  WHERE rubrique_id = '" . intval($id) . "'");
272  /* Réaffecte toutes les sous-rubriques de cette rubrique à la rubrique parente */
273  $qid = query("UPDATE peel_rubriques
274  SET parent_id = " . intval($rub['parent_id']) . "
275  WHERE parent_id = '" . intval($id) . "' AND " . get_filter_site_cond('rubriques', null, true) . "");
276  } else {
277  // Réaffecte tous les produits de cette rubrique à la rubrique parente
278  $qid = query("UPDATE peel_articles_rubriques
279  SET rubrique_id = '0'
280  WHERE rubrique_id = '" . intval($id) . "'");
281  // Réaffecte toutes les sous-rubriques de cette rubrique à la rubrique parente
282  $qid = query("UPDATE peel_rubriques
283  SET parent_id = '0'
284  WHERE parent_id = '" . intval($id) . "' AND " . get_filter_site_cond('rubriques', null, true) . "");
285  }
286  query("DELETE FROM peel_rubriques WHERE id = '" . intval($id) . "' AND " . get_filter_site_cond('rubriques', null, true) . "");
287 
288  echo $GLOBALS['tplEngine']->createTemplate('global_success.tpl', array('message' => sprintf($GLOBALS['STR_ADMIN_RUBRIQUES_MSG_CREATED_OK'], $current_rub['nom'])))->fetch();
289 }
290 
298 {
299  // Remplit les contenus vides
301 
302  $sql = 'INSERT INTO peel_rubriques (
303  parent_id
304  , image
305  , site_id
306  , etat
307  , technical_code
308  , position
309  , articles_review';
310  foreach ($GLOBALS['admin_lang_codes'] as $lng) {
311  $sql .= "
312  , nom_" . $lng . "
313  , description_" . $lng . '
314  , meta_titre_' . $lng . '
315  , meta_key_' . $lng . '
316  , meta_desc_' . $lng;
317  }
318  $sql .= "
319  ) VALUES (
320  " . intval($frm['parent_id']) . "
321  , '" . nohtml_real_escape_string($frm['image']) . "'
323  ,'" . intval($frm['etat']) . "'
324  ,'" . nohtml_real_escape_string(vb($frm['technical_code'])) . "'
325  ,'" . intval($frm['position']) . "'
326  ,'" . nohtml_real_escape_string($frm['articles_review']) . "'";
327  foreach ($GLOBALS['admin_lang_codes'] as $lng) {
328  $sql .= "
329  , '" . nohtml_real_escape_string($frm['nom_' . $lng]) . "'
330  , '" . real_escape_string($frm['description_' . $lng]) . "'
331  ,'" . nohtml_real_escape_string($frm['meta_titre_' . $lng]) . "'
332  ,'" . nohtml_real_escape_string($frm['meta_key_' . $lng]) . "'
333  ,'" . nohtml_real_escape_string($frm['meta_desc_' . $lng]) . "'";
334  }
335  $sql .= ')';
336  query($sql);
337 }
338 
347 {
348  if ($frm['parent_id'] == $id) {
349  $parent_id = 0;
350  } else {
351  $parent_id = $frm['parent_id'];
352  }
353 
354  // Remplit les contenus vides
356 
357  $sql = "UPDATE peel_rubriques
358  SET parent_id = '" . intval($parent_id) . "'";
359 
360  foreach ($GLOBALS['admin_lang_codes'] as $lng) {
361  $sql .= ",nom_" . $lng . " = '" . nohtml_real_escape_string($frm['nom_' . $lng]) . "'
362  , description_" . $lng . " = '" . real_escape_string($frm['description_' . $lng]) . "'
363  , meta_titre_" . $lng . " = '" . nohtml_real_escape_string($frm['meta_titre_' . $lng]) . "'
364  , meta_key_" . $lng . " = '" . nohtml_real_escape_string($frm['meta_key_' . $lng]) . "'
365  , meta_desc_" . $lng . " = '" . nohtml_real_escape_string($frm['meta_desc_' . $lng]) . "'";
366  }
367 
368  $sql .= ", image = '" . nohtml_real_escape_string($frm['image']) . "'
369  , etat = '" . intval($frm['etat']) . "'
370  , site_id = '" . nohtml_real_escape_string(get_site_id_sql_set_value($frm['site_id'])) . "'
371  , technical_code = '" . nohtml_real_escape_string($frm['technical_code']) . "'
372  , position = '" . intval($frm['position']) . "'
373  , articles_review = '" . nohtml_real_escape_string($frm['articles_review']) . "'
374  WHERE id = '" . intval($id) . "'";
375 
376  query($sql);
377 }
378 
386 {
387  $frm["parent_id"] = $id;
388 
389  affiche_liste_rubrique($frm["parent_id"]);
390 }
391 
398 function affiche_liste_rubrique($parent_id)
399 {
400  $tpl = $GLOBALS['tplEngine']->createTemplate('admin_liste_rubrique.tpl');
401  $tpl->assign('add_src', $GLOBALS['administrer_url'] . '/images/add.png');
402  $tpl->assign('ajout_href', get_current_url(false) . '?mode=ajout');
403  $tpl->assign('rubrique_src', $GLOBALS['administrer_url'] . '/images/rubrique-24.gif');
404  $tpl->assign('prod_cat_src', $GLOBALS['administrer_url'] . '/images/prod-cat-24.gif');
405  $tpl->assign('drop_src', $GLOBALS['administrer_url'] . '/images/b_drop.png');
406  affiche_arbo_rubrique($rubrique_options, $parent_id);
407  $tpl->assign('rubrique_options', $rubrique_options);
408  $tpl->assign('STR_ADMIN_RUBRIQUES_LIST_TITLE', $GLOBALS['STR_ADMIN_RUBRIQUES_LIST_TITLE']);
409  $tpl->assign('STR_ADMIN_RUBRIQUES_ADD', $GLOBALS['STR_ADMIN_RUBRIQUES_ADD']);
410  $tpl->assign('STR_ADMIN_RUBRIQUES_ADD_SUBCATEGORY', $GLOBALS['STR_ADMIN_RUBRIQUES_ADD_SUBCATEGORY']);
411  $tpl->assign('STR_ADMIN_ARTICLES_FORM_ADD', $GLOBALS['STR_ADMIN_ARTICLES_FORM_ADD']);
412  $tpl->assign('STR_ADMIN_RUBRIQUES_DELETE_CATEGORY', $GLOBALS['STR_ADMIN_RUBRIQUES_DELETE_CATEGORY']);
413  $tpl->assign('STR_ADMIN_RUBRIQUES_POSITION_EXPLAIN', $GLOBALS['STR_ADMIN_RUBRIQUES_POSITION_EXPLAIN']);
414  $tpl->assign('STR_ADMIN_ACTION', $GLOBALS['STR_ADMIN_ACTION']);
415  $tpl->assign('STR_IMAGE', $GLOBALS['STR_IMAGE']);
416  $tpl->assign('STR_ADMIN_RUBRIQUE', $GLOBALS["STR_ADMIN_RUBRIQUE"]);
417  $tpl->assign('STR_WEBSITE', $GLOBALS['STR_WEBSITE']);
418  $tpl->assign('STR_ADMIN_POSITION', $GLOBALS['STR_ADMIN_POSITION']);
419  $tpl->assign('STR_STATUS', $GLOBALS['STR_STATUS']);
420  echo $tpl->fetch();
421 }
422 
429 {
430  $tpl = $GLOBALS['tplEngine']->createTemplate('admin_formulaire_rubrique.tpl');
431  $tpl->assign('action', get_current_url(false));
432  $tpl->assign('form_token', get_form_token_input($_SERVER['PHP_SELF'] . $frm['nouveau_mode'] . intval(vb($frm['id']))));
433  $tpl->assign('mode', vb($frm['nouveau_mode']));
434  $tpl->assign('id', intval(vb($frm['id'])));
435  $tpl->assign('site_id_select_options', get_site_id_select_options(vb($frm['site_id'])));
436  $tpl->assign('site_id_select_multiple', !empty($GLOBALS['site_parameters']['multisite_using_array_for_site_id']));
437  $tpl->assign('getmode', vb($_GET['mode']));
438  $tpl->assign('nom', $frm['nom_' . $_SESSION['session_langue']]);
439  $tpl->assign('category_href', get_content_category_url($frm['id'], $frm['nom_' . $_SESSION['session_langue']], false, false, null, vb($frm['site_id'])));
440  $tpl->assign('empty_parent_id', empty($frm['parent_id']));
441  $tpl->assign('rubrique_options', get_categories_output(null, 'rubriques', vb($frm['parent_id']), 'option', '&nbsp;&nbsp;', null, null, true, 80));
442  $tpl->assign('etat', vb($frm['etat']));
443  $tpl->assign('position', vb($frm['position']));
444  if(empty($frm['id'])){
445  $frm['articles_review'] = vb($GLOBALS['site_parameters']['articles_review']);
446  }
447  $tpl->assign('articles_review', vb($frm['articles_review']));
448  $tpl->assign('technical_code', vb($frm['technical_code']));
449  $tpl_langs = array();
450  foreach ($GLOBALS['admin_lang_codes'] as $lng) {
451  $tpl_langs[] = array('lng' => $lng,
452  'nom' => vb($frm['nom_' . $lng]),
453  'description_te' => getTextEditor('description_' . $lng, '100%', 500, String::html_entity_decode_if_needed(vb($frm['description_' . $lng]))),
454  'meta_key' => vb($frm['meta_key_' . $lng]),
455  'meta_desc' => vb($frm['meta_desc_' . $lng]),
456  'meta_titre' => vb($frm['meta_titre_' . $lng]),
457  );
458  }
459  $tpl->assign('langs', $tpl_langs);
460  $tpl->assign('drop_src', $GLOBALS['administrer_url'] . '/images/b_drop.png');
461  if (!empty($frm["image"])) {
462  $tpl->assign('image', get_uploaded_file_infos('image', $frm['image'], get_current_url(false) . '?mode=supprfile&id=' . vb($frm['id']) . '&file=image'));
463  }
464  if ($GLOBALS['site_parameters']['display_content_category_diaporama']) {
465  $tpl_diapo = array();
466  $i = 1;
467  if (!empty($frm['id'])) {
468  $sql = query("SELECT `id`, `image`
469  FROM `peel_diaporama`
470  WHERE `id_rubrique`=" . intval($frm['id']));
471  while ($diaporama = fetch_assoc($sql)) {
472  $tpl_diapo[$i] = get_uploaded_file_infos('image_diapo' . $i, $diaporama['image'], get_current_url(false) . '?mode=supprdiapo&id='.$frm['id'].'&diapoid=' . vb($diaporama['id']) . '&file=' . $diaporama['image']);
473  $i++;
474  }
475  }
476  $tpl->assign('diapo', $tpl_diapo);
477  }
478 
479  $tpl->assign('titre_soumet', $frm["titre_soumet"]);
480  $tpl->assign('STR_FILE', $GLOBALS['STR_FILE']);
481  $tpl->assign('STR_ADMIN_WEBSITE', $GLOBALS['STR_ADMIN_WEBSITE']);
482  $tpl->assign('STR_IMAGE', $GLOBALS['STR_IMAGE']);
483  $tpl->assign('STR_DELETE_THIS_FILE', $GLOBALS['STR_DELETE_THIS_FILE']);
484  $tpl->assign('STR_BEFORE_TWO_POINTS', $GLOBALS['STR_BEFORE_TWO_POINTS']);
485  $tpl->assign('STR_ADMIN_RUBRIQUES_UPDATE', $GLOBALS['STR_ADMIN_RUBRIQUES_UPDATE']);
486  $tpl->assign('STR_ADMIN_SEE_RESULT_IN_REAL', $GLOBALS['STR_ADMIN_SEE_RESULT_IN_REAL']);
487  $tpl->assign('STR_ADMIN_RUBRIQUES_ADD', $GLOBALS['STR_ADMIN_RUBRIQUES_ADD']);
488  $tpl->assign('STR_ADMIN_RUBRIQUES_PARENT', $GLOBALS['STR_ADMIN_RUBRIQUES_PARENT']);
489  $tpl->assign('STR_BEFORE_TWO_POINTS', $GLOBALS['STR_BEFORE_TWO_POINTS']);
490  $tpl->assign('STR_ADMIN_AT_ROOT', $GLOBALS['STR_ADMIN_AT_ROOT']);
491  $tpl->assign('STR_STATUS', $GLOBALS['STR_STATUS']);
492  $tpl->assign('STR_ADMIN_ONLINE', $GLOBALS['STR_ADMIN_ONLINE']);
493  $tpl->assign('STR_ADMIN_OFFLINE', $GLOBALS['STR_ADMIN_OFFLINE']);
494  $tpl->assign('STR_ADMIN_POSITION', $GLOBALS['STR_ADMIN_POSITION']);
495  $tpl->assign('STR_ADMIN_DISPLAY_MODE', $GLOBALS['STR_ADMIN_DISPLAY_MODE']);
496  $tpl->assign('STR_ADMIN_RUBRIQUES_DISPLAY_SUMMARIES', $GLOBALS['STR_ADMIN_RUBRIQUES_DISPLAY_SUMMARIES']);
497  $tpl->assign('STR_ADMIN_RUBRIQUES_DISPLAY_NO_SUMMARY', $GLOBALS['STR_ADMIN_RUBRIQUES_DISPLAY_NO_SUMMARY']);
498  $tpl->assign('STR_ADMIN_TECHNICAL_CODE', $GLOBALS['STR_ADMIN_TECHNICAL_CODE']);
499  $tpl->assign('STR_ADMIN_LANGUAGES_SECTION_HEADER', $GLOBALS['STR_ADMIN_LANGUAGES_SECTION_HEADER']);
500  $tpl->assign('STR_ADMIN_NAME', $GLOBALS['STR_ADMIN_NAME']);
501  $tpl->assign('STR_ADMIN_DESCRIPTION', $GLOBALS['STR_ADMIN_DESCRIPTION']);
502  $tpl->assign('STR_ADMIN_META_TITLE', $GLOBALS['STR_ADMIN_META_TITLE']);
503  $tpl->assign('STR_ADMIN_META_KEYWORDS', $GLOBALS['STR_ADMIN_META_KEYWORDS']);
504  $tpl->assign('STR_ADMIN_SEPARATE_KEYWORDS_EXPLAIN', $GLOBALS['STR_ADMIN_SEPARATE_KEYWORDS_EXPLAIN']);
505  $tpl->assign('STR_ADMIN_META_DESCRIPTION', $GLOBALS['STR_ADMIN_META_DESCRIPTION']);
506  $tpl->assign('STR_ADMIN_VARIOUS_INFORMATION_HEADER', $GLOBALS['STR_ADMIN_VARIOUS_INFORMATION_HEADER']);
507  $tpl->assign('STR_ADMIN_FILE_NAME', $GLOBALS['STR_ADMIN_FILE_NAME']);
508  $tpl->assign('STR_ADMIN_DELETE_IMAGE', $GLOBALS['STR_ADMIN_DELETE_IMAGE']);
509  echo $tpl->fetch();
510 }
511 
520 {
521  /* Charge les infos du produit. */
522  switch ($file) {
523  case "image":
524  $sql = "SELECT image
525  FROM peel_rubriques
526  WHERE id = '" . intval($id) . "' AND " . get_filter_site_cond('rubriques', null, true) . "";
527  $res = query($sql);
528  $file = fetch_assoc($res);
529  query("UPDATE peel_rubriques
530  SET image = ''
531  WHERE id = '" . intval($id) . "' AND " . get_filter_site_cond('rubriques', null, true) . "");
532  break;
533  }
534  delete_uploaded_file_and_thumbs($file['image']);
535  echo $GLOBALS['tplEngine']->createTemplate('global_success.tpl', array('message' => sprintf($GLOBALS['STR_ADMIN_RUBRIQUES_MSG_DELETED_OK'], $file['image'])))->fetch();
536 }
537 
546 {
547  /* Charge les infos du produit. */
548  query("DELETE FROM `peel_diaporama` WHERE id = '" . intval($id) . "'");
550  echo $GLOBALS['tplEngine']->createTemplate('global_success.tpl', array('message' => sprintf($GLOBALS['STR_ADMIN_DIAPORAMA_MSG_DELETED_OK'], $file)))->fetch();
551 }
552 
553 
554 /*
555  * Ajoute des images du diaporama
556  *
557  * @param mixed $id
558  */
559 function upload_rubrique_diaporama($id_rubrique, $frm)
560 {
561  for($i = 1;$i < 6;$i++) {
562  if (!empty($frm['image' . $i])) {
563  $img = upload('image' . $i, false, 'image_or_pdf', $GLOBALS['site_parameters']['image_max_width'], $GLOBALS['site_parameters']['image_max_height'], null, null, vb($frm['image' . $i]));
564  if (!empty($img) && !empty($id_rubrique)) {
565  query('INSERT INTO `peel_diaporama` VALUES(NULL, "' . intval($id_rubrique) . '", "' . nohtml_real_escape_string($img) . '")');
566  }
567  }
568  }
569 }
get_site_name($site_ids, $skip_rights_check=false)
Retourne le nom d'un ou de plusieurs sites à partir de l'id.
Definition: fonctions.php:4763
getTextEditor($instance_name, $width, $height, $default_text, $default_path=null, $type_html_editor=0, $compter_char_max_if_enabled=255, $placeholder= '')
getTextEditor()
Definition: fonctions.php:4055
$result
get_current_url($with_get=true, $get_short_url=false, $take_away_get_args_array=null)
get_current_url()
Definition: fonctions.php:1743
affiche_formulaire_liste_rubrique($id)
affiche_formulaire_liste_rubrique()
Definition: rubriques.php:385
supprime_rubrique($id)
Supprime la rubrique spécifiée par ve($_REQUEST['id']), et déplace tous les produits sous cette rubri...
Definition: rubriques.php:254
supprime_fichier_diaporama($id, $file)
Supprime l'image de la rubrique spécificiée par $id.
Definition: rubriques.php:545
insere_sous_rubrique($frm)
insere_sous_rubrique()
Definition: rubriques.php:297
affiche_formulaire_ajout_rubrique($id, &$frm)
Affiche un formulaire de rubrique vide.
Definition: rubriques.php:191
upload($field_name, $rename_file=true, $file_kind=null, $image_max_width=null, $image_max_height=null, $path=null, $new_file_name_without_extension=null, $default_return_value=null)
Fonction d'upload de fichiers.
Definition: fonctions.php:3302
fill_other_language_content($frm)
Retourne les contenus remplis si vide.
$frm
Definition: rubriques.php:23
$tpl_langs
get_site_id_select_options($selected_site_id=null, $selected_site_name=null, $display_first_option=null, $select_current_site_id_by_default=false)
Créer les options pour le select qui liste les noms de sites configurés en back office.
static html_entity_decode_if_needed($string)
String::html_entity_decode_if_needed()
Definition: String.php:533
$form_error_object
Definition: rubriques.php:22
nohtml_real_escape_string($value, $allowed_tags=null)
Protège les données pour insertion dans MySQL ET supprime les tags HTML pour protéger de toute sorte ...
Definition: database.php:400
affiche_liste_rubrique($parent_id)
affiche_liste_rubrique()
Definition: rubriques.php:398
if(!empty($_GET['id'])) if(isset($_POST['form_name'], $_POST['form_subject'], $_POST['form_text'], $_POST['form_lang'])&&empty($_GET['id'])) if(empty($_GET['id'])) $tpl
affiche_formulaire_modif_rubrique($id, &$frm)
Affiche le formulaire de modification de rubrique.
Definition: rubriques.php:226
if(!defined('IN_PEEL')) thumbs($source_filename, $width, $height, $method= 'fit', $source_folder=null, $thumb_folder=null, $thumb_rename=true, $return_absolute_path=false)
Charge l'image dont le nom est $source_filename dans le répertoire d'upload, et crée une vignette pou...
Definition: fonctions.php:33
real_escape_string($value)
real_escape_string()
Definition: database.php:374
necessite_priv($priv, $demo_allowed=true, $configuration_modification=false)
Cette fonction vérifie si l'utilisateur a les privilèges de $priv.
Definition: fonctions.php:1575
get_filter_site_cond($table_technical_code, $table_alias=null, $use_strict_rights_if_in_admin=false, $specific_site_id=null, $exclude_public_items=false, $admin_force_multisite_if_allowed=false)
Retourne la condition SQL permettant de filtrer les données pour une table.
Definition: fonctions.php:4643
query($query, $die_if_error=false, $database_object=null, $silent_if_error=false, $security_sql_filter=true)
The query() function is meant to be called anywhere you want to make a query.
Definition: database.php:158
vb(&$var, $default=null)
Variable blanche if $var n'est pas défini, retourne $default, sinon retourne $var.
Definition: format.php:97
get_uploaded_file_infos($field_name, $file, $delete_url, $logo_width=100, $logo_height=100)
Remplit un tableau d'informations pour le template d'upload HTML.
Definition: fonctions.php:3601
affiche_formulaire_rubrique(&$frm)
affiche_formulaire_rubrique()
Definition: rubriques.php:428
necessite_identification()
Si l'utilisateur n'est pas connecté à un compte, on affiche une page d'identification et arrête le sc...
Definition: fonctions.php:1596
delete_uploaded_file_and_thumbs($filename)
delete_uploaded_file_and_thumbs()
Definition: fonctions.php:3417
fetch_assoc($query_result)
fetch_assoc()
Definition: database.php:283
get_form_token_input($name= 'general', $use_existing_token=true, $return_as_input_form=true)
get_form_token_input()
Definition: fonctions.php:94
supprime_fichier_rubrique($id, $file)
Supprime l'image de la rubrique spécifiée par $id.
Definition: rubriques.php:519
vn(&$var, $default=0)
Variable nulle if $var n'est pas défini, retourne $default, sinon retourne $var.
Definition: format.php:110
get_site_id_sql_set_value($site_ids)
Retourne la valeur SQL d'un champ INT ou SET suivant que ce soit un entier ou un tableau.
Definition: fonctions.php:4747
maj_rubrique($id, $frm)
maj_rubrique()
Definition: rubriques.php:346
verify_token($name= 'general', $delay_in_minutes=60, $check_referer_if_set_by_server=true, $cancel_token=true, $minimum_wait_in_seconds_before_use=0)
Vérification de la validité d'un token Par défaut, un token est valide 1h, et utilisable 1 seule fois...
Definition: fonctions.php:118
$id
Definition: articles.php:22
affiche_arbo_rubrique(&$sortie, $selectionne, $parent_id=0, $indent="", $first_line=0, $depth=1)
FONCTIONS.
Definition: rubriques.php:129
$GLOBALS['DOC_TITLE']
Definition: rubriques.php:19
upload_rubrique_diaporama($id_rubrique, $frm)
Definition: rubriques.php:559
if(defined('IN_PEEL_ADMIN')||IN_INSTALLATION) $_SESSION['session_langue']

This documentation for Open ecommerce PEEL Shopping and PEEL.fr has been generated by Doxygen on Thu Oct 15 2015 14:29:26 - Peel ecommerce is a product of Agence web Advisto SAS. All rights reserved.