/* * _____________________________________________________________________________ * * INAF - OATS National Institute for Astrophysics - Astronomical Observatory of * Trieste INAF - IA2 Italian Center for Astronomical Archives * _____________________________________________________________________________ * * Copyright (C) 2016 Istituto Nazionale di Astrofisica * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License Version 3 as published by the * Free Software Foundation. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more * details. * * You should have received a copy of the GNU General Public License along with * this program; if not, write to the Free Software Foundation, Inc., 51 * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ package it.inaf.ia2.tsm.webapp.checker; import it.inaf.ia2.tsm.webapp.ConfigurationData; import it.inaf.ia2.tsm.webapp.xmlconfig.Configuration; import it.inaf.ia2.tsm.webapp.xmlconfig.UserConfiguration; import javax.enterprise.context.RequestScoped; import javax.faces.context.FacesContext; import javax.inject.Inject; import javax.inject.Named; /** * * @author Sonia Zorba {@literal } */ @Named @RequestScoped public class FirstSetupChecker { @Inject private ConfigurationData config; public boolean isFirstSetupCompleted() { Configuration c = config.getData(); for (UserConfiguration user : c.getUsers()) { if ("admin".equals(user.getRole())) { return true; } } return false; } public void checkFromIndex() { if (!isFirstSetupCompleted()) { FacesContext fc = FacesContext.getCurrentInstance(); fc.getApplication().getNavigationHandler().handleNavigation(fc, null, "/setup.xhtml?faces-redirect=true"); } } public void checkFromFirstSetup() { if (isFirstSetupCompleted()) { FacesContext fc = FacesContext.getCurrentInstance(); fc.getApplication().getNavigationHandler().handleNavigation(fc, null, "/index.xhtml?faces-redirect=true"); } } }