Beispiel #1
0
 /**
  * @Route("/channel/playlist/{uniqID}/edit", name="oktothek_channel_playlist_edit")
  * @Template()
  */
 public function editPlaylistAction(Request $request, Playlist $playlist)
 {
     $this->denyAccessUnlessGranted('edit_channel', $playlist->getSeries());
     $form = $this->createForm(PlaylistUserType::class, $playlist);
     $form->add('submit', SubmitType::class, ['label' => 'oktothek.playlist_update_button', 'attr' => ['class' => 'btn btn-primary']]);
     $form->add('delete', SubmitType::class, ['label' => 'oktothek.playlist_delete_button', 'attr' => ['class' => 'btn btn-link']]);
     if ($request->getMethod() == "POST") {
         //sends form
         $form->handleRequest($request);
         if ($form->isValid()) {
             $em = $this->getDoctrine()->getManager();
             if ($form->get('submit')->isClicked()) {
                 // update post
                 $em->persist($playlist);
                 $em->flush();
                 $this->get('session')->getFlashBag()->add('success', 'oktothek.success_edit_playlist');
                 return $this->redirect($this->generateUrl('oktothek_channel_playlists', ['uniqID' => $playlist->getSeries()->getUniqID()]));
             } else {
                 // delete playlist
                 $em->remove($playlist);
                 $em->flush();
                 $this->get('session')->getFlashBag()->add('success', 'oktothek.success_delete_playlist');
                 return $this->redirect($this->generateUrl('oktothek_channel_playlists', ['uniqID' => $playlist->getSeries()->getUniqID()]));
             }
         } else {
             $this->get('session')->getFlashBag()->add('error', 'oktothek.error_edit_playlist');
         }
     }
     return ['form' => $form->createView(), 'series' => $playlist->getSeries()];
 }