Пример #1
0
 /**
  * @Route("/icap_blog/widget/blog/{id}/config", name="icap_blog_widget_blog_configure", requirements={"id" = "\d+"})
  * @Method("POST")
  */
 public function updateWidgetBlog(Request $request, WidgetInstance $widgetInstance)
 {
     if (!$this->get('security.authorization_checker')->isGranted('edit', $widgetInstance)) {
         throw new AccessDeniedException();
     }
     $resourceNode = $this->getWidgetManager()->getResourceNodeOfWidgetBlog($widgetInstance);
     $entityManager = $this->getDoctrine()->getManager();
     /** @var \icap\BlogBundle\Entity\WidgetBlog $widgetBlog */
     $widgetBlog = $entityManager->getRepository('IcapBlogBundle:WidgetBlog')->findOneByWidgetInstance($widgetInstance);
     if (null === $widgetBlog) {
         $widgetBlog = new WidgetBlog();
         $widgetBlog->setResourceNode($resourceNode)->setWidgetInstance($widgetInstance);
     }
     /** @var Form $form */
     $form = $this->get('form.factory')->create($this->get('icap_blog.form.widget_blog'), $widgetBlog);
     $form->handleRequest($request);
     if ($form->isValid()) {
         $entityManager->persist($widgetBlog);
         $entityManager->flush();
         return new Response('', Response::HTTP_NO_CONTENT);
     }
     return $this->render('IcapBlogBundle:widget:blogConfigure.html.twig', array('form' => $form->createView(), 'widgetInstance' => $widgetInstance));
 }
Пример #2
0
 /**
  * @DI\Observe("widget_blog_configuration")
  */
 public function onWidgetBlogConfigure(ConfigureWidgetEvent $event)
 {
     $widgetBlog = new WidgetBlog();
     $widgetBlog->setResourceNode($this->widgetManager->getResourceNodeOfWidgetBlog($event->getInstance()));
     $form = $this->formFactory->create($this->widgetBlogType, $widgetBlog);
     $content = $this->templatingEngine->render('IcapBlogBundle:widget:blogConfigure.html.twig', array('form' => $form->createView(), 'widgetInstance' => $event->getInstance()));
     $event->setContent($content);
 }