chatController = $chatController; } public function contactarAjaxAction($id){ $user = $this->getUser(); if(!($user instanceof FinancialActor) && !($user instanceof Bso)){ throw new AccessDeniedHttpException(); } $em = $this->getDoctrine()->getManager(); $ge = $em->getReference(User::class, $id); if(!($ge instanceof Trainer)){ throw new AccessDeniedHttpException(); } $sala = new Sala(); $sala->addUser($user); $sala->addUser($ge); $sala->setDenominacion('Contacto'); $lastAccess = new SalaLastAccess(); $lastAccess->setSala($sala); $lastAccess->setUser($ge); $lastAccess->setLastAccess(new \DateTime("1970-01-01")); $em->persist($lastAccess); $sala->addSalaLastAccess($lastAccess); $em->persist($sala); $ge->addContacto($user); $user->addContacto($ge); $em->persist($ge); $em->persist($user); $em->flush(); $route = $this->generateUrl('admin_app_trainer_giveAccessToFiles', ['id'=> $user->getId()]); $message = "A financial actor would like to talk to you.
Give access to files"; $message = "A financial actor would like to talk to you.
Give access to files"; $this->chatController->publishMessage($message, $user, $sala); return new RedirectResponse($this->generateUrl('sonata_admin_dashboard')); return new JsonResponse("success", 200); } public function giveAccessToFilesAction($id){ if(!$this->isXmlHttpRequest()){ throw new AccessDeniedHttpException(); } $user = $this->getUser(); if(!($user instanceof GreenEntrepreneur)){ throw new AccessDeniedHttpException(); } $em = $this->getDoctrine()->getManager(); $fa = $em->getReference(User::class, $id); if(!($fa instanceof FinancialActor)){ throw new AccessDeniedHttpException(); } $user->addFinancial($fa); $em->persist($user); $em->flush(); $modalBody = "You have successfully shared your documents with ".$fa->getNombreCompleto(); $modalTitle = "Congratulations!!!"; return $this->renderWithExtraParams('listajaxactions/modal_content.html.twig', [ 'modalTitle' => $modalTitle, 'modalBody' => $modalBody, ], null); } }