/** * @Route("/mark/{postSlug}/new", name = "mark_new") * @Method("POST") * @ParamConverter("post", options={"mapping": {"postSlug": "slug"}}) */ public function markNewAction(Post $post, Request $request) { $form = $this->createForm(MarkType::class); $form->handleRequest($request); if ($form->isSubmitted() && $form->isValid()) { $mark = $form->getData(); $entityManager = $this->getDoctrine()->getManager(); $post->addMark($mark['mark']); $entityManager->flush(); return $this->redirectToRoute('blog_post', array('slug' => $post->getSlug())); } return $this->render('blog/_mark_form.html.twig', array('post' => $post, 'form' => $form->createView())); }
public function publishOnPage(Post $post, $message = null) { $response = new FacebookPostAsPageResponse(); $accessToken = $this->getUserLongAccessToken(); if (!$post->getPublished()) { return $response->setException(new \Exception('flash_batch_facebook_post_not_published')); } if ($accessToken->tokenIsEmpty()) { return $response->setException(new \Exception('flash_batch_facebook_access_token_empty')); } $this->application->setDefaultAccessToken($accessToken->getAccessToken()); try { $getPageAccessToken = $this->application->sendRequest('GET', '/' . $this->pageId, array('fields' => 'access_token'))->getDecodedBody(); $params = array('message' => null !== $message ? $message : '', 'name' => $post->getTitle(), 'caption' => $post->getDescription(), 'link' => $this->router->generate('front_article_view', array('slug' => $post->getSlug()), true)); if (count($post->getImages()) > 0) { $hompage = $this->router->generate('homepage', array(), true); $imgWebPath = $this->assetsHelper->getUrl($post->getPreviewImage()->getWebPath()); $params['picture'] = $hompage . $imgWebPath; } $endPoint = null === $post->getFbId() ? $this->pageId . '/feed' : $post->getFbId(); $postAsPage = $this->application->post('/' . $endPoint, $params, $getPageAccessToken['access_token'])->getDecodedBody(); $response->setId(isset($postAsPage['id']) ? $postAsPage['id'] : $post->getFbId()); } catch (\Exception $e) { return $response->setException($e); } return $response; }
public function deleteCommentAction(Request $request, Post $post, PostComment $comment) { $form = $this->createFormBuilder()->add('Supprimer', SubmitType::class)->getForm(); $test = "non valide"; if ($request->getMethod() == 'POST') { $test = "post"; $form->bind($request); if ($form->isValid()) { $test = "valide"; $em = $this->getDoctrine()->getManager(); $em->remove($comment); $em->flush(); $flash = $this->get('braincrafted_bootstrap.flash'); $flash->info('Le commentaire a bien été supprimé.'); $url = $this->generateUrl("blog_show", array('slug' => $post->getSlug())); return $this->redirect($url . '#comments'); } } return $this->render('blog/delete_comment.html.twig', array('form' => $form->createView(), 'test' => $test)); }
private function createDeleteForm(Post $post) { return $this->createFormBuilder()->setAction($this->generateUrl('admin_post_delete', array('slug' => $post->getSlug())))->setMethod('DELETE')->getForm(); }
/** * {@inheritDoc} */ public function getSlug() { $this->__initializer__ && $this->__initializer__->__invoke($this, 'getSlug', []); return parent::getSlug(); }