Subversion Repositories bacoAlunos

Rev

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

<%@ page import="pt.estgp.estgweb.domain.Course" %>
<%@ page import="pt.estgp.estgweb.domain.dao.DaoFactory" %>
<%@ page import="pt.estgp.estgweb.utils.ConfigProperties" %>
<%@ page import="java.util.List" %>
<%@ 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 prefix="bacoTags" tagdir="/WEB-INF/tags" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%
    boolean showAllCourses = request.getParameter("showAllCourses") != null ? Boolean.parseBoolean(request.getParameter("showAllCourses")) : false;
    boolean showWithStudiesPlanActive = ! showAllCourses;
    List<String> institutionCodes = ConfigProperties.getListValues("institution.code.prefix.inverse.");
%>
<script>
    $(document).ready(
            function(){

            }
    );


    function showInstitutionCode(institutionCode)
    {
        <%
        for(String institutionCode: institutionCodes)
        {
        %>
        if(institutionCode == '<%=institutionCode%>')
        {
            $("#institution<%=institutionCode%>").show();
            $("#institutionsSeparators<%=institutionCode%>").addClass("active");
        }
        else
        {
            $("#institution<%=institutionCode%>").hide();
            $("#institutionsSeparators<%=institutionCode%>").removeClass("active");
        }
        <%
        }
        %>
    }

    function showDegreeInst(degree,inst)
    {
        $(".degree").hide();
        $("#institution" + inst + " #degree" + degree).show();
        $(".degreeSep").removeClass("active");
        $("#degreeSeparators" + degree).addClass("active");
    }
</script>

<p>Nesta listagem apenas são mostrados os Cursos publicos no Site do IPP, se o curso que procura não está listado clique aqui para ver todos <a class="btn btn-default" href="<%=request.getContextPath()%>/user/showRoleUsers.do?showAllCourses=true#comissoes">Mostrar Todos</a></p>


<!--TBS DE INSTITUICAO-->
<ul class="nav nav-tabs">
    <%
        for(String institutionCode: institutionCodes)
        {
            String institutionName = ConfigProperties.getProperty("institution.code." + institutionCode);
    %>
    <li id="institutionsSeparators<%=institutionCode%>"><a href="javascript:showInstitutionCode('<%=institutionCode%>')"><%=institutionName%></a></li>
    <%
        }
    %>
</ul>
<!--TBS DE INSTITUICAO-->

<%
    for(String instCode : institutionCodes)
    {
%>
<div class="panel panel-default" id="institution<%=instCode%>" style="display: none">
    <div class="panel-heading">
        Tipos de Curso da <%=ConfigProperties.getProperty("institution.code." + instCode)%>
    </div>
    <div class="panel-body">


        <%
            List<String> degrees = DaoFactory.getCourseDaoImpl().findDegrees(instCode,showWithStudiesPlanActive);
        %>
        <!--TBS DE DEGREES-->
        <ul class="nav nav-tabs">
            <%
                for(String degree: degrees)
                {
            %>
            <li class="degreeSep" id="degreeSeparators<%=degree%>"><a href="javascript:showDegreeInst('<%=degree%>','<%=instCode%>')"><%=ConfigProperties.getProperty("course.degree.desc.plural." + degree)%></a></li>
            <%
                }
            %>
        </ul>
        <!--TBS DE DEGREES-->
        <%
            for(String degree: degrees)
            {

        %>



        <div class="degree" id="degree<%=degree%>" style="display: none">
            <%
                List<Course> courses =  DaoFactory.getCourseDaoImpl().findAllCoursesOrderByNameEvenWithoutCourseUnit(instCode,degree,showWithStudiesPlanActive);
                for(Course course: courses)
                {
                    request.setAttribute("course",course);
            %>
            <h4 class="well well-sm clearfix">
                <%=course.getName()%> (<%=course.getCode()%>)
                <baco:isAdmin>
                    <%--<bacoTags:callAjaxModal targetUrl="/user/courseControllerFromServiceZone.do?dispatch=editAdmin&courseView.id=${course.id}" title="Atalho para Edição do Curso ${course.name}" btnClass="btn btn-warning pull-right btn-xs" btnIconClass="glyphicon-wrench"/>--%>
                    <a class="btn btn-warning pull-right btn-xs" target="_blank" href="<%=request.getContextPath()%>/user/courseControllerFromServiceZone.do?dispatch=editAdmin&courseView.id=${course.id}">
                        <span class="glyphicon glyphicon-wrench"></span>
                    </a>
                </baco:isAdmin>
            </h4>

            <p>Papel da Coordenação:</label>
                <logic:notEmpty name="course" property="validationRole"><bean:message key="user.role.${course.validationRole}"/></logic:notEmpty>
                <logic:empty name="course" property="validationRole">Este curso não tem papel definido para a sua Coordenação, por favor contacte os serviços de informática, terá de ser definido um papel para a coordenação para lhe poder adicionar elementos</logic:empty>
            </p>
            <p>Coordenador:
                <%
                    if(course.getCoordinator() != null)
                    {
                %><%=course.getCoordinator().getName()%> (<%=course.getCoordinator().getSigesCode()%>)<%
                }
                else
                {
                %>Não está atribuido<%
                    }
                %>
            </p>
            <%
                if(course.getValidationRole() != null && course.getValidationRole().length() > 0)
                {
            %>
            <bacoTags:printRoleGroup title="Restante Coordenação" role="${course.validationRole}" transactional="true"/>
            <%
                    }
                }
            %>
        </div><!--Degree div End-->
        <%
            }

        %>
    </div><!--Panel Body-->
</div><!--Panel Instituicao-->
<%
    }
%>