public ResponseResource DeleteTermDefinition(IPrincipal principal, DeleteTermDefinitionRequest request) { var user = _dependencies.UserService.GetGuaranteedAuthenticatedUser(principal); var term = _dependencies.StorageService.SetOf <MembershipRuleTermDefinition>() .SingleOrDefault(t => t.Id == request.TermId); if (term == null) { throw new Exception("Term not found"); } var organisation = _dependencies.OrganisationService.GetOrganisation(term.OrganisationId); _dependencies.OrganisationService.GuaranteeUserHasPermission(user, organisation, ShurahOrganisationPermission.EditMembershipRules); _dependencies.StorageService.SetOf <MembershipRuleTermDefinition>().Remove(term); _dependencies.StorageService.SaveChanges(); return(new ResponseResource()); }
public HttpResponseMessage Post(DeleteTermDefinitionRequest request) { return(Request.CreateResponse(HttpStatusCode.OK, _service.DeleteTermDefinition(User, request))); }
public ResponseResource Post(DeleteTermDefinitionRequest request) { return(_service.DeleteTermDefinition(User, request)); }