Subversion Repositories bacoAlunos

Rev

Rev 1312 | Rev 1686 | 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 class="panel panel-default">
    <div class="panel-heading">
        <bean:message key="courseunit.program"/>
    </div>
    <div class="panel-body">



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

<baco:clearOperation name="CourseUnitView" property="courseUnit" op="PROGRAM_INFO_VALID_NOT_ACTIVE">
    <div class="alert alert-warning">
        O programa não está aberto para edição. A comissão de curso terá de invalidar o programa para que este possa ser alterado.
    </div>
</baco:clearOperation>
<baco:clearOperation name="CourseUnitView" property="courseUnit" op="PROGRAM_CAN_VALIDATE">
    <logic:equal name="CourseUnitView" property="validProgram" value="true">
        <html:link styleClass="btn btn-warning" action="/user/invalidateAndLoadCourseUnitProgram?courseUnitId=${CourseUnitView.id}">Invalidar</html:link>
    </logic:equal>
</baco:clearOperation>

<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();
    }

%>



<baco:notClearOperation name="CourseUnitView" property="courseUnit" op="PROGRAM_COORDINATOR_PART">
    <script>
        $(document).ready(
                function(){
                    $(".editCoordinatorPart *").prop('disabled',true);

                }
        );
    </script>
</baco:notClearOperation>
<baco:notClearOperation name="CourseUnitView" property="courseUnit" op="PROGRAM_TEACHER_PART">
    <script>
        $(document).ready(
                function(){
                    $(".editTeacherPart *").prop('disabled',true);

                }
        );
    </script>
</baco:notClearOperation>
<html:form styleId="ProgramForm" styleClass="form-horizontal" action="/user/courseUnitProgramController">
    <input type="hidden" name="dispatch" value="saveProgram">
    <html:hidden property="id"/>
    <html:hidden property="courseUnitView.id"/>

    <h3>Dados alterados pelo Coordenador de curso</h3>
    <div class="editCoordinatorPart">
        <div class="form-group">
            <label class="control-label col-sm-3">
                Importar programa a partir de outro ano
            </label>
            <div class="col-sm-3">
                <select class="form-control col-sm-3" 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>
            </div>
            <div class="col-sm-3">
                <input class="form-control" type="button" value="Clonar a partir deste programa" onclick="if(confirm('<bean:message key="courseunit.confirmaclonagem"/>')){set(form,'cloneProgram');form.submit()}"/>
            </div>
        </div>
    </div>
    <div class="alert alert-info">

        <bean:message key="courseunit.consultaroutros"/>:
        <logic:iterate id="other" name="OtherYearUnits" type="pt.estgp.estgweb.domain.views.CourseUnitView">
            <a href="<%=request.getContextPath()%>/repositoryStream/<%=other.getProgramStreamId()%>" target="_blank"> <%=other.getImportYear()%> - <%=other.getSemestre()%></a>
            &nbsp;&nbsp;
        </logic:iterate>
    </div>



    <div class="editCoordinatorPart">
        <div class="form-group">
            <label class="control-label col-sm-2">
                <bean:message key="courseunit.responsable"/>
            </label>
            <div class="col-sm-10">
                <html:select styleClass="form-control" 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>
            </div>
        </div>
        <baco:isAdmin>
            <div class="form-group">
                <label class="control-label col-sm-2">
                    <bean:message key="courseunit.teachers"/>
                </label>
                <div class="col-sm-8">
                    <logic:lessEqual value="0" name="CourseUnitView" property="id">
                        <i><bean:message key="courseunit.to.add.teachers.save.first"/></i>
                    </logic:lessEqual>
                    <html:select styleClass="form-control" property="teacherId">
                        <logic:present name="CourseUnitProgramForm" property="teachers">
                            <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>
                        </logic:present>
                    </html:select>
                </div>
                <div class="col-sm-2">
                    <button class="form-control" type="button" onclick="set(this.form,'addTeacher');this.form.submit();">
                        <bean:message key="add"/>
                    </button>
                </div>
                <logic:greaterThan name="CourseUnitView" property="teachersSize" value="0">
                    <label class="col-sm-2">

                    </label>
                    <div class="col-sm-10">
                        <div class="list-group">
                            <logic:iterate id="userView" name="CourseUnitView" property="teachers" type="pt.estgp.estgweb.domain.views.UserView">
                               <div class="list-group-item">
                                    ${userView.name} (${userView.code})
                                    <button class="btn btn-danger btn-xs" type="button" data-toggle="modal" data-target="#confirm-ModalFunction" data-message="Esta operação vai remover o docente da unidade localmente, a sincronização com o sistema do IPP não voltará a colocar o docente neste unidade!! Tem a certeza que deseja prosseguir?" data-script="CourseUnitProgramForm.id.value='${userView.id}';set($('#ProgramForm').get(0),'removeTeacher');$('#ProgramForm').get(0).submit();">
                                        <span class="glyphicon glyphicon-remove small"></span>
                                    </button>
                               </div>
                            </logic:iterate>
                        </div>
                    </div>
                </logic:greaterThan>
            </div>
        </baco:isAdmin>
        <baco:isNotAdmin>
            <div class="form-group">
                <label class="control-label col-sm-2">
                    <bean:message key="courseunit.teachers"/>
                </label>
                <div class="col-sm-10">
                    <div class="list-group">
                        <logic:iterate id="prof" name="CourseUnitView" property="teachers" type="pt.estgp.estgweb.domain.views.UserView">
                            <div class="list-group-item"> ${prof.name} (${prof.code})</div>
                        </logic:iterate>
                    </div>
                </div>
            </div>
        </baco:isNotAdmin>

        <div class="form-group">
            <label class="control-label col-sm-2">
                <bean:message key="courseunit.program.ects.title"/>
            </label>
            <div class="col-sm-10">
                <div>
                    <div class="form-group">
                        <label class="control-label col-sm-1">
                            <bean:message key="courseunit.program.ects"/>
                        </label>
                        <div class="col-sm-11">
                            <html:text styleClass="form-control" property="courseUnitProgramView.courseUnitProgram.ects"/>
                        </div>
                    </div>
                    <div class="form-group">
                        <label class="control-label col-sm-1">
                            <bean:message key="courseunit.program.ects.cargaHorariaTotal"/>
                        </label>
                        <div class="col-sm-11">
                            <html:text styleClass="form-control" property="courseUnitProgramView.courseUnitProgram.cargaHorariaTotal"/>
                        </div>
                    </div>
                </div>
                <div>
                    <div class="form-group">
                        <div class="col-sm-12">
                            <table>
                                <tr>
                                    <th><bean:message key="courseunit.program.cargaHorariaT"/></th>
                                    <th><bean:message key="courseunit.program.cargaHorariaTP"/></th>
                                    <th><bean:message key="courseunit.program.cargaHorariaPL"/></th>
                                    <th><bean:message key="courseunit.program.cargaHorariaS"/></th>
                                    <th><bean:message key="courseunit.program.cargaHorariaTC"/></th>
                                    <th><bean:message key="courseunit.program.cargaHorariaO"/></th>
                                    <th><bean:message key="courseunit.program.cargaHorariaOT"/></th>
                                </tr>
                                <tr>
                                    <td><html:text styleClass="form-control" property="courseUnitProgramView.courseUnitProgram.cargaHorariaT"/></td>
                                    <td><html:text styleClass="form-control" property="courseUnitProgramView.courseUnitProgram.cargaHorariaTP"/></td>
                                    <td><html:text styleClass="form-control" property="courseUnitProgramView.courseUnitProgram.cargaHorariaPL"/></td>
                                    <td><html:text styleClass="form-control" property="courseUnitProgramView.courseUnitProgram.cargaHorariaS"/></td>
                                    <td><html:text styleClass="form-control" property="courseUnitProgramView.courseUnitProgram.cargaHorariaTC"/></td>
                                    <td><html:text styleClass="form-control" property="courseUnitProgramView.courseUnitProgram.cargaHorariaO"/></td>
                                    <td><html:text styleClass="form-control" property="courseUnitProgramView.courseUnitProgram.cargaHorariaOT"/></td>
                                </tr>
                            </table>
                        </div>
                    </div>
                </div>

            </div>

        </div>
    </div>

    <h3>Dados alterados pelo Docente da Unidade</h3>
    <div class="editTeacherPart">
        <%//TODO adicionar workflow e inicializações para a função addTeacher%>

        <div class="form-group">
            <label class="control-label col-sm-2">
                <bean:message key="courseunit.program.objectivos"/>
            </label>
            <div class="col-sm-10">
                <html:textarea rows="10" styleClass="form-control" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.objectivos" />
            </div>
        </div>

        <div class="form-group">
            <label class="control-label col-sm-2">
                <bean:message key="courseunit.program.prerequisitos"/>
            </label>
            <div class="col-sm-10">
                <html:textarea rows="10" styleClass="form-control" property="courseUnitProgramView.courseUnitProgram.prerequisitos"  />
            </div>
        </div>

        <div class="form-group">
            <label class="control-label col-sm-2">
                <bean:message key="courseunit.program.lingua1"/>
            </label>
            <div class="col-sm-10">
                <html:text styleClass="form-control" property="courseUnitProgramView.courseUnitProgram.lingua1" />
            </div>
        </div>

        <div class="form-group">
            <label class="control-label col-sm-2">
                <bean:message key="courseunit.program.lingua2"/>
            </label>
            <div class="col-sm-10">
                <html:text styleClass="form-control" property="courseUnitProgramView.courseUnitProgram.lingua2" />
            </div>
        </div>






        <!--Conteudos-->
        <div class="form-group">
            <label class="control-label col-sm-2">
                <bean:message key="courseunit.program.conteudosProgramaticos"/>
            </label>
            <div class="col-sm-10">
                <html:textarea styleClass="form-control" rows="10" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.conteudos" />
            </div>
        </div>

        <!--demonstracaoCoerenciaConteudos-->
        <div class="form-group">
            <label class="control-label col-sm-2">
                <bean:message key="courseunit.program.demonstracaoCoerenciaConteudosObjectivos"/>
            </label>
            <div class="col-sm-10">
                <html:textarea styleClass="form-control" rows="10" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.demonstracaoCoerenciaConteudos" />
            </div>
        </div>

        <!--metodologiasEnsino-->
        <div class="form-group">
            <label class="control-label col-sm-2">
                <bean:message key="courseunit.program.metodologiasEnsino"/>
            </label>
            <div class="col-sm-10">
                <html:textarea styleClass="form-control" rows="10" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.metodologiasEnsino" />
            </div>
        </div>

        <!--demonstracaoObjectivosMetodologia-->
        <div class="form-group">
            <label class="control-label col-sm-2">
                <bean:message key="courseunit.program.demonstracaoDaCoerenciaMetodologiasObjectivos"/>
            </label>
            <div class="col-sm-10">
                <html:textarea styleClass="form-control" rows="10" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.demonstracaoObjectivosMetodologia" />
            </div>
        </div>

        <h4><bean:message key="courseunit.program.avaliacao"/></h4>

        <!--avaliacaoOrdinariosFrequencia-->
        <div class="form-group">
            <label class="control-label col-sm-2">
                <bean:message key="courseunit.program.alunosOrdinariosPorFrequencia"/>
            </label>
            <div class="col-sm-10">
                <html:textarea styleClass="form-control" rows="10" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.avaliacaoOrdinariosFrequencia" />
            </div>
        </div>
        <!--avaliacaoOrdinariosExame-->
        <div class="form-group">
            <label class="control-label col-sm-2">
                <bean:message key="courseunit.program.alunosOrdinariosPorExame"/>
            </label>
            <div class="col-sm-10">
                <html:textarea styleClass="form-control" rows="10" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.avaliacaoOrdinariosExame" />
            </div>
        </div>
        <!--avaliacaoEspeciaisFrequencia-->
        <div class="form-group">
            <label class="control-label col-sm-2">
                <bean:message key="courseunit.program.alunosMobilidadeAlunosComEstatutoEspecialPorFrequencia"/>
            </label>
            <div class="col-sm-10">
                <html:textarea styleClass="form-control" rows="10" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.avaliacaoEspeciaisFrequencia" />
            </div>
        </div>
        <!--avaliacaoEspeciaissExame-->
        <div class="form-group">
            <label class="control-label col-sm-2">
                <bean:message key="courseunit.program.alunosMobilidadeAlunosComEstatutoEspecialPorExame"/>
            </label>
            <div class="col-sm-10">
                <html:textarea styleClass="form-control" rows="10" property="courseUnitProgramView.courseUnitProgram.courseUnitProgramPart2.avaliacaoEspeciaissExame" />
            </div>
        </div>

        <h4><bean:message key="courseunit.program.bibliografia"/></h4>

        <!--bibliografia-->
        <div class="form-group">
            <label class="control-label col-sm-2">
                <bean:message key="courseunit.program.bibliografiaPrincipal"/>
            </label>
            <div class="col-sm-10">
                <html:textarea styleClass="form-control" rows="10" property="courseUnitProgramView.courseUnitProgram.bibliografia" />
            </div>
        </div>

        <!--bibliografiaComplementar-->
        <div class="form-group">
            <label class="control-label col-sm-2">
                <bean:message key="courseunit.program.bibliografiaComplementar"/>
            </label>
            <div class="col-sm-10">
                <html:textarea styleClass="form-control" rows="10" property="courseUnitProgramView.courseUnitProgram.bibliografiaComplementar" />
            </div>
        </div>


    </div>












    <baco:clearOperation name="CourseUnitView" property="courseUnit" op="PROGRAM_TEACHER_PART,PROGRAM_COORDINATOR_PART">
        <button class="btn btn-success" type="button" onclick="set(form,'saveProgram');form.submit()"><bean:message key="save"/></button>
    </baco:clearOperation>
    <baco:clearOperation name="CourseUnitView" property="courseUnit" op="PROGRAM_CAN_VALIDATE">
        <logic:equal name="CourseUnitView" property="validProgram" value="false">
            <button class="btn btn-success" type="button" onclick="set(form,'validateProgram');form.submit()">Salvar e Validar</button>
        </logic:equal>
    </baco:clearOperation>

</html:form>

    


    </div><!--Panel body-->
</div><!--Panel-->

Generated by GNU Enscript 1.6.5.2.