~theo-voisin/+junk/cnrs2

« back to all changes in this revision

Viewing changes to src/Tofsims/AdminBundle/Controller/AdminController.php

  • Committer: theo-voisin
  • Date: 2013-03-18 19:30:33 UTC
  • Revision ID: theo.voisin@gmail.com-20130318193033-0vp8vkufx4eqg0zy
Finalisation de l'administration molecule : ajout des fonctions de suppression/ajout ; Correction des bugs levant les exceptions en cas de recherche de spectre ne retournant aucun resultat

Show diffs side-by-side

added added

removed removed

Lines of Context:
125
125
                return $this->render('TofsimsAdminBundle:Admin:alerte_modif_new.html.twig',array('form' => $form->createView(),));                      
126
126
        }
127
127
        
 
128
 
 
129
        /* /////////////////////////////////////////////////// */
 
130
        /*           Gestion des Mol�cules                     */
 
131
        /* /////////////////////////////////////////////////// */
 
132
        
 
133
        public function bestIdR($liste_molecule){
 
134
                $id=0;
 
135
                foreach($liste_molecule as $molecule){
 
136
                        if($molecule->getIdR()>$id){
 
137
                                $id=$molecule->getIdR();
 
138
                        }
 
139
                }
 
140
                $id+=1;
 
141
                return $id;
 
142
 
 
143
        }
 
144
 
 
145
 
 
146
 
 
147
        public function recupIdR($id_molecule, $liste_molecule){
 
148
                foreach($liste_molecule as $current){
 
149
                        if($current->getIdR()==$id_molecule){
 
150
                                return $current;
 
151
                        }
 
152
                }
 
153
        }
 
154
 
 
155
 
 
156
 
 
157
        public function admin_spectreAction(){
 
158
                return $this->render('TofsimsAdminBundle:Admin:spectre.html.twig');
 
159
        }
 
160
 
 
161
 
 
162
 
 
163
        //Gestion des mol�cules:
 
164
 
 
165
        //Affichage de la liste des mol�cules
 
166
        public function admin_liste_moleculesAction(){
 
167
                //Recuperation de la liste des mol�cules
 
168
                $repository= $this->getDoctrine()->getManager()->getRepository('TofsimsTofsimsBundle:Molecule');
 
169
                $liste_molecules=$repository->findAll();
 
170
 
 
171
                return $this->render('TofsimsAdminBundle:Admin:liste_molecules.html.twig', array('liste_molecules'=>$liste_molecules));
 
172
        }
 
173
 
 
174
        //Modification d'une mol�cule
 
175
        public function admin_molecule_modifAction($id_molecule){
 
176
                // Recup�ration de l'ancien objet
 
177
                $repository = $this->getDoctrine()->getManager()->getRepository('TofsimsTofsimsBundle:Molecule');
 
178
                $liste_molecule = $repository->findAll();
 
179
                $ancienne_molecule= $this->recupIdR($id_molecule, $liste_molecule);                     
 
180
                
 
181
                // Creation du formulaire
 
182
                $molecule = new Molecule();     
 
183
                $molecule->setNom($ancienne_molecule->getNom()); 
 
184
                $molecule->setFormule($ancienne_molecule->getFormule());
 
185
                $molecule->setIdR($ancienne_molecule->getIdR());        
 
186
                $formBuilder = $this->createFormBuilder($molecule);             
 
187
                $formBuilder->add('Nom', 'text')
 
188
                                        ->add('Formule', 'text');                                               
 
189
                $form = $formBuilder->getForm();                
 
190
        
 
191
                // Traitement de la r�ponse
 
192
                $request = $this->get('request');
 
193
                if ($request->getMethod() == 'POST') {          
 
194
                        $form->bind($request);
 
195
                
 
196
                        if ($form->isValid()) {         
 
197
                                $em = $this->getDoctrine()->getManager();
 
198
                                $em->remove($ancienne_molecule);
 
199
                                $em->persist($molecule);
 
200
                                $em->flush();
 
201
                                return $this->redirect($this->generateUrl('tofsims_admin_spectre_liste_molecules'));
 
202
                        }
 
203
                }
 
204
                return $this->render('TofsimsAdminBundle:Admin:molecule_modif_new.html.twig',array('form' => $form->createView(),));
 
205
        }
 
206
        
 
207
 
 
208
        /*
 
209
                Proc�dure de suppression d'une mol�cule Sans msg de confirmation pour l'instant !
 
210
        */      
 
211
        public function admin_molecule_supprAction($id_molecule){               
 
212
        
 
213
                //Recuperation de l'alerte a supprimer
 
214
                $repository = $this->getDoctrine()->getManager()->getRepository('TofsimsTofsimsBundle:Molecule');
 
215
                $liste_molecule = $repository->findAll();
 
216
                $molecule=$this->recupIdR($id_molecule, $liste_molecule);
 
217
 
 
218
        
 
219
                //Suppression de l'alerte
 
220
                $em = $this->getDoctrine()->getManager();
 
221
                $em->remove($molecule);
 
222
                $em->flush();
 
223
                
 
224
                return $this->redirect($this->generateUrl('tofsims_admin_spectre_liste_molecules'));    
 
225
        }
 
226
 
 
227
 
 
228
        /*
 
229
                Procedure d'ajout d'une mol�cule
 
230
        */
 
231
        public function admin_molecule_newAction(){
 
232
                
 
233
                                
 
234
                // Creation du formulaire
 
235
                $molecule = new Molecule();
 
236
 
 
237
                //Calcul du meilleur id pour la nouvelle mol�cule
 
238
                $repository = $this->getDoctrine()->getManager()->getRepository('TofsimsTofsimsBundle:Molecule');
 
239
                $liste_molecule = $repository->findAll();
 
240
                $molecule->setIdR($this->bestIdR($liste_molecule));
 
241
 
 
242
                $formBuilder = $this->createFormBuilder($molecule);             
 
243
                $formBuilder->add('Nom', 'text')
 
244
                                        ->add('Formule', 'text');                                               
 
245
                $form = $formBuilder->getForm();        
 
246
        
 
247
                // Traitement de la reponse
 
248
                $request = $this->get('request');
 
249
                if ($request->getMethod() == 'POST') {          
 
250
                        $form->bind($request);
 
251
                
 
252
                        if ($form->isValid()) {         
 
253
                                $em = $this->getDoctrine()->getManager();
 
254
                                $em->persist($molecule);                                
 
255
                                $em->flush();
 
256
                                return $this->redirect($this->generateUrl('tofsims_admin_spectre_liste_molecules'));
 
257
                        }
 
258
                }
 
259
                return $this->render('TofsimsAdminBundle:Admin:molecule_modif_new.html.twig',array('form' => $form->createView(),));                    
 
260
        }
 
261
 
 
262
 
 
263
 
 
264
 
 
265
 
 
266
        
128
267
        
129
268
        
130
269
        
342
481
        
343
482
        
344
483
        
345
 
        /* /////////////////////////////////////////////////// */
346
 
        /*          Gestions des spectres/Mol�cules/Infos      */
347
 
        /* /////////////////////////////////////////////////// */
348
 
        
349
 
        public function admin_spectreAction(){
350
 
                return $this->render('TofsimsAdminBundle:Admin:spectre.html.twig');
351
 
        }
352
 
 
353
 
 
354
 
 
355
 
        //Gestion des mol�cules:
356
 
 
357
 
        //Affichage de la liste des mol�cules
358
 
        public function admin_liste_moleculesAction(){
359
 
                //Recuperation de la liste des mol�cules
360
 
                $repository= $this->getDoctrine()->getManager()->getRepository('TofsimsTofsimsBundle:Molecule');
361
 
                $liste_molecules=$repository->findAll();
362
 
 
363
 
                return $this->render('TofsimsAdminBundle:Admin:liste_molecules.html.twig', array('liste_molecules'=>$liste_molecules));
364
 
        }
365
 
 
366
 
        //Modification d'une mol�cule
367
 
        public function admin_molecule_modifAction($id_molecule){
368
 
                // Recup�ration de l'ancien objet
369
 
                $repository = $this->getDoctrine()->getManager()->getRepository('TofsimsTofsimsBundle:Molecule');
370
 
                $ancienne_molecule = $repository->find($id_molecule);                   
371
 
                
372
 
                // Creation du formulaire
373
 
                $molecule = new Molecule();     
374
 
                $molecule->setNom($ancienne_molecule->getNom()); 
375
 
                $molecule->setFormule($ancienne_molecule->getFormule());
376
 
                $molecule->setIdR($ancienne_molecule->getIdR());        
377
 
                $formBuilder = $this->createFormBuilder($molecule);             
378
 
                $formBuilder->add('Nom', 'text')
379
 
                                        ->add('Formule', 'text');                                               
380
 
                $form = $formBuilder->getForm();                
381
 
        
382
 
                // Traitement de la r�ponse
383
 
                $request = $this->get('request');
384
 
                if ($request->getMethod() == 'POST') {          
385
 
                        $form->bind($request);
386
 
                
387
 
                        if ($form->isValid()) {         
388
 
                                $em = $this->getDoctrine()->getManager();
389
 
                                $em->remove($ancienne_molecule);
390
 
                                $em->persist($molecule);
391
 
                                $em->flush();
392
 
                                return $this->redirect($this->generateUrl('tofsims_admin_spectre_liste_molecules'));
393
 
                        }
394
 
                }
395
 
                return $this->render('TofsimsAdminBundle:Admin:molecule_modif_new.html.twig',array('form' => $form->createView(),));
396
 
        }
397
484
        
398
485
        
399
486
        /////////////////////////////////////////////////////////////////////////////////////////////////////