public IAuthorizationContext GetAuthorizationContext() { var authorizationContext = new AuthorizationContext(); var accountId = GetAccountId(); var cohortId = GetCohortId(); var userRef = GetUserRef(); CopyRouteValueToAuthorizationContextIfAvailable(authorizationContext, accountId, AuthorizationContextKeys.AccountId); CopyRouteValueToAuthorizationContextIfAvailable(authorizationContext, cohortId, AuthorizationContextKeys.CohortId); CopyRouteValueToAuthorizationContextIfAvailable(authorizationContext, GetAccountLegalEntityHashedId(), AuthorizationContextKeys.AccountLegalEntityId); CopyRouteValueToAuthorizationContextIfAvailable(authorizationContext, GetDraftApprenticeshipId(), AuthorizationContextKeys.DraftApprenticeshipId); CopyRouteValueToAuthorizationContextIfAvailable(authorizationContext, GetTransferSenderId(), AuthorizationContextKeys.DecodedTransferSenderId); CopyRouteValueToAuthorizationContextIfAvailable(authorizationContext, GetApprenticeshipId(), AuthorizationContextKeys.ApprenticeshipId); if (accountId.HasValue && userRef.HasValue) { authorizationContext.AddEmployerUserRoleValues(accountId.Value, userRef.Value); } if (accountId.HasValue && cohortId.HasValue) { authorizationContext.AddCommitmentPermissionValues(cohortId.Value, Party.Employer, accountId.Value); } return(authorizationContext); }
public IAuthorizationContext GetAuthorizationContext() { var authorizationContext = new AuthorizationContext(); var accountValues = GetAccountValues(); var userValues = GetUserValues(); authorizationContext.AddEmployerUserRoleValues(accountValues.Id, userValues.Ref); return(authorizationContext); }
public IAuthorizationContext GetAuthorizationContext() { var authorizationContext = new AuthorizationContext(); var accountValues = GetAccountValues(); var userValues = GetUserValues(); if (accountValues.Id.HasValue) { authorizationContext.AddEmployerUserRoleValues(accountValues.Id.Value, userValues.Ref.Value); } authorizationContext.AddEmployerFeatureValues(accountValues.Id, userValues.Email); return(authorizationContext); }