コード例 #1
0
 /**
  * @EXT\Route(
  *     "/announcement/{announcement}/send/mail",
  *     name="claro_announcement_send_mail",
  *     options={"expose"=true}
  * )
  * @EXT\ParamConverter("user", converter="current_user")
  * @EXT\ParamConverter(
  *     "users",
  *      class="ClarolineCoreBundle:User",
  *      options={"multipleIds" = true, "name" = "usersIds"}
  * )
  *
  * Sends announcement by mail
  *
  * @return Response
  */
 public function announcementSendMailAction(Announcement $announcement, array $users)
 {
     $resource = $announcement->getAggregate();
     $this->checkAccess('EDIT', $resource);
     if (count($users) > 0) {
         $this->announcementManager->sendMail($announcement, $users);
     }
     return new JsonResponse('success', 200);
 }
コード例 #2
0
 public function sendMail(Announcement $announcement, $users = null)
 {
     $targets = is_null($users) ? $this->getUsersByResource($announcement->getAggregate()->getResourceNode(), 1) : $users;
     $workspace = $announcement->getAggregate()->getResourceNode()->getWorkspace();
     $title = '[' . $workspace->getCode() . '] ' . $announcement->getTitle();
     $content = $announcement->getContent() . '<br>[' . $workspace->getCode() . '] ' . $workspace->getName();
     $this->mailManager->send($title, $content, $targets, $announcement->getCreator());
 }