protected function dispatchLikeEvent(LikeAction $like) { $resource = $like->getResource(); if ($resource !== null) { $event = new LogSocialmediaLikeEvent($like); return $this->dispatch($event); } }
/** * @Route("/like", name="icap_socialmedia_like") * @Method({"POST"}) * @ParamConverter("user", options={"authenticatedUser" = true}) * * @param \Symfony\Component\HttpFoundation\Request $request * @param User $user * * @return bool */ public function likeAction(Request $request, User $user) { $like = new LikeAction(); $like->setUser($user); $like = $this->getLikeActionManager()->createLike($request, $like); $this->dispatchLikeEvent($like); $jsonResponse = new JsonResponse(true); return $jsonResponse; }
public function createLike(Request $request, LikeAction $like) { $resourceId = $request->get('resourceId'); if ($resourceId === null) { $url = $request->get('url'); $title = $request->get('title'); $like->setUrl($url); $like->setTitle($title); } else { $resourceNode = $this->resourceNodeRepository->find($resourceId); $like->setResource($resourceNode); } $this->em->persist($like); $this->wallItemManager->createWallItem($like); $this->em->flush(); return $like; }
public function __construct(LikeAction $like) { $this->details = array(); parent::__construct($like->getResource(), $this->details); }