source: spip-zone/_plugins_/optionsproduits/trunk/formulaires/panier_options.html @ 111457

Last change on this file since 111457 was 111457, checked in by nicod@…, 9 months ago

Un formulaire générique pour ajouter n'importe quel objet avec ses options au panier (cf README.md)

File size: 2.1 KB
Line 
1#SET{prix,#ENV*{prix}}
2<div class="formulaire_spip overflow-visible">
3        <form action="#ENV{action}" method="post" class="js-achat-form achat">
4                #ACTION_FORMULAIRE{#ENV{action}}
5                <input type="hidden" name="objet" value="#ENV{objet}">
6                <input type="hidden" name="id_objet" value="#ENV{id_objet}">
7                <input type="hidden" name="prix_objet" value="#GET{prix}">
8               
9                [(#REM) les options listées par groupe ]
10                #SET{options, #ENV{options}|explode{|}}
11                <BOUCLE_optionsgroupes(OPTIONSGROUPES){par rang, titre_groupe}>
12                <B_radio>
13                        <div class="editer editer_radio editer_options_objet">
14                                <label>#TITRE_GROUPE</label>
15                                <BOUCLE_radio(OPTIONS){id_optionsgroupe}{options_liens.objet=#ENV{objet}}{options_liens.id_objet=#ID_OBJET}{par rang, prix_option_objet}{doublons}>
16                                [(#SET{prix_option, #PRIX_OPTION*{#ENV{objet},#ID_OBJET,#ID_OPTION}})]
17                                [(#SET{prix_option_seule, #GET{prix_option}|moins{#GET{prix}}})]
18                                <div class="choix">
19                                        [(#LOGO_OPTION|image_reduire{240,200})]
20                                        <input data-prixoption="#GET{prix_option_seule}" type="radio" name="id_option#ID_OPTIONSGROUPE" class="radio"
21                                                   id="champ_id_option_[(#ID_OPTIONSGROUPE)]_[(#COMPTEUR_BOUCLE)]"
22                                                   [(#COMPTEUR_BOUCLE|=={1}|et{#ENV{#VAL{id_option}|concat{#ID_OPTIONSGROUPE}}|non})checked="checked"]
23                                                   [(#ID_OPTION|in_array{#GET{options}}|oui)checked="checked"] value="#ID_OPTION" />
24                                        <label for="champ_id_option_[(#ID_OPTIONSGROUPE)]_[(#COMPTEUR_BOUCLE)]">
25                                                #TITRE [(#PRIX_OPTION_OBJET|=={0}|non) [(#GET{prix_option}|>{#GET{prix}}|oui)+][(#GET{prix_option}|<{#GET{prix}}|oui)-][(#GET{prix_option}|moins{#GET{prix}}|prix_formater)] ]
26                                                [<span class="description_option">(#DESCRIPTION|propre|PtoBR)</span>]
27                                        </label>
28                                </div>
29                                </BOUCLE_radio>
30                        </div>
31                </B_radio>
32                </BOUCLE_optionsgroupes>
33
34                <p class="prix_objet">
35                        <strong><span class="js-prix_objet_valeur">[(#GET{prix}|prix_formater)]</span></strong>
36                </p>
37
38                <div class="editer">
39                        <label for="quantite"><:options:quantite:/></label>
40                        <input id="quantite" name="quantite" type="text" value="1">
41                </div>
42
43                <button type="submit" class="ajouter-panier">
44                        <:options:ajouter_au_panier:/>
45                </button>
46               
47        </form>
48</div>
Note: See TracBrowser for help on using the repository browser.