Subversion Repositories bacoAlunos

Rev

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

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="pt.estgp.estgweb.domain.UserSessionImpl" %>
<%@ page import="pt.estgp.estgweb.web.UserSessionProxy" %>
<%@ page import="pt.estgp.estgweb.Globals" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="java.util.List" %>
<%@ page import="pt.estgp.estgweb.web.form.assessments.AssessmentsForm" %>
<%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/tlds/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/tlds/struts-nested.tld" prefix="nested" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
<%@ taglib uri="/WEB-INF/tlds/baco.tld" prefix="baco" %>

<jsp:useBean id="AssessmentsForm" type="pt.estgp.estgweb.web.form.assessments.AssessmentsForm" scope="request"/>
<jsp:useBean id="UserSession" type="pt.estgp.estgweb.domain.UserSession" scope="request"/>

<jomm:messages/>
<html:errors/>

<html:form action="/user/submitAssessmentResponseFromHome" enctype="multipart/form-data">
<input type="hidden" name="dispatch">
<html:hidden name="AssessmentsForm" property="assessmentView.id"/>
<html:hidden name="AssessmentsForm" property="assessmentResponseView.id"/>
<input type="hidden" name="questionsListSize" value="<%=((AssessmentsForm)request.getAttribute("AssessmentsForm")).getAssessmentView().getQuestions().size()%>">
<%  UserSessionImpl sess = (UserSessionImpl) UserSessionProxy.loadUserSession(request,response);
        int questionListSizeInt = ((AssessmentsForm)request.getAttribute("AssessmentsForm")).getAssessmentView().getQuestions().size();
        String questionListSize = String.valueOf(questionListSizeInt) ;
        sess.put("questionsListSize", (java.io.Serializable) questionListSize);
        sess.serialize(request,response);
        //adicionar a lista de nomes
        List<String> nomesSessao = (List<String>) sess.get("nomesSessao");
        if(nomesSessao==null)
        {
            nomesSessao = new ArrayList<String>();
        }
        nomesSessao.add("questionsListSize");
        sess.put("nomesSessao", (java.io.Serializable) nomesSessao);
        sess.serialize(request,response);
%>

<input type="hidden" name="horas" value="<%=AssessmentsForm.getAssessmentView().getTime().getHours()%>" id="horas"/>
<input type="hidden" name="minutos" value="<%=AssessmentsForm.getAssessmentView().getTime().getMinutes()%>" id="minutos"/>

<script language="Javascript">
var horasT = document.forms[0].horas.value;
var minutosT = document.forms[0].minutos.value;
var segundosT=0;
    function showRemaining() {
        segundosT--
        if(segundosT<0)
        {
            minutosT--;
            segundosT = 59;
            if(minutosT<0)
            {
                horasT--;
                minutosT=59;
                if(horasT<0)
                {
                    alert("O tempo da prova expirou!");
                    set(document.forms[0],'answer');
                    document.forms[0].submit();
                }
            }
        }
        document.getElementById('tempoFinal').innerHTML = horasT + ':';
        document.getElementById('tempoFinal').innerHTML += minutosT + ':';
        document.getElementById('tempoFinal').innerHTML += segundosT;
    }

    timer = setInterval(showRemaining, 1000);

</script>
<%--<div id="tempoFinal" align="right" style="font-size: 40px; font-weight:bold; position:fixed;  left:85%;"></div>--%>
<%--O de cima fica flutuante com o scroll--%>

<div id="tempoFinal" align="right" style="font-size: 40px; font-weight:bold;"></div>


<table class="form">
     <tr>
        <th><bean:message key="assessment.answer.form.title"/></th>
        <td>
            <%--<html:hidden name="AssessmentsForm" property="assessmentView.title"/>--%>
            <bean:write name="AssessmentsForm" property="assessmentView.title"/>
        </td>
    </tr>
    <tr>
        <th><bean:message key="assessment.answer.form.courseUnit"/></th>
        <td>
            <%--<html:hidden name="AssessmentsForm" property="assessmentView.courseUnit.name"/>--%>
            <bean:write name="AssessmentsForm" property="assessmentView.courseUnit.name"/>
        </td>
    </tr>
    <tr>
        <th><bean:message key="assessment.answer.form.course"/></th>
        <td>
            <%--<html:hidden name="AssessmentsForm" property="assessmentView.courseUnit.courseName"/>--%>
            <bean:write name="AssessmentsForm" property="assessmentView.courseUnit.courseName"/>
        </td>
    </tr>
    <tr>
        <th><bean:message key="assessment.answer.form.owner"/></th>
        <td>
            <%--<html:hidden name="AssessmentsForm" property="assessmentView.owner.name"/>--%>
            <bean:write name="AssessmentsForm" property="assessmentView.owner.name"/>
            <br><br>
        </td>
    </tr>
    <tr>
        <th></th>
        <td colspan="2">
            <nested:iterate id="questionView" name="AssessmentsForm" property="assessmentView.questions" indexId="qId">
            <input type="hidden" name="itemsListSize${qId}" value="<%=AssessmentsForm.getAssessmentView().getQuestions().get(qId).getQuestionItems().size()%>"/>
            <input type="hidden" name="candidatesLabelsSize${qId}" value="<%=AssessmentsForm.getAssessmentView().getQuestions().get(qId).getPossibleLabels().size()%>"/>
            <%  int itemsListSizeInt = AssessmentsForm.getAssessmentView().getQuestions().get(qId).getQuestionItems().size();
                String itemsListSize = String.valueOf(itemsListSizeInt) ;
                sess.put("itemsListSize"+qId, (java.io.Serializable) itemsListSize);
                sess.serialize(request,response);
                //
                int candidatesLabelsSizeInt = AssessmentsForm.getAssessmentView().getQuestions().get(qId).getPossibleLabels().size();
                String candidatesLabelsSize = String.valueOf(candidatesLabelsSizeInt) ;
                sess.put("candidatesLabelsSize"+qId, (java.io.Serializable) candidatesLabelsSize);
                sess.serialize(request,response);

                //adicionar a lista de nomes
                List<String> nomesSessao2 = (List<String>) sess.get("nomesSessao");
                nomesSessao2.add("itemsListSize"+qId);
                nomesSessao2.add("candidatesLabelsSize"+qId);
                sess.put("nomesSessao", (java.io.Serializable) nomesSessao2);
                sess.serialize(request,response);
            %>
            <nested:hidden property="id"/>

            <table id="questionTableAssessment">
                <tr>
                    <td colspan="200" class="questionLabelCell">
                        <nested:hidden property="textpt"/>
                        <nested:hidden property="type"/>
                        <nested:write property="textpt"/>
                        <%--Parte da imagem, o <td> tem de ca ficar na mesma--%>
                        <nested:notEqual name="questionView" property="imageId" value="0">
                            <br><br>
                            <table cellpadding="0" cellspacing="0" border="0">
                               <tr> <td>
                                    <img width="800px" height="800px" src="<%=request.getContextPath()%>/imageStream/${questionView.imageId}">
                                </td></tr>
                            </table>
                        </nested:notEqual>
                    </td>
                </tr>

            <nested:equal property="type" value="text">
                <tr>
                    <td>
                        <nested:iterate id="item" property="questionItems" indexId="iId">
                            <input type="hidden" name="candidatesListSize${qId}${iId}" value="<%=AssessmentsForm.getAssessmentView().getQuestions().get(qId).getQuestionItems().get(iId).getPossibleAnswers().size()%>"/>
                            <%  int candidatesListSizeInt = AssessmentsForm.getAssessmentView().getQuestions().get(qId).getQuestionItems().get(iId).getPossibleAnswers().size();
                                String candidatesListSize = String.valueOf(candidatesListSizeInt) ;
                                sess.put("candidatesListSize"+qId+iId, (java.io.Serializable) candidatesListSize);
                                sess.serialize(request,response);
                                //adicionar a lista de nomes
                                List<String> nomesSessao3 = (List<String>) sess.get("nomesSessao");
                                nomesSessao3.add("candidatesListSize"+qId+iId);
                                sess.put("nomesSessao", (java.io.Serializable) nomesSessao3);
                                sess.serialize(request,response);
                            %>
                            <nested:iterate property="possibleAnswers">
                                <nested:hidden property="id"/>
                            </nested:iterate>
                            <logic:iterate id="c" name="item" property="possibleAnswers">
                                <nested:textarea property="textareaValue" styleId="assessmentTextarea"/>
                            </logic:iterate>
                        </nested:iterate>
                    </td>
                </tr>
            </nested:equal>

            <nested:equal property="type" value="practical">
                <tr>
                    <td>
                        <nested:iterate id="item" property="questionItems" indexId="iId">
                            <input type="hidden" name="candidatesListSize${qId}${iId}" value="<%=AssessmentsForm.getAssessmentView().getQuestions().get(qId).getQuestionItems().get(iId).getPossibleAnswers().size()%>"/>
                            <%  int candidatesListSizeInt = AssessmentsForm.getAssessmentView().getQuestions().get(qId).getQuestionItems().get(iId).getPossibleAnswers().size();
                                String candidatesListSize = String.valueOf(candidatesListSizeInt) ;
                                sess.put("candidatesListSize"+qId+iId, (java.io.Serializable) candidatesListSize);
                                sess.serialize(request,response);
                                //adicionar a lista de nomes
                                List<String> nomesSessao3 = (List<String>) sess.get("nomesSessao");
                                nomesSessao3.add("candidatesListSize"+qId+iId);
                                sess.put("nomesSessao", (java.io.Serializable) nomesSessao3);
                                sess.serialize(request,response);
                            %>
                            <nested:iterate property="possibleAnswers">
                                <nested:hidden property="id"/>
                            </nested:iterate>
                            <logic:iterate id="c" name="item" property="possibleAnswers">
                                <bean:message key="assessment.answer.form.uploadFile"/>
                                <nested:file property="uploadFile"/>
                            </logic:iterate>
                        </nested:iterate>
                    </td>
                </tr>
            </nested:equal>

            <nested:equal property="type" value="radio">
                <nested:iterate id="item" property="questionItems" indexId="iId">
                <input type="hidden" name="candidatesListSize${qId}${iId}" value="<%=AssessmentsForm.getAssessmentView().getQuestions().get(qId).getQuestionItems().get(iId).getPossibleAnswers().size()%>"/>
                <%  int candidatesListSizeInt = AssessmentsForm.getAssessmentView().getQuestions().get(qId).getQuestionItems().get(iId).getPossibleAnswers().size();
                    String candidatesListSize = String.valueOf(candidatesListSizeInt) ;
                    sess.put("candidatesListSize"+qId+iId, (java.io.Serializable) candidatesListSize);
                    sess.serialize(request,response);
                    //adicionar a lista de nomes
                    List<String> nomesSessao3 = (List<String>) sess.get("nomesSessao");
                    nomesSessao3.add("candidatesListSize"+qId+iId);
                    sess.put("nomesSessao", (java.io.Serializable) nomesSessao3);
                    sess.serialize(request,response);
                %>
                <nested:iterate property="possibleAnswers">
                    <nested:hidden property="id"/>
                    <nested:hidden property="textpt"/>
                </nested:iterate>
                <logic:iterate id="c" name="item" property="possibleAnswers">
                <tr>
                    <td>
                        <nested:radio property="radioValue" value="${c.id}"/>
                        <nested:write name="c" property="textpt"/>
                    </td>
                </tr>
                </logic:iterate>
                </nested:iterate>
            </nested:equal>

            <nested:equal property="type" value="check">
                <nested:iterate id="item" property="questionItems" indexId="iId">
                <input type="hidden" name="candidatesListSize${qId}${iId}" value="<%=AssessmentsForm.getAssessmentView().getQuestions().get(qId).getQuestionItems().get(iId).getPossibleAnswers().size()%>"/>
                <%  int candidatesListSizeInt = AssessmentsForm.getAssessmentView().getQuestions().get(qId).getQuestionItems().get(iId).getPossibleAnswers().size();
                    String candidatesListSize = String.valueOf(candidatesListSizeInt) ;
                    sess.put("candidatesListSize"+qId+iId, (java.io.Serializable) candidatesListSize);
                    sess.serialize(request,response);
                    //adicionar a lista de nomes
                    List<String> nomesSessao3 = (List<String>) sess.get("nomesSessao");
                    nomesSessao3.add("candidatesListSize"+qId+iId);
                    sess.put("nomesSessao", (java.io.Serializable) nomesSessao3);
                    sess.serialize(request,response);
                %>
                <nested:iterate property="possibleAnswers">
                <tr>
                    <td>
                        <nested:hidden property="id"/>
                        <nested:hidden property="textpt"/>
                        <nested:checkbox property="checkbox"/>
                        <nested:write property="textpt"/>
                    </td>
                </tr>
                </nested:iterate>
                </nested:iterate>
            </nested:equal>

            <nested:equal property="type" value="matrix">
                <tr>
                    <td></td>
                    <nested:iterate property="possibleLabels">
                    <td class="candidateCell">
                        <nested:hidden property="textpt"/>
                        <nested:write property="textpt"/>
                    </td>
                    </nested:iterate>
                </tr>
                <input type="hidden" name="teste_row_hidden"/>
                <nested:iterate id="item" property="questionItems" indexId="iId">
                <input type="hidden" name="candidatesListSize${qId}${iId}" value="<%=AssessmentsForm.getAssessmentView().getQuestions().get(qId).getQuestionItems().get(iId).getPossibleAnswers().size()%>"/>
                <%  int candidatesListSizeInt = AssessmentsForm.getAssessmentView().getQuestions().get(qId).getQuestionItems().get(iId).getPossibleAnswers().size();
                    String candidatesListSize = String.valueOf(candidatesListSizeInt) ;
                    sess.put("candidatesListSize"+qId+iId, (java.io.Serializable) candidatesListSize);
                    sess.serialize(request,response);
                    //adicionar a lista de nomes
                    List<String> nomesSessao3 = (List<String>) sess.get("nomesSessao");
                    nomesSessao3.add("candidatesListSize"+qId+iId);
                    sess.put("nomesSessao", (java.io.Serializable) nomesSessao3);
                    sess.serialize(request,response);
                %>
                <nested:iterate property="possibleAnswers">
                    <nested:hidden property="id"/>
                    <nested:hidden property="textpt"/>
                </nested:iterate>
                <tr onmouseover="this.style.backgroundColor='#aFaFaF'"  onmouseout="this.style.backgroundColor='#F7F7F7'">
                    <td>
                        <nested:hidden property="textpt"/>
                        <nested:write property="textpt"/>
                    </td>
                    <logic:iterate id="c" name="item" property="possibleAnswers">
                    <td class="candidateCell">
                        <nested:radio property="radioValue" value="${c.id}"/>
                    </td>
                    </logic:iterate>
                </tr>
                </nested:iterate>
            </nested:equal>
            </table>
            <br><br>
            </nested:iterate>
        </td>
    </tr>
</table>

<hr>
<input type="button" value="<bean:message key="confirm"/>"
       onclick="set(this.form,'answer');this.form.submit();">
</html:form>

Generated by GNU Enscript 1.6.5.2.