public IAuthorizationContext GetAuthorizationContext() { var authorizationContext = new AuthorizationContext(); var accountLegalEntityId = GetAccountLegalEntityId(); var cohortId = GetCohortId(); var draftApprenticeshipId = GetDraftApprenticeshipId(); var apprenticeshipId = GetApprenticeshipId(); var services = GetServices(); var ukprn = GetUkrpn(); var userEmail = GetUserEmail(); if (cohortId != null) { authorizationContext.Set(AuthorizationContextKeys.CohortId, cohortId); } if (draftApprenticeshipId != null) { authorizationContext.Set(AuthorizationContextKeys.DraftApprenticeshipId, draftApprenticeshipId); } if (apprenticeshipId != null) { authorizationContext.Set(AuthorizationContextKeys.ApprenticeshipId, apprenticeshipId); if (ukprn != null) { authorizationContext.AddApprenticeshipPermissionValues(apprenticeshipId.Value, Party.Provider, ukprn.Value); } } if (services != null) { authorizationContext.Set(AuthorizationContextKeys.Services, services); } if (ukprn != null && userEmail != null) { authorizationContext.AddProviderFeatureValues(ukprn.Value, userEmail); } if (accountLegalEntityId != null && ukprn != null) { authorizationContext.AddProviderPermissionValues(accountLegalEntityId.Value, ukprn.Value); } if (cohortId != null && ukprn != null) { authorizationContext.AddCommitmentPermissionValues(cohortId.Value, Party.Provider, ukprn.Value); } return(authorizationContext); }
public IAuthorizationContext GetAuthorizationContext() { var authorizationContext = new AuthorizationContext(); var accountId = GetAccountId(); var cohortId = GetCohortId(); var userRef = GetUserRef(); var apprenticeshipId = GetApprenticeshipId(); 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, GetTransferRequestId(), AuthorizationContextKeys.TransferRequestId); CopyRouteValueToAuthorizationContextIfAvailable(authorizationContext, apprenticeshipId, AuthorizationContextKeys.ApprenticeshipId); CopyRouteValueToAuthorizationContextIfAvailable(authorizationContext, GetPledgeApplicationId(), AuthorizationContextKeys.PledgeApplicationId); if (accountId.HasValue) { if (userRef.HasValue) { authorizationContext.AddEmployerUserRoleValues(accountId.Value, userRef.Value); } if (cohortId.HasValue) { authorizationContext.AddCommitmentPermissionValues(cohortId.Value, Party.Employer, accountId.Value); } if (apprenticeshipId.HasValue) { authorizationContext.AddApprenticeshipPermissionValues(apprenticeshipId.Value, Party.Employer, accountId.Value); } } return(authorizationContext); }