package fi.otavanopisto.muikku.controller; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import javax.enterprise.context.RequestScoped; import javax.inject.Inject; import javax.inject.Named; import fi.otavanopisto.muikku.model.widgets.LocatedWidget; import fi.otavanopisto.muikku.model.widgets.WidgetVisibility; import fi.otavanopisto.muikku.session.SessionController; @Named @RequestScoped public class WidgetsBackingBean { @Inject private SessionController sessionController; @Inject private WidgetController widgetController; public List<LocatedWidget> getWidgets(String location) { List<LocatedWidget> result = new ArrayList<>(); boolean loggedIn = sessionController.isLoggedIn(); if (loggedIn) { result.addAll(widgetController.listWidgetSpaceUserWidgets(location, sessionController.getLoggedUserEntity())); } if (result.isEmpty()) { if (loggedIn) { result.addAll(widgetController.listWidgetSpaceDefaultWidgetsByVisibilities(location, Arrays.asList(WidgetVisibility.EVERYONE, WidgetVisibility.AUTHENTICATED))); } else { result.addAll(widgetController.listWidgetSpaceDefaultWidgetsByVisibilities(location, Arrays.asList(WidgetVisibility.EVERYONE, WidgetVisibility.UNAUTHENTICATED))); } } // TODO PK: widget order? return result; } }