public IActionResult GetEvent([FromRoute] int eventId) { try { if (HttpContext.Items["User"] == null) { throw new UnauthorizedException("Authorization failed!"); } User user = (User)HttpContext.Items["User"]; if (user.PermissionLevel < 2) { throw new ForbiddenException("You don't have high enough clearance for this operation!"); } if (user.OrganizationId != null && _persistence.GetEventOrgId(eventId) != user.OrganizationId) { throw new ForbiddenException("The requested Event is owned by a different organization!"); } Event temp = _persistence.GetEvent(eventId); temp.Equipments = _persistence.GetEquipments(eventId, null); return(StatusCode(200, temp)); } catch (UnauthorizedException e) { return(StatusCode(401, e.Message)); } catch (ForbiddenException e) { return(StatusCode(403, e.Message)); } catch (NotFoundException e) { return(StatusCode(404, e.Message)); } catch (ConflictException e) { return(StatusCode(409, e.Message)); } catch (Exception e) { return(StatusCode(500, e.Message)); } }