in app/util/Acl.scala [102:137]
def check(
hasCommercialPermissions: Authorization,
hasEditorialPermissions: Authorization,
hasTrainingPermissions: Authorization,
hasEmailPermissions: Authorization,
priorities: Set[PermissionsPriority]
): Authorization = {
val trainingPermissionIsValid = priorities.contains(TrainingPermission)
val editorialPermissionIsValid = priorities.contains(
EditorialPermission
) || priorities.contains(EmailPermission)
val commercialPermissionIsValid = priorities.contains(CommercialPermission)
val emailPermissionIsValid = priorities.contains(EmailPermission)
if (trainingPermissionIsValid)
hasTrainingPermissions
else {
if (editorialPermissionIsValid && commercialPermissionIsValid) {
if (
List(hasCommercialPermissions, hasEditorialPermissions).contains(
AccessGranted
)
) {
AccessGranted
} else
AccessDenied
} else if (commercialPermissionIsValid) {
hasCommercialPermissions
} else if (editorialPermissionIsValid)
hasEditorialPermissions
else if (emailPermissionIsValid) {
hasEmailPermissions
} else AccessDenied
}
}