Subversion Repositories bacoAlunos

Rev

Rev 1586 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

package pt.estgp.estgweb.filters.filters;

import pt.estgp.estgweb.Globals;
import pt.estgp.estgweb.domain.QuestionarioReportFile;
import pt.estgp.estgweb.domain.QuestionarioReportFileGroup;
import pt.estgp.estgweb.domain.UserSession;
import pt.estgp.estgweb.domain.dao.DaoFactory;
import pt.estgp.estgweb.filters.chains.ResourceAccessControlFilter;

/**
 * @author Jorge Machado
 * @date 4/Jun/2008
 * @see pt.estgp.estgweb.filters.filters
 */

public class ResourceAccessControlQuestionariosReportAuthenticatedFilter extends ResourceAccessControlFilter
{
    public boolean canAccessResource(UserSession userSession, 1.5.0/docs/api/java/lang/String.html">String identifier)
    {
        if(userSession.getUser() != null)
        {
            QuestionarioReportFileGroup qGroup =
                    DaoFactory.getQuestionarioReportFileGroupDaoImpl().findByRepository(identifier);

            if(qGroup != null)
            {
                if(qGroup.isActive() || userSession.getUser().isSuperuserOrAdmin() || userSession.getUser().hasRole(Globals.QUESTIONARIOS_ADMIN))
                    return true;

            }
            else
            {
                QuestionarioReportFile qFile =
                        DaoFactory.getQuestionarioReportFileDaoImpl().findByRepository(identifier);
                if(qFile != null)
                {
                    if(qFile.isActive() || userSession.getUser().isSuperuserOrAdmin() || userSession.getUser().hasRole(Globals.QUESTIONARIOS_ADMIN))
                        return true;
                }
            }
        }
        return false;
    }
}