source: spip-zone/_plugins_/declinaisons/branches/v1/formulaires/panier_declinaison.php @ 108455

Last change on this file since 108455 was 108455, checked in by abelass@…, 20 months ago

1.1.0 Affichage formulaire panier

  • Complet ou court, à définir dans config ou le formulaire même
  • Formatage
  • salvatore
File size: 1.9 KB
Line 
1<?php
2if (!defined("_ECRIRE_INC_VERSION"))
3        return;
4        function formulaires_panier_declinaison_charger_dist($id_objet_produit, $objet_produit = 'article', $titre = '') {
5        include_spip('inc/session');
6        include_spip('inc/config');
7
8        $config = lire_config('declinaisons', array());
9        $formulaire_titre_complet = isset($config['formulaire_titre_complet']) ? $config['formulaire_titre_complet'] : 'on';
10
11        if ($titre == 'court') {
12                $formulaire_titre_complet = '';
13        }
14        elseif ($titre == 'complet') {
15                $formulaire_titre_complet = 'on';
16        }
17
18        if (is_array($id_objet_produit))
19                $id_objet_produit = implode(',', $id_objet_produit);
20        if ($id_objet_produit)
21                $sql = sql_select('*', 'spip_prix_objets', 'id_objet IN (' . $id_objet_produit . ') AND objet=' . sql_quote($objet_produit));
22
23        $declinaisons = array();
24
25        $id_panier = session_get('id_panier');
26        // S'il n'y a pas de panier, on le crée
27        if (!$id_panier) {
28                include_spip('inc/paniers');
29                $id_panier = paniers_creer_panier();
30        }
31
32        while ($data = sql_fetch($sql)) {
33                if (!$formulaire_titre_complet) {
34                        $titre = explode(' - ', $data['titre']);
35                        $data['titre'] = $titre[1];
36                }
37                if ($data['prix_ht'] != 0.00) {
38                        $data['prix'] = $data['prix_ht'];
39                        $data['taxe'] = _T('shop:prix_ht');
40                }
41                else {
42                        $data['prix'] = $data['prix'];
43                        $data['taxe'] = _T('prix_objets:prix_ttc');
44                }
45                $declinaisons[] = $data;
46        }
47
48        $valeurs = array(
49                'objet_produit' => $objet_produit,
50                'id_objet_produit' => $id_objet_produit,
51                'objet' => 'prix',
52                'id_objet' => '',
53                'declinaisons' => $declinaisons,
54                'id_prix_objet' => '',
55                'retour' => ''
56        );
57
58        return $valeurs;
59}
60function formulaires_panier_declinaison_traiter_dist($id_objet, $objet = 'article') {
61        $remplir_panier = charger_fonction('remplir_panier', 'action/');
62
63        $remplir_panier('prix_objet-' . _request('id_prix_objet'));
64
65        include_spip('inc/invalideur');
66        suivre_invalideur("id='id_panier/$id_panier'");
67
68        $valeurs['message_ok'] = true;
69
70        return $valeurs;
71}
Note: See TracBrowser for help on using the repository browser.