/** * Responder for event invite form */ public function inviteResponder() { $respondArray = array(); if (empty($_POST['eventId']) || empty($_POST['userIdList']) || !OW::getUser()->isAuthenticated()) { $respondArray['messageType'] = 'error'; $respondArray['message'] = '_ERROR_'; echo json_encode($respondArray); exit; } $idList = json_decode($_POST['userIdList']); if (empty($_POST['eventId']) || empty($idList)) { $respondArray['messageType'] = 'error'; $respondArray['message'] = '_EMPTY_EVENT_ID_'; echo json_encode($respondArray); exit; } $event = $this->eventService->findEvent($_POST['eventId']); if ($event->getEndTimeStamp() < time()) { throw new Redirect404Exception(); } if ($event === null) { $respondArray['messageType'] = 'error'; $respondArray['message'] = '_EMPTY_EVENT_'; echo json_encode($respondArray); exit; } if ((int) $event->getUserId() === OW::getUser()->getId() || (int) $event->getWhoCanInvite() === EVENT_BOL_EventService::CAN_INVITE_PARTICIPANT) { $count = 0; $userList = BOL_UserService::getInstance()->findUserListByIdList($idList); foreach ($userList as $user) { $userId = $user->id; $eventInvite = $this->eventService->findEventInvite($event->getId(), $userId); if ($eventInvite === null) { $eventInvite = $this->eventService->inviteUser($event->getId(), $userId, OW::getUser()->getId()); $eventObj = new OW_Event('event.invite_user', array('userId' => $userId, 'inviterId' => OW::getUser()->getId(), 'eventId' => $event->getId(), 'imageId' => $event->getImage(), 'eventTitle' => $event->getTitle(), 'eventDesc' => $event->getDescription(), 'displayInvitation' => $eventInvite->displayInvitation)); OW::getEventManager()->trigger($eventObj); $count++; } } } $respondArray['messageType'] = 'info'; $respondArray['message'] = OW::getLanguage()->text('event', 'users_invite_success_message', array('count' => $count)); exit(json_encode($respondArray)); }