source: spip-zone/_plugins_/panier_options/panier_options_pipelines.php @ 90561

Last change on this file since 90561 was 90561, checked in by toutati@…, 6 years ago

ajout obligatoire de include_spip('inc/config'); avec la dernière version du plugin paniers

  • Property svn:executable set to *
File size: 4.5 KB
Line 
1<?php
2 
3if (!defined("_ECRIRE_INC_VERSION")) return;
4
5/*
6 * Inserer des elements supplementaires
7 *
8 * @return $flux
9 */
10
11function panier_options_recuperer_fond($flux){
12       
13        // surcharge la configuration du panier
14        if ($flux['args']['fond'] == 'formulaires/configurer_paniers'){
15                include_spip('inc/config');
16                $flux['args']['contexte']['code_avantage']  = lire_config("paniers/panier_options/code_avantage"); 
17                $flux['args']['contexte']['pourcentage_avantage'] = lire_config("paniers/panier_options/pourcentage_avantage");
18             
19                $option_champ = recuperer_fond('formulaires/configurer_paniers_options', $flux['args']['contexte']);
20                $flux['data']['texte'] = str_replace('<!--extra-->', '<!--extra-->' . $option_champ, $flux['data']['texte']);                           
21        }
22       
23        // surcharge le formulaire du panier
24        if ($flux['args']['fond'] == 'formulaires/panier'){
25               
26                include_spip('inc/config');
27                $pourcentage_avantage = lire_config("paniers/panier_options/pourcentage_avantage");
28                $code_avantage = lire_config("paniers/panier_options/code_avantage"); 
29               
30                //seulement si l'option est configurée
31                if($pourcentage_avantage && $code_avantage){
32                        $flux['args']['contexte']['_pourcentage_avantage'] = $pourcentage_avantage;
33                        $code_valide=false;
34                       
35                        //est-ce que l'avantage est déjà validé ?
36                        if (!$id_panier) $id_panier = session_get('id_panier');
37                        $avantage_valide = sql_getfetsel('options','spip_paniers',array('id_panier = '.sql_quote($id_panier)));
38                        if($avantage_valide=="avantage_valide") $code_valide=true;
39                       
40                        //sinon tester si votre_code_avantage est le bon
41                        if($code_valide==false){
42                                $config_code_avantage = lire_config("paniers/panier_options/code_avantage");
43                                $request_code_avantage=_request('votre_code_avantage');
44                                if($request_code_avantage==$config_code_avantage)$code_valide=true;
45                        }
46                        if($code_valide){
47                                //afficher le formulaire avec l'avantage calculé
48                                $option_calculer = recuperer_fond('formulaires/avantage_calculer_total', $flux['args']['contexte']);
49                                $flux['data']['texte'] = preg_replace('%(<tr class="total_ttc(.*?)</tr>)%is', ' '."\n".$option_calculer, $flux['data']['texte']);
50                        }
51               
52                        //affiche le champ input votre_code_avantage
53                        $option_champ = recuperer_fond('formulaires/avantage_option_input', $flux['args']['contexte']);
54                        $flux['data']['texte'] = str_replace('</table>', '</table>' . $option_champ, $flux['data']['texte']);
55                }
56        }
57       
58
59        return $flux;
60}
61   
62function panier_options_formulaire_charger($flux){
63
64        if ($flux['args']['form'] == 'panier'){
65                $flux['data']['_forcer_request'] = true; // forcer la prise en compte du post
66        }
67        return $flux;
68}
69
70function panier_options_formulaire_verifier($flux){
71        if ($flux['args']['form'] == 'configurer_paniers'){
72                //verifier le intval   
73        }
74        if ($flux['args']['form'] == 'panier'){
75                include_spip('inc/config');
76                $code_valide=false;
77                $config_code_avantage = lire_config("paniers/panier_options/code_avantage");
78                $request_code_avantage=_request('votre_code_avantage');
79                if($request_code_avantage==$config_code_avantage){$code_valide=true;};
80               
81                if($request_code_avantage!='' && $code_valide==false){
82                        $flux['data']['votre_code_avantage']=_T('panier_options:code_avantage_invalide');       
83                }
84
85        }
86        return $flux;
87}
88
89function panier_options_formulaire_traiter($flux){
90               
91        if ($flux['args']['form'] == 'configurer_paniers'){
92                include_spip('inc/config');
93                $code_avantage  = _request("code_avantage"); 
94                $pourcentage_avantage = _request("pourcentage_avantage");
95                ecrire_config("paniers/panier_options/code_avantage",$code_avantage); 
96                ecrire_config("paniers/panier_options/pourcentage_avantage",$pourcentage_avantage);
97                               
98        }
99        if ($flux['args']['form'] == 'panier'){
100                include_spip('inc/config');
101                if (!$id_panier) $id_panier = session_get('id_panier');
102                //spip_log("dans formulaire_charger du panier".$id_panier,"formulaires_pipelines");
103                //tester si le code est bon
104                $code_valide=false;
105                $config_code_avantage = lire_config("paniers/panier_options/code_avantage");
106                $request_code_avantage=_request('votre_code_avantage');
107                if($request_code_avantage==$config_code_avantage){$code_valide=true;};
108                if($code_valide) {
109                        sql_updateq('spip_paniers',array('options'=>'avantage_valide'),'id_panier = '.$id_panier );
110                        $flux['data']['message_ok'] = _T('panier_options:panier_modifie_ok');
111                }
112       
113        }
114        return $flux;
115}
Note: See TracBrowser for help on using the repository browser.