Subversion Repositories bacoAlunos

Rev

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

<%@ page import="pt.utl.ist.berserk.logic.serviceManager.IServiceManager" %>
<%@ page import="pt.utl.ist.berserk.logic.serviceManager.ServiceManager" %>
<%@ page import="java.util.List" %>
<%@ page import="pt.estgp.estgweb.web.utils.RequestUtils" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="pt.estgp.estgweb.domain.Teacher" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/tlds/struts-nested.tld" prefix="nested" %>
<%@ 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-tiles.tld" prefix="tiles" %>
<%@ taglib uri="/WEB-INF/tlds/baco.tld" prefix="baco" %>
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
<jsp:useBean id="CourseUnitProgramForm" type="pt.estgp.estgweb.web.form.courseunits.CourseUnitProgramForm" scope="request"/>
<jsp:useBean id="CourseUnitView" type="pt.estgp.estgweb.domain.views.CourseUnitView" scope="request"/>
<%--<jsp:useBean id="CourseUnitProgramView" type="pt.estgp.estgweb.domain.views.CourseUnitProgramView" scope="request"/>--%>
<jsp:useBean id="UserSession" type="pt.estgp.estgweb.domain.UserSession" scope="request"/>
<div id="contentIntranet">
<div id="contentPane">
<html:errors/>
<jomm:messages/>
<script>
    //Manter a sessão activa para os docentes não perderem os dados
    ping();
</script>

<%
    IServiceManager sm = ServiceManager.getInstance();

    List<pt.estgp.estgweb.domain.views.CourseUnitView> otherYearUnits;
    otherYearUnits = new ArrayList<pt.estgp.estgweb.domain.views.CourseUnitView>();
    try{
        String[] names = new String[]{};
        Object[] args = new Object[]{new Long(CourseUnitView.getId())};
        otherYearUnits =
                (List<pt.estgp.estgweb.domain.views.CourseUnitView>)
                        sm.execute(RequestUtils.getRequester(request, response), "LoadUnitOtherYearsWithProgram", args, names);
        request.setAttribute("OtherYearUnits", otherYearUnits);


        names = new String[]{};
        args = new Object[]{};
        List<Teacher> teachers = (List<Teacher>)
                        sm.execute(RequestUtils.getRequester(request, response), "LoadTeachers", args, names);
        request.setAttribute("teachers", teachers);
    }catch(Exception e)
    {
        System.err.print(e.toString());
        e.printStackTrace();
    }




%>
<div class="seccao">
<h2>
    <bean:message key="courseunit.program"/>
</h2>

    <%
        boolean editCoordinatorPart = false;
        boolean editTeacherPart = false;
        pt.estgp.estgweb.domain.User u = UserSession.getUser();
        if(u.isSuperuserOrAdmin())
        {
            editCoordinatorPart = true;
            editTeacherPart = true;
        }
        else
        {
            if(u instanceof pt.estgp.estgweb.domain.Teacher)
            {
                pt.estgp.estgweb.domain.Teacher t = (pt.estgp.estgweb.domain.Teacher) u;
                if(t.isTeacherOfCourseUnit(CourseUnitView.getId()))
                {
                    editTeacherPart = true;
                }
                if(CourseUnitView.getCourseView().getCoordinator() != null && (t.getId() == CourseUnitView.getCourseView().getCoordinator().getId() || t.hasRole(CourseUnitView.getCourseView().getValidationRole())))
                {
                    editCoordinatorPart = true;
                }

            }
        }
%>


<html:form action="/user/courseUnitProgramController">
    <input type="hidden" name="dispatch" value="saveProgram">
    <html:hidden property="id"/>
    <html:hidden property="courseUnitView.id"/>


    <%

        if(editCoordinatorPart)
        {
    %>
    <div>
        Importar programa a partir de outro ano
        <select name="cloneFromUnitId">
            <logic:iterate id="other" name="OtherYearUnits" type="pt.estgp.estgweb.domain.views.CourseUnitView">
                <option value="<%=other.getId()%>"><%=other.getImportYear()%> - <%=other.getSemestre()%></option>
            </logic:iterate>
        </select>
        <input type="button" value="Clonar a partir deste programa" onclick="if(confirm('<bean:message key="courseunit.confirmaclonagem"/>')){set(form,'cloneProgram');form.submit()}"/>
    </div>










    <%
        }
    %>
    <table>
        <tr>
            <td colspan="<%=otherYearUnits.size()%>"><bean:message key="courseunit.consultaroutros"/> </td>
        </tr>
        <tr>
            <logic:iterate id="other" name="OtherYearUnits" type="pt.estgp.estgweb.domain.views.CourseUnitView">
                <td>
                   <a href="<%=request.getContextPath()%>/repositoryStream/<%=other.getProgramStreamId()%>" target="_blank"> <%=other.getImportYear()%> - <%=other.getSemestre()%></a>
                </td>
            </logic:iterate>

        </tr>
    </table>

    <table class="dataTable tableDisabled" width="100%">

        <%--COORDENADOR--%>
        <tr>
            <th colspan="2">Dados alterados pelo Coordenador de curso</th>
        </tr>
            <%

            if(editCoordinatorPart)
            {
            %>

        <%//      DADOS DE UNIDADE     //%>

        <tr>
            <th>
                <bean:message key="courseunit.responsable"/>
            </th>
            <td>
                <html:select property="courseUnitView.responsableId">
                    <html:option value="0"></html:option>
                    <logic:iterate id="teacher" name="teachers"  type="pt.estgp.estgweb.domain.views.UserView">
                        <html:option value="${teacher.id}">${teacher.name} (${teacher.code})</html:option>
                    </logic:iterate>
                </html:select>
            </td>
        </tr>
        <baco:isAdmin>
        <tr>
            <th>
                <bean:message key="courseunit.teachers"/>
            </th>
            <td>
                <logic:lessEqual value="0" name="CourseUnitView" property="id">
                    <i><bean:message key="courseunit.to.add.teachers.save.first"/></i>
                </logic:lessEqual>


                    <html:select property="teacherId">
                        <logic:present name="CourseUnitProgramForm" property="teachers">
                            <logic:iterate id="teacher" name="teachers" type="pt.estgp.estgweb.domain.views.UserView">
                                <jomm:option itemName="teacher" itemProperty="id" comparableObjectName="CourseUnitProgramForm"
                                             comparableObjectProperty="teacherId">
                                   ${teacher.name}  (${teacher.code})
                                </jomm:option>
                            </logic:iterate>
                            <input type="button" value="<bean:message key="add"/>"
                                   onclick="set(this.form,'addTeacher');this.form.submit();">
                        </logic:present>
                    </html:select>
                    <logic:greaterThan name="CourseUnitView" property="teachersSize" value="0">
                        <table class="dataTable removeButton">
                            <logic:iterate id="userView" name="CourseUnitView" property="teachers" type="pt.estgp.estgweb.domain.views.UserView">
                                <tr>
                                    <th>
                                            ${userView.code}
                                    </th>
                                    <th>
                                            ${userView.name}
                                    </th>
                                    <td><input type="button" class="removeButton"
                                               onclick="CourseUnitProgramForm.id.value='${userView.id}';set(this.form,'removeTeacher');this.form.submit();">
                                    </td>
                                </tr>
                            </logic:iterate>
                        </table>
                    </logic:greaterThan>
            </td>
        </tr>
        </baco:isAdmin>
        <baco:isNotAdmin>
            <logic:iterate id="prof" name="CourseUnitView" property="teachers" type="pt.estgp.estgweb.domain.views.UserView">
                <tr>
                    <th>
                        <bean:message key="courseunit.teachers"/>
                    </th>
                    <td>
                            ${prof.name} (${prof.code})
                    </td>
                </tr>
            </logic:iterate>
        </baco:isNotAdmin>
        <%//TODO adicionar workflow e inicializações para a função addTeacher%>






                <tr>
                    <td align="right"><bean:message key="courseunit.program.objectivos"/></td>
                    <td  width="80%"><html:textarea property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.objectivos" style="width:100%;height:200px" /></td>
                </tr>

                <tr>
                    <td align="right"><bean:message key="courseunit.program.prerequisitos"/></td>
                    <td  width="80%"><html:textarea property="courseUnitProgramView.courseUnitProgram.prerequisitos" style="width:100%;height:200px" /></td>
                </tr>

                <tr>
                    <td align="right"><bean:message key="courseunit.program.lingua1"/></td>
                    <td  width="80%"><html:text property="courseUnitProgramView.courseUnitProgram.lingua1" style="width:100%" /></td>
                </tr>

                <tr>
                    <td align="right"><bean:message key="courseunit.program.lingua2"/></td>
                    <td  width="80%"><html:text property="courseUnitProgramView.courseUnitProgram.lingua2" style="width:100%" /></td>
                </tr>


                <tr>
                    <td colspan="2"><bean:message key="courseunit.program.ects.title"/></td>
                </tr>

                <tr>
                    <td align="right"><bean:message key="courseunit.program.ects"/></td>
                    <td  width="80%"><html:text property="courseUnitProgramView.courseUnitProgram.ects"/></td>
                </tr>
                <tr>
                    <td align="right"><bean:message key="courseunit.program.ects.cargaHorariaTotal"/></td>
                    <td  width="80%"><html:text property="courseUnitProgramView.courseUnitProgram.cargaHorariaTotal"/></td>
                </tr>
                <tr>
                    <td align="right"></td>
                    <td  width="80%">
                        <table>
                            <tr>
                                <td><bean:message key="courseunit.program.cargaHorariaT"/></td>
                                <td><bean:message key="courseunit.program.cargaHorariaTP"/></td>
                                <td><bean:message key="courseunit.program.cargaHorariaPL"/></td>
                                <td><bean:message key="courseunit.program.cargaHorariaS"/></td>
                                <td><bean:message key="courseunit.program.cargaHorariaTC"/></td>
                                <td><bean:message key="courseunit.program.cargaHorariaO"/></td>
                                <td><bean:message key="courseunit.program.cargaHorariaOT"/></td>
                            </tr>
                            <tr>
                                <td><html:text property="courseUnitProgramView.courseUnitProgram.cargaHorariaT"/></td>
                                <td><html:text property="courseUnitProgramView.courseUnitProgram.cargaHorariaTP"/></td>
                                <td><html:text property="courseUnitProgramView.courseUnitProgram.cargaHorariaPL"/></td>
                                <td><html:text property="courseUnitProgramView.courseUnitProgram.cargaHorariaS"/></td>
                                <td><html:text property="courseUnitProgramView.courseUnitProgram.cargaHorariaTC"/></td>
                                <td><html:text property="courseUnitProgramView.courseUnitProgram.cargaHorariaO"/></td>
                                <td><html:text property="courseUnitProgramView.courseUnitProgram.cargaHorariaOT"/></td>                                
                            </tr>
                        </table>


                    </td>
                </tr>

            <%
            }
            else
            {
            %>
                <tr>
                    <th>
                        <bean:message key="courseunit.responsable"/>
                    </th>
                    <td>
                        ${CourseUnitView.responsableTeacher.name} (${CourseUnitView.responsableTeacher.code})
                    </td>
                </tr>
                <logic:iterate id="prof" name="CourseUnitView" property="teachers" type="pt.estgp.estgweb.domain.views.UserView">
                    <tr>
                        <th>
                            <bean:message key="courseunit.teachers"/>
                        </th>
                        <td>
                                ${prof.name} (${prof.code})
                        </td>
                    </tr>
                </logic:iterate>
                <tr>
                    <td align="right"><bean:message key="courseunit.program.objectivos"/></td>
                    <td  width="80%"><html:textarea disabled="true" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.objectivos" style="width:100%;height:200px" /></td>
                </tr>

                <tr>
                    <td align="right"><bean:message key="courseunit.program.prerequisitos"/></td>
                    <td  width="80%"><html:textarea  disabled="true" property="courseUnitProgramView.courseUnitProgram.prerequisitos" style="width:100%;height:200px" /></td>
                </tr>

                <tr>
                    <td align="right"><bean:message key="courseunit.program.lingua1"/></td>
                    <td  width="80%"><html:text disabled="true" property="courseUnitProgramView.courseUnitProgram.lingua1" style="width:100%" /></td>
                </tr>

                <tr>
                    <td align="right"><bean:message key="courseunit.program.lingua2"/></td>
                    <td  width="80%"><html:text disabled="true" property="courseUnitProgramView.courseUnitProgram.lingua2" style="width:100%" /></td>
                </tr>
                <tr>
                    <td align="right"><bean:message key="courseunit.program.ects"/></td>
                    <td  width="80%"><html:text disabled="true" property="courseUnitProgramView.courseUnitProgram.ects"/></td>
                </tr>
                <tr>
                    <td align="right"><bean:message key="courseunit.program.ects.cargaHorariaTotal"/></td>
                    <td  width="80%"><html:text disabled="true" property="courseUnitProgramView.courseUnitProgram.cargaHorariaTotal"/></td>
                </tr>
                <tr>
                    <td align="right"></td>
                    <td  width="80%">
                        <table>
                            <tr>
                                <td><bean:message key="courseunit.program.cargaHorariaT"/></td>
                                <td><bean:message key="courseunit.program.cargaHorariaTP"/></td>
                                <td><bean:message key="courseunit.program.cargaHorariaPL"/></td>
                                <td><bean:message key="courseunit.program.cargaHorariaS"/></td>
                                <td><bean:message key="courseunit.program.cargaHorariaTC"/></td>
                                <td><bean:message key="courseunit.program.cargaHorariaO"/></td>
                                <td><bean:message key="courseunit.program.cargaHorariaOT"/></td>
                            </tr>
                            <tr>
                                <td><html:text disabled="true" property="courseUnitProgramView.courseUnitProgram.cargaHorariaT"/></td>
                                <td><html:text disabled="true" property="courseUnitProgramView.courseUnitProgram.cargaHorariaTP"/></td>
                                <td><html:text disabled="true" property="courseUnitProgramView.courseUnitProgram.cargaHorariaPL"/></td>
                                <td><html:text disabled="true" property="courseUnitProgramView.courseUnitProgram.cargaHorariaS"/></td>
                                <td><html:text disabled="true" property="courseUnitProgramView.courseUnitProgram.cargaHorariaTC"/></td>
                                <td><html:text disabled="true" property="courseUnitProgramView.courseUnitProgram.cargaHorariaO"/></td>
                                <td><html:text disabled="true" property="courseUnitProgramView.courseUnitProgram.cargaHorariaOT"/></td>                                
                            </tr>
                        </table>


                    </td>
                </tr>

            <%
            }
            if(editTeacherPart)
            {
            %>
                <tr>
                    <th colspan="2">Dados alterados pelo Docente da Unidade</th>
                </tr>

                <tr>
                    <td align="right"><bean:message key="courseunit.program.conteudosProgramaticos"/></td>
                    <td  width="80%"><html:textarea property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.conteudos" style="width:100%;height:200px" /></td>
                </tr>

                <tr>
                    <td align="right"><bean:message key="courseunit.program.demonstracaoCoerenciaConteudosObjectivos"/></td>
                    <td  width="80%"><html:textarea property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.demonstracaoCoerenciaConteudos" style="width:100%;height:200px" /></td>
                </tr>

                <tr>
                    <td align="right"><bean:message key="courseunit.program.metodologiasEnsino"/></td>
                    <td  width="80%"><html:textarea property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.metodologiasEnsino" style="width:100%;height:200px" /></td>
                </tr>

                <tr>
                    <td align="right"><bean:message key="courseunit.program.demonstracaoDaCoerenciaMetodologiasObjectivos"/></td>
                    <td  width="80%"><html:textarea property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.demonstracaoObjectivosMetodologia" style="width:100%;height:200px" /></td>
                </tr>

                <tr>
                       <td colspan="2"><bean:message key="courseunit.program.avaliacao"/></td>
                </tr>
                <tr>
                    <td align="right"><bean:message key="courseunit.program.alunosOrdinariosPorFrequencia"/></td>
                    <td><html:textarea property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.avaliacaoOrdinariosFrequencia" style="width:100%;height:200px" /></td>
                </tr>
                <tr>
                    <td align="right"><bean:message key="courseunit.program.alunosOrdinariosPorExame"/></td>
                    <td><html:textarea property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.avaliacaoOrdinariosExame" style="width:100%;height:200px" /></td>
                </tr>

                <tr>
                    <td align="right"><bean:message key="courseunit.program.alunosMobilidadeAlunosComEstatutoEspecialPorFrequencia"/></td>
                    <td><html:textarea property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.avaliacaoEspeciaisFrequencia" style="width:100%;height:200px" /></td>
                </tr>
                <tr>
                    <td align="right"><bean:message key="courseunit.program.alunosMobilidadeAlunosComEstatutoEspecialPorExame"/></td>
                    <td><html:textarea property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.avaliacaoEspeciaissExame" style="width:100%;height:200px" /></td>
                </tr>


                <tr>
                       <td colspan="2"><bean:message key="courseunit.program.bibliografia"/></td>
                </tr>
                <tr>
                    <td align="right"><bean:message key="courseunit.program.bibliografiaPrincipal"/></td>
                    <td><html:textarea property="courseUnitProgramView.courseUnitProgram.bibliografia" style="width:100%;height:200px" /></td>
                </tr>
                <tr>
                    <td align="right"><bean:message key="courseunit.program.bibliografiaComplementar"/></td>
                    <td><html:textarea property="courseUnitProgramView.courseUnitProgram.bibliografiaComplementar" style="width:100%;height:200px" /></td>
                </tr>
            <%
            }
            else
            {
            %>
                <tr>
                    <th colspan="2">Dados alterados pelo Docente da Unidade</th>
                </tr>

                <tr>
                    <td align="right"><bean:message key="courseunit.program.conteudosProgramaticos"/></td>
                    <td  width="80%"><html:textarea disabled="true" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.conteudos" style="width:100%;height:200px" /></td>
                </tr>

                <tr>
                    <td align="right"><bean:message key="courseunit.program.demonstracaoCoerenciaConteudosObjectivos"/></td>
                    <td  width="80%"><html:textarea disabled="true" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.demonstracaoCoerenciaConteudos" style="width:100%;height:200px" /></td>
                </tr>

                <tr>
                    <td align="right"><bean:message key="courseunit.program.metodologiasEnsino"/></td>
                    <td  width="80%"><html:textarea disabled="true" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.metodologiasEnsino" style="width:100%;height:200px" /></td>
                </tr>

                <tr>
                    <td align="right"><bean:message key="courseunit.program.demonstracaoDaCoerenciaMetodologiasObjectivos"/></td>
                    <td  width="80%"><html:textarea disabled="true" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.demonstracaoObjectivosMetodologia" style="width:100%;height:200px" /></td>
                </tr>

                <tr>
                       <td colspan="2"><bean:message key="courseunit.program.avaliacao"/></td>
                </tr>
                <tr>
                    <td align="right"><bean:message key="courseunit.program.alunosOrdinariosPorFrequencia"/></td>
                    <td><html:textarea disabled="true" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.avaliacaoOrdinariosFrequencia" style="width:100%;height:200px" /></td>
                </tr>
                <tr>
                    <td align="right"><bean:message key="courseunit.program.alunosOrdinariosPorExame"/></td>
                    <td><html:textarea disabled="true" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.avaliacaoOrdinariosExame" style="width:100%;height:200px" /></td>
                </tr>

                <tr>
                    <td align="right"><bean:message key="courseunit.program.alunosMobilidadeAlunosComEstatutoEspecialPorFrequencia"/></td>
                    <td><html:textarea disabled="true" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.avaliacaoEspeciaisFrequencia" style="width:100%;height:200px" /></td>
                </tr>
                <tr>
                    <td align="right"><bean:message key="courseunit.program.alunosMobilidadeAlunosComEstatutoEspecialPorExame"/></td>
                    <td><html:textarea disabled="true" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.avaliacaoEspeciaissExame" style="width:100%;height:200px" /></td>
                </tr>


                <tr>
                       <td colspan="2"><bean:message key="courseunit.program.bibliografia"/></td>
                </tr>
                <tr>
                    <td align="right"><bean:message key="courseunit.program.bibliografiaPrincipal"/></td>
                    <td><html:textarea disabled="true" property="courseUnitProgramView.courseUnitProgram.bibliografia" style="width:100%;height:200px" /></td>
                </tr>
                <tr>
                    <td align="right"><bean:message key="courseunit.program.bibliografiaComplementar"/></td>
                    <td><html:textarea disabled="true" property="courseUnitProgramView.courseUnitProgram.bibliografiaComplementar" style="width:100%;height:200px" /></td>
                </tr>
            <%
            }
        %>


        <baco:canManage name="CourseUnitView">
        <%--DOCENTE--%>

        </baco:canManage>
        <tr><td colspan="2"><input type="button" value="<bean:message key="confirm"/>" onclick="set(form,'saveProgram');form.submit()"/></td></tr>

    </table>


</html:form>

    
</div>
</div>
</div>

Generated by GNU Enscript 1.6.5.2.