コード例 #1
0
 private function TryPageLoad($currentUser)
 {
     $fileId = $this->page->GetFileId();
     $referenceNumber = $this->page->GetReferenceNumber();
     Log::Debug('Trying to load reservation attachment. FileId: %s, ReferenceNumber %s', $fileId, $referenceNumber);
     $attachment = $this->reservationRepository->LoadReservationAttachment($fileId);
     if ($attachment == null) {
         Log::Error('Error loading resource attachment, attachment not found');
         return false;
     }
     $reservation = $this->reservationRepository->LoadByReferenceNumber($referenceNumber);
     if ($reservation == null) {
         Log::Error('Error loading resource attachment, reservation not found');
         return false;
     }
     if ($reservation->SeriesId() != $attachment->SeriesId()) {
         Log::Error('Error loading resource attachment, attachment not associated with reservation');
         return false;
     }
     if (!$this->permissionService->CanAccessResource(new ReservationResource($reservation->ResourceId()), $currentUser)) {
         Log::Error('Error loading resource attachment, insufficient permissions');
         return false;
     }
     return $attachment;
 }