Ejemplo n.º 1
0
 /**
  * @param ReservationSeries $reservationSeries
  * @return void
  */
 public function Notify($reservationSeries)
 {
     $resourceAdmins = array();
     $applicationAdmins = array();
     $groupAdmins = array();
     if ($this->SendForResourceAdmins($reservationSeries)) {
         $resourceAdmins = $this->userViewRepo->GetResourceAdmins($reservationSeries->ResourceId());
     }
     if ($this->SendForApplicationAdmins($reservationSeries)) {
         $applicationAdmins = $this->userViewRepo->GetApplicationAdmins();
     }
     if ($this->SendForGroupAdmins($reservationSeries)) {
         $groupAdmins = $this->userViewRepo->GetGroupAdmins($reservationSeries->UserId());
     }
     $admins = array_merge($resourceAdmins, $applicationAdmins, $groupAdmins);
     if (count($admins) == 0) {
         // skip if there is nobody to send to
         return;
     }
     $owner = $this->userRepo->LoadById($reservationSeries->UserId());
     $resource = $reservationSeries->Resource();
     $adminIds = array();
     /** @var $admin UserDto */
     foreach ($admins as $admin) {
         $id = $admin->Id();
         if (array_key_exists($id, $adminIds) || $id == $owner->Id()) {
             // only send to each person once
             continue;
         }
         $adminIds[$id] = true;
         $message = $this->GetMessage($admin, $owner, $reservationSeries, $resource);
         ServiceLocator::GetEmailService()->Send($message);
     }
 }
 public function testUpdateValidatesExistingUsername()
 {
     $this->expectsAttributeValidator();
     $request = UpdateUserRequest::Example();
     $this->userRepository->expects($this->at(1))->method('UserExists')->with($this->isNull(), $this->equalTo($request->userName))->will($this->returnValue(2));
     $errors = $this->validator->ValidateUpdateRequest(1, $request);
     $this->assertTrue(count($errors) == 1);
 }
Ejemplo n.º 3
0
 public function DeleteUser($userId)
 {
     $user = $this->userRepository->LoadById($userId);
     $this->userRepository->DeleteById($userId);
     if (Configuration::Instance()->GetKey(ConfigKeys::REGISTRATION_NOTIFY, new BooleanConverter())) {
         $currentUser = ServiceLocator::GetServer()->GetUserSession();
         $applicationAdmins = $this->userViewRepository->GetApplicationAdmins();
         $groupAdmins = $this->userViewRepository->GetGroupAdmins($userId);
         foreach ($applicationAdmins as $applicationAdmin) {
             ServiceLocator::GetEmailService()->Send(new AccountDeletedEmail($user, $applicationAdmin, $currentUser));
         }
         foreach ($groupAdmins as $groupAdmin) {
             ServiceLocator::GetEmailService()->Send(new AccountDeletedEmail($user, $groupAdmin, $currentUser));
         }
     }
 }