/** * @param Feedback $feedback * @Route("/{id}", name="admin_feedback_show", requirements={"id": "\d+"}) * @return \Symfony\Component\HttpFoundation\Response */ public function showAction(Feedback $feedback) { if ($feedback->getStatus() == false) { $feedback->setStatus(true); } $em = $this->getDoctrine()->getManager(); $em->flush(); return $this->render('@App/Admin/Feedback/show.html.twig', ['feedback' => $feedback]); }
/** * * @Route("/feedback", name="feedback") */ public function feedbackAction(Request $request) { $feedback = new Feedback(); if ($this->get('security.context')->isGranted('IS_AUTHENTICATED_REMEMBERED')) { $user = $this->getUser(); $feedback->setName(sprintf("%s %s", $user->getName(), $user->getSurname())); $feedback->setEmail($user->getEmail()); } $form = $this->createFormBuilder($feedback)->add('name', 'text', array('constraints' => array(new NotBlank(), new Length(array('max' => 100)))))->add('email', 'email', array('constraints' => array(new NotBlank(), new Length(array('max' => 100)))))->add('subject', 'text', array('constraints' => array(new NotBlank(), new Length(array('max' => 100)))))->add('message', 'textarea', array('constraints' => array(new NotBlank(), new Length(array('max' => 1000)))))->getForm(); //when the form is posted this method prefills entity with data from form $form->handleRequest($request); if ($form->isValid()) { $em = $this->getDoctrine()->getManager(); // save to db $em->persist($feedback); $em->flush(); return $this->userFeedbackSavedAction(); } return $this->render('common/feedback.html.twig', array('form' => $form->createView())); }
/** * @Route("/{doctor}/feedbackAdd") */ public function feedbackAddAction(Request $request, UserDoctor $doctor) { $em = $this->getDoctrine()->getManager(); $feedback = new Feedback(); $feedback->setComment($request->request->get('comment')); $feedback->setCreated(new \DateTime()); $feedback->setUpdated(new \DateTime()); $feedback->setDoctor($doctor); $feedback->setClient($em->getRepository('AppBundle:UserClient')->find($request->request->get('client'))); $em->persist($feedback); $em->flush(); return new JsonResponse($feedback); }
/** * @Route("/feedback/post", name="feedback") */ public function feedbackSendAction(Request $request) { if ($request->isMethod('POST')) { $feedback = new Feedback(); $user = $this->getUser(); $feedback->setReporter($user); $feedback->setUrl($request->request->get("url")); $feedback->setReport($request->request->get("body") . "\n\n" . $_SERVER['REMOTE_ADDR'] . "\n\n" . $_SERVER['HTTP_USER_AGENT']); $feedback->setState(Feedback::REPORTED); $feedback->setReportdate(new \DateTime("now")); $em = $this->getDoctrine()->getManager(); $em->persist($feedback); $em->flush(); } return $this->redirect($request->server->get('HTTP_REFERER')); }
/** * @param Order $id * @param Request $request * @return \Symfony\Component\HttpFoundation\RedirectResponse * @Route("/feedback/{id}", name="user_feedback", requirements={"id": "\d+"}) * @Method("POST") */ public function feedbackAction(Order $id, Request $request) { $em = $this->getDoctrine()->getManager(); $feedback = new Feedback(); $feedback->setStatus(false); $feedback->setOrder($id); $feedback->setUser($this->getUser()); $requestText = $request->request->get('feedback'); $feedback->setText($requestText['text']); $em->persist($feedback); $em->flush(); return $this->redirectToRoute('user_orders'); }
/** * Ajax action to create a new Feedback entity. * * @Route("/post", name="app_feedback_post") * @Method("POST") */ public function postAction(Request $request) { $requestContent = $request->getContent(); $postedData = json_decode($requestContent); $routeStr = $postedData->routeStr; $topicStr = $postedData->topicStr; $contentStr = $postedData->contentStr; $feedbackEntry = new Feedback(); $feedbackEntry->setTopic($topicStr); $feedbackEntry->setContent($contentStr); $feedbackEntry->setRoute($routeStr); $feedbackEntry->setStatus(3); $em = $this->getDoctrine()->getManager(); $em->persist($feedbackEntry); $em->flush(); $response = new JsonResponse(); $response->setData(array('fullDataObj' => $postedData)); return $response; }