public virtual ResponseResource RemoveDelegatedPermission(IPrincipal principal, RemoveDelegatedPermissionRequest request) { var delegatedPermission = _dependencies.StorageService.SetOf <DelegatedPermission>() .SingleOrDefault(x => x.Id == request.DelegatedPermissionId); if (delegatedPermission == null) { throw new Exception("Access Denied"); } var member = GetGuaranteedMember(principal, delegatedPermission.Member.OrganisationId); if (member.Organisation.OrganisationLeader.LeaderMemberId != member.Id) { throw new Exception("Access Denied"); } _dependencies.StorageService.SetOf <DelegatedPermission>().Remove(delegatedPermission); _dependencies.StorageService.SaveChanges(); return(new ResponseResource()); }
public HttpResponseMessage PostRemoveDelegatedPermission(RemoveDelegatedPermissionRequest request) { return(Request.CreateResponse(HttpStatusCode.OK, _service.RemoveDelegatedPermission(User, request))); }
public ResponseResource PostRemoveDelegatedPermission([FromBody] RemoveDelegatedPermissionRequest request) { return(_service.RemoveDelegatedPermission(User, request)); }