PEEL Shopping
Open source ecommerce : PEEL Shopping
ecotaxes.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: ecotaxes.php 46935 2015-09-18 08:49:48Z gboussin $
14 define('IN_PEEL_ADMIN', true);
15 include("../configuration.inc.php");
17 necessite_priv("admin_products,admin_manage");
18 
19 $GLOBALS['DOC_TITLE'] = $GLOBALS['STR_ADMIN_ECOTAXES_TITLE'];
20 include($GLOBALS['repertoire_modele'] . "/admin_haut.php");
21 
23 $frm = $_POST;
24 
25 switch (vb($_REQUEST['mode'])) {
26  case "ajout" :
28  break;
29 
30  case "modif" :
32  break;
33 
34  case "suppr" :
35  supprime_ecotaxes($_GET['id']);
37  break;
38 
39  case "insere" :
40  if (!verify_token($_SERVER['PHP_SELF'] . $frm['mode'] . $frm['id'])) {
41  $form_error_object->add('token', $GLOBALS['STR_INVALID_TOKEN']);
42  }
43  if (!$form_error_object->count()) {
44  insere_ecotaxes($_POST);
45  echo $GLOBALS['tplEngine']->createTemplate('global_success.tpl', array('message' => sprintf($GLOBALS['STR_ADMIN_ECOTAXES_MSG_ECOTAX_CREATED'], vb($_POST['nom_'.$_SESSION['session_langue']]))))->fetch();
47  } else {
48  if ($form_error_object->has_error('token')) {
49  echo $form_error_object->text('token');
50  }
52  }
53  break;
54 
55  case "maj" :
56  if (!verify_token($_SERVER['PHP_SELF'] . $frm['mode'] . $frm['id'])) {
57  $form_error_object->add('token', $GLOBALS['STR_INVALID_TOKEN']);
58  }
59  if (!$form_error_object->count()) {
60  maj_ecotaxes($frm['id'], $frm);
61  echo $GLOBALS['tplEngine']->createTemplate('global_success.tpl', array('message' => sprintf($GLOBALS['STR_ADMIN_ECOTAXES_MSG_ECOTAX_UPDATED'], vn($frm['id']))))->fetch();
63  } else {
64  if ($form_error_object->has_error('token')) {
65  echo $form_error_object->text('token');
66  }
67  affiche_formulaire_modif_ecotaxes($frm['id'], $frm);
68  }
69  break;
70 
71  default :
73  break;
74 }
75 
76 include($GLOBALS['repertoire_modele'] . "/admin_bas.php");
77 
89 {
90  /* Valeurs par défaut */
91  if(empty($frm)) {
92  $frm = array();
93  $frm['code'] = "";
94  foreach ($GLOBALS['admin_lang_codes'] as $lng) {
95  $frm['nom_' . $lng] = "";
96  }
97  $frm['prix_ht'] = "";
98  $frm['ttc'] = "";
99  }
100  $frm['nouveau_mode'] = "insere";
101  $frm['id'] = "";
102  $frm['titre_bouton'] = $GLOBALS['STR_ADMIN_ADD'];
103 
105 }
106 
115 {
116  if(empty($frm)){
117  // Pas de données venant de validation de formulaire, donc on charge le contenu de la base de données
118  /* Charge les informations de l'écotaxe */
119  $qid = query("SELECT *
120  FROM peel_ecotaxes
121  WHERE id = " . intval($id) . " AND " . get_filter_site_cond('ecotaxes', null, true));
122  if ($frm = fetch_assoc($qid)) {
123  } else {
124  echo $GLOBALS['tplEngine']->createTemplate('global_error.tpl', array('message' => $GLOBALS['STR_ADMIN_ECOTAXES_ERR_ECOTAX_NOT_FOUND']))->fetch();
125  return false;
126  }
127  }
128  $frm['id'] = $id;
129  $frm["nouveau_mode"] = "maj";
130  $frm["titre_bouton"] = $GLOBALS['STR_ADMIN_FORM_SAVE_CHANGES'];
131 
133 }
134 
142 {
143  if (vb($_REQUEST['mode']) == "modif") {
144  $sql = "SELECT prix_ht, prix_ttc
145  FROM peel_ecotaxes
146  WHERE id ='" . intval($frm['id']) . "' AND " . get_filter_site_cond('ecotaxes', null, true);
147  $query = query($sql);
149  $frm["prix_ht"] = $result['prix_ht'];
150  $prix_ttc = $result['prix_ttc'];
151  $calculated_vat = round(($prix_ttc - $frm["prix_ht"]) / $frm["prix_ht"] * 100 * 100) / 100;
152  } else {
153  $calculated_vat = 0;
154  }
155  $tpl = $GLOBALS['tplEngine']->createTemplate('admin_formulaire_ecotaxes.tpl');
156  $tpl->assign('action', get_current_url(false) . '?start=0');
157  $tpl->assign('form_token', get_form_token_input($_SERVER['PHP_SELF'] . $frm['nouveau_mode'] . intval($frm['id'])));
158  $tpl->assign('mode', $frm["nouveau_mode"]);
159  $tpl->assign('id', intval($frm['id']));
160  $tpl->assign('code', $frm["code"]);
161  $tpl_langs = array();
162  foreach ($GLOBALS['admin_lang_codes'] as $lng) {
163  $tpl_langs[] = array('lng' => $lng,
164  'nom' => $frm['nom_' . $lng]
165  );
166  }
167  $tpl->assign('site_id_select_options', get_site_id_select_options(vb($frm['site_id'])));
168  $tpl->assign('langs', $tpl_langs);
169  $tpl->assign('prix_ht', $frm["prix_ht"]);
170  $tpl->assign('vat_options', get_vat_select_options($calculated_vat, true));
171  $tpl->assign('titre_bouton', $frm["titre_bouton"]);
172  $tpl->assign('STR_ADMIN_WEBSITE', $GLOBALS['STR_ADMIN_WEBSITE']);
173  $tpl->assign('STR_BEFORE_TWO_POINTS', $GLOBALS['STR_BEFORE_TWO_POINTS']);
174  $tpl->assign('STR_ADMIN_NAME', $GLOBALS['STR_ADMIN_NAME']);
175  $tpl->assign('STR_ADMIN_ECOTAXES_FORM_TITLE', $GLOBALS['STR_ADMIN_ECOTAXES_FORM_TITLE']);
176  $tpl->assign('STR_ADMIN_CODE', $GLOBALS['STR_ADMIN_CODE']);
177  $tpl->assign('STR_PRICE', $GLOBALS['STR_PRICE']);
178  $tpl->assign('STR_HT', $GLOBALS['STR_HT']);
179  $tpl->assign('STR_TAXE', $GLOBALS['STR_TAXE']);
180  $tpl->assign('STR_ADMIN_VARIOUS_INFORMATION_HEADER', $GLOBALS['STR_ADMIN_VARIOUS_INFORMATION_HEADER']);
181  $tpl->assign('STR_ADMIN_LANGUAGES_SECTION_HEADER', $GLOBALS['STR_ADMIN_LANGUAGES_SECTION_HEADER']);
182  echo $tpl->fetch();
183 }
184 
192 {
193  $qid = query("SELECT *
194  FROM peel_ecotaxes
195  WHERE id=" . intval($id) . " AND " . get_filter_site_cond('ecotaxes', null, true));
196  $e = fetch_assoc($qid);
197 
198  /* Efface le ecotaxes */
199  query("DELETE FROM peel_ecotaxes
200  WHERE id=" . intval($id) . " AND " . get_filter_site_cond('ecotaxes', null, true));
201  echo $GLOBALS['tplEngine']->createTemplate('global_success.tpl', array('message' => sprintf($GLOBALS['STR_ADMIN_ECOTAXES_MSG_ECOTAX_DELETED'], $e['nom_'.$_SESSION['session_langue']])))->fetch();
202 }
203 
211 {
212  $sql = "INSERT INTO peel_ecotaxes
213  SET code = '" . nohtml_real_escape_string($frm['code']) . "'";
214  foreach ($GLOBALS['admin_lang_codes'] as $lng) {
215  $sql .= "
216  , nom_" . $lng . "='" . nohtml_real_escape_string($frm['nom_' . $lng]) . "'";
217  }
218  $sql .= "
219  , site_id = '" . nohtml_real_escape_string(get_site_id_sql_set_value($frm['site_id'])) . "'
220  , prix_ht = '" . nohtml_real_escape_string($frm['prix']) . "'
221  , prix_ttc = '" . nohtml_real_escape_string($frm['prix'] * (1 + $frm['taxes'] / 100)) . "'";
222  $qid = query($sql);
223 }
224 
233 {
234  $sql = "UPDATE peel_ecotaxes
235  SET code = '" . nohtml_real_escape_string($frm['code']) . "'";
236  foreach ($GLOBALS['admin_lang_codes'] as $lng) {
237  $sql .= "
238  , nom_" . $lng . "='" . nohtml_real_escape_string($frm['nom_' . $lng]) . "'";
239  }
240  $sql .= "
241  , site_id = '" . nohtml_real_escape_string(get_site_id_sql_set_value($frm['site_id'])) . "'
242  , prix_ht = '" . nohtml_real_escape_string($frm['prix']) . "'
243  , prix_ttc = '" . nohtml_real_escape_string($frm['prix'] * (1 + $frm['taxes'] / 100)) . "'
244  WHERE id = '" . intval($id) . "'";
245  $qid = query($sql);
246 }
247 
254 {
255  $tpl = $GLOBALS['tplEngine']->createTemplate('admin_liste_ecotaxes.tpl');
256  $tpl->assign('add_src', $GLOBALS['administrer_url'] . '/images/add.png');
257  $tpl->assign('add_href', get_current_url(false) . '?mode=ajout');
258  $tpl->assign('drop_src', $GLOBALS['administrer_url'] . '/images/b_drop.png');
259  $tpl->assign('edit_src', $GLOBALS['administrer_url'] . '/images/b_edit.png');
260 
261  $result = query("SELECT *
262  FROM peel_ecotaxes
263  WHERE " . get_filter_site_cond('ecotaxes', null, true) . "
264  ORDER BY code");
265  if (!(num_rows($result) == 0)) {
266  $tpl_results = array();
267  $i = 0;
268  while ($ligne = fetch_assoc($result)) {
269  $tpl_results[] = array('tr_rollover' => tr_rollover($i, true),
270  'nom' => (!empty($ligne['nom_' . $_SESSION['session_langue']])?$ligne['nom_' . $_SESSION['session_langue']]:'['.$ligne['id'].']'),
271  'drop_href' => get_current_url(false) . '?mode=suppr&id=' . $ligne['id'],
272  'edit_href' => get_current_url(false) . '?mode=modif&id=' . $ligne['id'],
273  'code' => $ligne['code'],
274  'prix_ht' => fprix($ligne['prix_ht'], true, $GLOBALS['site_parameters']['code'], false),
275  'prix_ttc' => fprix($ligne['prix_ttc'], true, $GLOBALS['site_parameters']['code'], false),
276  'site_name' => get_site_name($ligne['site_id'])
277  );
278  $i++;
279  }
280  $tpl->assign('results', $tpl_results);
281  }
282  $tpl->assign('STR_ADMIN_WEBSITE', $GLOBALS['STR_ADMIN_WEBSITE']);
283  $tpl->assign('STR_ADMIN_ECOTAXES_TITLE', $GLOBALS['STR_ADMIN_ECOTAXES_TITLE']);
284  $tpl->assign('STR_ADMIN_ECOTAXES_EXPLAIN', $GLOBALS['STR_ADMIN_ECOTAXES_EXPLAIN']);
285  $tpl->assign('STR_ADMIN_ECOTAXES_ADD_ECOTAX', $GLOBALS['STR_ADMIN_ECOTAXES_ADD_ECOTAX']);
286  $tpl->assign('STR_ADMIN_ACTION', $GLOBALS['STR_ADMIN_ACTION']);
287  $tpl->assign('STR_ADMIN_CODE', $GLOBALS['STR_ADMIN_CODE']);
288  $tpl->assign('STR_ADMIN_ECOTAX', $GLOBALS['STR_ADMIN_ECOTAX']);
289  $tpl->assign('STR_PRICE', $GLOBALS['STR_PRICE']);
290  $tpl->assign('STR_HT', $GLOBALS['STR_HT']);
291  $tpl->assign('STR_TTC', $GLOBALS['STR_TTC']);
292  $tpl->assign('STR_ADMIN_DELETE_WARNING', $GLOBALS['STR_ADMIN_DELETE_WARNING']);
293  $tpl->assign('STR_ADMIN_ECOTAXES_MODIFY_ECOTAX', $GLOBALS['STR_ADMIN_ECOTAXES_MODIFY_ECOTAX']);
294  $tpl->assign('STR_ADMIN_DELETE_WARNING', $GLOBALS['STR_ADMIN_DELETE_WARNING']);
295  $tpl->assign('STR_DELETE', $GLOBALS['STR_DELETE']);
296  echo $tpl->fetch();
297 }
298 
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
$result
$form_error_object
Definition: ecotaxes.php:22
get_current_url($with_get=true, $get_short_url=false, $take_away_get_args_array=null)
get_current_url()
Definition: fonctions.php:1743
$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.
affiche_formulaire_ajout_ecotaxes(&$frm)
FONCTIONS.
Definition: ecotaxes.php:88
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
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
get_vat_select_options($selected_vat=null, $approximative_amount_selected=false)
get_vat_select_options()
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
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
num_rows($query_result)
num_rows()
Definition: database.php:321
fetch_assoc($query_result)
fetch_assoc()
Definition: database.php:283
affiche_liste_ecotaxes()
affiche_liste_ecotaxes()
Definition: ecotaxes.php:253
get_form_token_input($name= 'general', $use_existing_token=true, $return_as_input_form=true)
get_form_token_input()
Definition: fonctions.php:94
vn(&$var, $default=0)
Variable nulle if $var n'est pas défini, retourne $default, sinon retourne $var.
Definition: format.php:110
maj_ecotaxes($id, $frm)
maj_ecotaxes()
Definition: ecotaxes.php:232
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
affiche_formulaire_modif_ecotaxes($id, &$frm)
Affiche le formulaire de modification pour le ecotaxes sélectionné
Definition: ecotaxes.php:114
insere_ecotaxes($frm)
Ajoute le ecotaxes dans la table ecotaxes.
Definition: ecotaxes.php:210
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
supprime_ecotaxes($id)
Supprime les ecotaxes spécifiées par $id.
Definition: ecotaxes.php:191
$GLOBALS['DOC_TITLE']
Definition: ecotaxes.php:19
fprix($price, $display_currency=false, $currency_code_or_default=null, $convertion_needed_into_currency=true, $currency_rate=null, $display_iso_currency_code=false, $format=true, $force_format_separator=null, $add_rdfa_properties=false, $round_even_if_no_format=false)
fprix formatte le prix donné en le convertissant si nécessaire au préalable et en ajoutant éventuelle...
Definition: fonctions.php:242
$frm
Definition: ecotaxes.php:23
affiche_formulaire_ecotaxes(&$frm)
affiche_formulaire_ecotaxes()
Definition: ecotaxes.php:141
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:07 - Peel ecommerce is a product of Agence web Advisto SAS. All rights reserved.