public boolean isUserAdminOfGroup(final CaseInsensitiveString userName, PipelineConfigs group) { return group != null && group.isUserAnAdmin(userName, rolesForUser(userName)); }
public List<PipelineConfig> getAllPipelineConfigsForEditForUser(Username username) { ArrayList<PipelineConfig> pipelineConfigs = new ArrayList<>(); List<String> groupsForUser = getConfigForEditing().getGroupsForUser(username.getUsername(), rolesForUser(username.getUsername())); for (String groupName : groupsForUser) { pipelineConfigs.addAll(getAllPipelinesForEditInGroup(groupName).getPipelines()); } return pipelineConfigs; }
public List<TemplateToPipelines> getTemplatesList(Username username) { List<TemplateToPipelines> templateToPipelinesForUser = new ArrayList<>(); List<Role> roles = goConfigService.rolesForUser(username.getUsername()); Map<CaseInsensitiveString, Map<CaseInsensitiveString, Authorization>> allTemplatesAssociatedWithPipelines = goConfigService.getCurrentConfig().templatesWithAssociatedPipelines(); for (CaseInsensitiveString templateName : allTemplatesAssociatedWithPipelines.keySet()) { if (securityService.isAuthorizedToViewTemplate(templateName, username)) { Map<CaseInsensitiveString, Authorization> pipelinesWithAuthorization = allTemplatesAssociatedWithPipelines.get(templateName); TemplateToPipelines templateToPipelines = new TemplateToPipelines(templateName, securityService.isAuthorizedToEditTemplate(templateName, username), securityService.isUserAdmin(username)); templateToPipelinesForUser.add(templateToPipelines); for (CaseInsensitiveString pipelineName : pipelinesWithAuthorization.keySet()) { templateToPipelines.add(new PipelineEditabilityInfo(pipelineName, canAuthorizedTemplateUserEditPipeline(username, roles, pipelinesWithAuthorization.get(pipelineName)), goConfigService.isPipelineEditable(pipelineName))); } } } return templateToPipelinesForUser; }
private boolean isUserAGroupAdmin(PipelineConfigs group) { return group.getAuthorization().isUserAnAdmin(new CaseInsensitiveString(userName), goConfigService.rolesForUser(new CaseInsensitiveString(userName))); }
private List<UserModel> allUsersForDisplay() { Collection<User> users = allUsers(); ArrayList<UserModel> userModels = new ArrayList<>(); for (User user : users) { String userName = user.getName(); ArrayList<String> roles = new ArrayList<>(); for (Role role : goConfigService.rolesForUser(new CaseInsensitiveString(userName))) { roles.add(CaseInsensitiveString.str(role.getName())); } userModels.add(new UserModel(user, roles, securityService.isUserAdmin(new Username(new CaseInsensitiveString(userName))))); } return userModels; }
private boolean isUserTemplateAdmin(Username username) { return getCurrentConfig().getTemplates().canViewAndEditTemplate(username.getUsername(), rolesForUser(username.getUsername())); }