package com.constellio.app.ui.pages.management; import java.util.List; import com.constellio.app.entities.navigation.NavigationItem; import com.constellio.app.ui.pages.base.BasePresenter; import com.constellio.model.entities.records.wrappers.User; public class AdminPresenter extends BasePresenter<AdminView> { public AdminPresenter(AdminView view) { super(view); } public List<NavigationItem> getSystemItems() { return navigationConfig().getNavigation(AdminView.SYSTEM_SECTION); } public List<NavigationItem> getCollectionItems() { return navigationConfig().getNavigation(AdminView.COLLECTION_SECTION); } public boolean isSystemSectionVisible() { return isAnyItemEnabled(getSystemItems()); } public boolean isCollectionSectionVisible() { return isAnyItemEnabled(getCollectionItems()); } @Override protected boolean hasPageAccess(String params, User user) { return isSystemSectionVisible() || isCollectionSectionVisible(); } private boolean isAnyItemEnabled(List<NavigationItem> items) { for (NavigationItem item : items) { if (getStateFor(item).isEnabled()) { return true; } } return false; } }