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

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

MODULE Liste de boutons : arrangement du CSS pour les différents affichages

  • 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['reset'])) 
60        {       /* On initialise les valeurs du formulaire */
61                $params['style']="multibloc";
62                $params['voir_images']="oui";
63                $params['voir_intitule']="oui";
64                $params['col']="col-md-12";
65        }
66        else 
67        {       /* On récupère les valeurs du formulaire */
68                $params['style']=_request('style');
69                $params['voir_images']=_request('voir_images');
70                $params['voir_intitule']=_request('voir_intitule');
71                $params['col']=_request('col');
72        }
73       
74
75        $params['boutons']=$boutons;
76
77        if(strpos($position, "d")!== false )
78        {
79                $cle=intval(str_replace("d","",$position));
80                $suivant=$cle+1;
81                $bouton_suivant=$boutons[$suivant];
82                $bouton_actif=$boutons[$cle];
83                $boutons[$cle]=$bouton_suivant;
84                $boutons[$suivant]=$bouton_actif;
85                $params['boutons']=$boutons;   
86        }
87        if(strpos($position, "m")!== false )
88        {
89                $cle=intval(str_replace("m","",$position));
90                $precedent=$cle-1;
91                $bouton_precedent=$boutons[$precedent];
92                $bouton_actif=$boutons[$cle];
93                $boutons[$cle]=$bouton_precedent;
94                $boutons[$precedent]=$bouton_actif;
95                $params['boutons']=$boutons;
96        }
97        if(strpos($action, "update")!== false )
98        {
99                $cle=str_replace("update","",$action);
100                $nf="image".$cle;       
101                if(!empty($_FILES[$nf]['tmp_name']))
102                {
103                        $chemin='melusine_data/boutons/b'.$id_noisette.'/image';
104                        $nom_fichier= $_FILES[$nf]['tmp_name'];
105                        $chemin_destination_boutons="IMG/config/boutons";
106                        $chemin_destination_config="IMG/config";
107                        $nom_destination='IMG/config/boutons/'.$_FILES[$nf]['name'];
108                        $nom_destination0='IMG/config/boutons/'.$_FILES[$nf]['name'];
109                        if(!is_dir("$chemin_destination_boutons"))
110                        {
111                                if(!is_dir($chemin_destination_config))
112                                {
113                                        mkdir($chemin_destination_config,0777);
114                                }
115                                mkdir($chemin_destination_boutons,0777);
116                        };
117                        move_uploaded_file($nom_fichier, $nom_destination);
118                        $boutons[$cle]['image'] =$nom_destination0;
119                        $params['boutons']=$boutons;
120                }
121        }
122        if(strpos($position, "s")!== false )
123        {
124                $cle=intval(str_replace("s","",$position));
125                unset($boutons[$cle]);
126                $boutons=array_values($boutons);
127                $params['boutons']=$boutons;
128        }
129        if($action=="create")
130        {
131                $casiers=array('intitule','url','blanck','alt','class');
132                foreach($casiers as $casier)
133                {
134                        $param[$casier]='';
135                }
136                $param[intitule]='+++ nouveau bouton';
137                $params['boutons'][]=$param;                   
138        }
139        $set=array('parametres'=>serialize($params));
140        objet_modifier("noisette", $id_noisette, $set); 
141        if (isset($_POST['ok']) 
142                && $params['voir_images']=="non" 
143                && $params['voir_intitule']=="non") 
144        {
145                return array('message_erreur'=>'Image et intitul&eacute; ne peuvent pas
146                        &ecirc;tre masqu&eacute;s en m&ecirc;me temps');
147        }
148        elseif (isset($_POST['ok'])) 
149        {
150                return array('message_ok'=>'Saisie enregistr&eacute;e');
151        }
152}
153?>
Note: See TracBrowser for help on using the repository browser.