source: spip-zone/_squelettes_/galaxie_melusine/melusine/trunk/formulaires/melusine_boutons.php @ 87236

Last change on this file since 87236 was 87236, checked in by noemie-edith-so.bernard@…, 5 years ago

Module "Liste boutons" : correction Images en cas d'alignement (css) et correction de la réinitialisation du formulaire (styles)

  • Property svn:executable set to *
File size: 4.3 KB
Line 
1<?php 
2include_spip('inc/config');
3function formulaires_melusine_boutons_charger($id_noisette)
4{
5        $valeurs=array();
6        $valeurs['id_noisette'] = $id_noisette;
7    return $valeurs;
8}
9
10
11function formulaires_melusine_boutons_verifier()
12{
13        $erreurs = array();
14        // verifier que les champs obligatoires sont bien la :
15        //foreach(array('pos1','pos2','pos3','pos4','pos5') as $obligatoire)
16        //      if (!_request($obligatoire)) $erreurs[$obligatoire] = 'Ce champ est obligatoire';
17       
18        // verifier que si un email a été saisi, il est bien valide :
19        //include_spip('inc/filtres');
20        //if (_request('email') AND !email_valide(_request('email')))
21        //      $erreurs['email'] = 'Cet email n\'est pas valide';
22
23        if (count($erreurs))
24                $erreurs['message_erreur'] = 'Votre saisie contient des erreurs !';
25        return $erreurs;
26}
27
28function melusine_rassembler_boutons($i)
29{
30        $tab=array(intit,add,blanck,emplacement,boutonimage);
31
32        foreach($tab as $value)
33        {
34                $chemin='melusine_boutons/'.$i.'/'.$value;
35                $j=$i+1;
36                $chemin_bas='melusine_boutons/'.$j.'/'.$value;         
37                $pos_bas=lire_config($chemin_bas);
38                ecrire_config($chemin,$pos_bas);
39        }
40        $chemin_old='melusine_boutons/'.$j;
41        effacer_config($chemin_old);
42        $k=$j+1;
43        $test='melusine_boutons/'.$k;
44        if(lire_config($test))
45        {
46                melusine_rassembler_boutons($j);
47        };
48}
49
50
51function formulaires_melusine_boutons_traiter()
52{
53        include_spip('action/editer_objet');
54        $id_noisette=_request('id_noisette');
55        $params=unserialize(_request('parametres'));
56        $boutons=_request('bouton');
57        $action=_request('ok2');
58        $position=_request('position');
59        if (isset($_POST['ok'])) 
60        {       /* On récupère les valeurs du formulaire */
61                $params['style']=_request('style');
62                $params['voir_images']=_request('voir_images');
63                $params['voir_intitule']=_request('voir_intitule');
64                $params['col']=_request('col');
65        }
66        elseif (isset($_POST['reset'])) 
67        {       /* On initialise les valeurs du formulaire */
68                $params['style']="multibloc";
69                $params['voir_images']="oui";
70                $params['voir_intitule']="oui";
71                $params['col']="col-md-12";
72        }
73
74        $params['boutons']=$boutons;
75
76        if(strpos($position, "d")!== false )
77        {
78                $cle=intval(str_replace("d","",$position));
79                $suivant=$cle+1;
80                $bouton_suivant=$boutons[$suivant];
81                $bouton_actif=$boutons[$cle];
82                $boutons[$cle]=$bouton_suivant;
83                $boutons[$suivant]=$bouton_actif;
84                $params['boutons']=$boutons;   
85        }
86        if(strpos($position, "m")!== false )
87        {
88                $cle=intval(str_replace("m","",$position));
89                $precedent=$cle-1;
90                $bouton_precedent=$boutons[$precedent];
91                $bouton_actif=$boutons[$cle];
92                $boutons[$cle]=$bouton_precedent;
93                $boutons[$precedent]=$bouton_actif;
94                $params['boutons']=$boutons;
95        }
96        if(strpos($action, "update")!== false )
97        {
98                $cle=str_replace("update","",$action);
99                $nf="image".$cle;       
100                if(!empty($_FILES[$nf]['tmp_name']))
101                {
102                        $chemin='melusine_data/boutons/b'.$id_noisette.'/image';
103                        $nom_fichier= $_FILES[$nf]['tmp_name'];
104                        $chemin_destination_boutons="IMG/config/boutons";
105                        $chemin_destination_config="IMG/config";
106                        $nom_destination='IMG/config/boutons/'.$_FILES[$nf]['name'];
107                        $nom_destination0='IMG/config/boutons/'.$_FILES[$nf]['name'];
108                        if(!is_dir("$chemin_destination_boutons"))
109                        {
110                                if(!is_dir($chemin_destination_config))
111                                {
112                                        mkdir($chemin_destination_config,0777);
113                                }
114                                mkdir($chemin_destination_boutons,0777);
115                        };
116                        move_uploaded_file($nom_fichier, $nom_destination);
117                        $boutons[$cle]['image'] =$nom_destination0;
118                        $params['boutons']=$boutons;
119                }
120        }
121        if(strpos($position, "s")!== false )
122        {
123                $cle=intval(str_replace("s","",$position));
124                unset($boutons[$cle]);
125                $boutons=array_values($boutons);
126                $params['boutons']=$boutons;
127        }
128        if($action=="create")
129        {
130                $casiers=array('intitule','url','blanck','alt','class');
131                foreach($casiers as $casier)
132                {
133                        $param[$casier]='';
134                }
135                $param[intitule]='+++ nouveau bouton';
136                $params['boutons'][]=$param;                   
137        }
138        $set=array('parametres'=>serialize($params));
139        objet_modifier("noisette", $id_noisette, $set); 
140        if (isset($_POST['ok']) 
141                && $params['voir_images']=="non" 
142                && $params['voir_intitule']=="non") 
143        {
144                return array('message_erreur'=>'Image et intitul&eacute; ne peuvent pas
145                        &ecirc;tre masqu&eacute;s en m&ecirc;me temps');
146        }
147        elseif (isset($_POST['ok'])) 
148        {
149                return array('message_ok'=>'Saisie enregistr&eacute;e');
150        }
151}
152?>
Note: See TracBrowser for help on using the repository browser.