Subversion Repositories bacoAlunos

Rev

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

package pt.estgp.estgweb.web.form.questionarios;

import org.apache.log4j.Logger;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionMapping;
import pt.estgp.estgweb.domain.DomainObjectFactory;
import pt.estgp.estgweb.domain.QuestionarioImpl;
import pt.estgp.estgweb.domain.QuestionarioPedagogicoCursoAfeto;
import pt.estgp.estgweb.domain.QuestionarioPedagogicoCursoAfetoImpl;
import pt.estgp.estgweb.utils.DynamicArrayList;
import pt.estgp.estgweb.web.form.ApplicationForm;

import javax.servlet.http.HttpServletRequest;
import java.util.List;


/**
 * @author Jorge Machado
 * @date 25/Jun/2008
 * @see pt.estgp.estgweb.web.form.courses
 */

public class QuestionarioForm extends ApplicationForm
{

    private static final 1.5.0/docs/api/java/util/logging/Logger.html">Logger logger = 1.5.0/docs/api/java/util/logging/Logger.html">Logger.getLogger(QuestionarioForm.class);

    private 1.5.0/docs/api/java/lang/String.html">String dispatch;

    private QuestionarioImpl questionario;


    private boolean showQuestionarioForm = false;

    private 1.5.0/docs/api/java/lang/String.html">String[] coursesSelectedIds;

    public 1.5.0/docs/api/java/lang/String.html">String[] getCoursesSelectedIds() {
        return coursesSelectedIds;
    }

    public void setCoursesSelectedIds(1.5.0/docs/api/java/lang/String.html">String[] coursesSelectedIds) {
        this.coursesSelectedIds = coursesSelectedIds;
    }

    public boolean isShowQuestionarioForm() {
        return showQuestionarioForm;
    }

    public void setShowQuestionarioForm(boolean showQuestionarioForm) {
        this.showQuestionarioForm = showQuestionarioForm;
    }

    public List<QuestionarioPedagogicoCursoAfeto> cursosAfetos = new DynamicArrayList<QuestionarioPedagogicoCursoAfeto>(QuestionarioPedagogicoCursoAfetoImpl.class);

    public List<QuestionarioPedagogicoCursoAfeto> getCursosAfetos()
    {
        return cursosAfetos;
    }

    public void setCursosAfetos(List<QuestionarioPedagogicoCursoAfeto> cursosAfetos) {
        this.cursosAfetos = cursosAfetos;
    }

    public QuestionarioForm()
    {

    }

    public QuestionarioImpl getQuestionario() {
        if(questionario == null)
        {
            questionario = DomainObjectFactory.createQuestionarioImpl();
            questionario.setQuestionarioHistoryDrive(DomainObjectFactory.createQuestionarioHistoryDriveImpl());
        }
        return questionario;
    }

    public void setQuestionario(QuestionarioImpl questionario) {
        this.questionario = questionario;
    }

    public 1.5.0/docs/api/java/lang/String.html">String getOp() {
        return dispatch;
    }

    public void setOp(1.5.0/docs/api/java/lang/String.html">String dispatch) {
        this.dispatch = dispatch;
    }

    @1.5.0/docs/api/java/lang/Override.html">Override
    public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) {
        ActionErrors errors = new ActionErrors();
        /*if(getQuestionario().getYear() == null || getQuestionario().getYear().trim().length() == 0)
        {
            addMessageWithKeys(errors,request,"errors.required","course.importYear");
        }
        if(getQuestionario().getSemestre() == null || getQuestionario().getSemestre().trim().length() == 0)
        {
            addMessageWithKeys(errors,request,"errors.required","courseunit.semestre");
        }*/


        if(getQuestionario().getQuestionarioHistoryDrive().getId() <= 0)
        {
            addMessageWithKeys(errors,request,"errors.required","questionario.historydrive");
        }
        if(getQuestionario().getiAnswersProcessor() == null || getQuestionario().getiAnswersProcessor().trim()
                .length() == 0)
        {
            addMessageWithKeys(errors,request,"errors.required","questionario.answerprocessor");
        }
        try {
            for(int i = 1; i <= 30; i++)
            {
                1.5.0/docs/api/java/lang/String.html">String p = (1.5.0/docs/api/java/lang/String.html">String) questionario.getClass().getMethod("getP" + i).invoke(questionario);
                1.5.0/docs/api/java/lang/String.html">String group = (1.5.0/docs/api/java/lang/String.html">String) questionario.getClass().getMethod("getP" + i + "Group").invoke(questionario);
                if(p != null && p.trim().length() > 0 && (group == null||group.trim().length() == 0))
                {
                    addMessage(errors,request,"error.questionario.p.without.group","" + i);
                }
                else if(group != null && group.trim().length() > 0 && (p == null || p.trim().length() == 0))
                {
                    addMessage(errors,request,"error.questionario.group.without.p","" + i);
                }

            }
        } catch (1.5.0/docs/api/java/lang/Exception.html">Exception e) {
            logger.error(e, e);
            addMessage(errors,request,"error.500");
        }
        if(errors.size() > 0)
            showQuestionarioForm = true;
        return errors;
    }

    public ActionErrors validateYearSemestre(ActionMapping mapping, HttpServletRequest request) {
        ActionErrors errors = new ActionErrors();
        if(getQuestionario().getYear() == null || getQuestionario().getYear().trim().length() == 0)
        {
            addMessageWithKeys(errors,request,"errors.required","course.importYear");
        }
        if(getQuestionario().getSemestre() == null || getQuestionario().getSemestre().trim().length() == 0)
        {
            addMessageWithKeys(errors,request,"errors.required","courseunit.semestre");
        }
        return errors;
    }


}