Subversion Repositories bacoAlunos

Rev

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

<%@ page import="jomm.dao.impl.AbstractDao" %>
<%@ page import="pt.estgp.estgweb.Globals" %>
<%@ page import="pt.estgp.estgweb.domain.Course" %>
<%@ page import="pt.estgp.estgweb.domain.User" %>
<%@ page import="pt.estgp.estgweb.domain.dao.DaoFactory" %>
<%@ page import="pt.estgp.estgweb.utils.ConfigProperties" %>
<%@ page import="pt.estgp.estgweb.web.filters.UserRoleProxy" %>
<%@ page import="java.util.List" %>
<%@ 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 prefix="bacoTags" tagdir="/WEB-INF/tags" %>

<%
    List<String> userRoles = UserRoleProxy.getUserRoles();
%>

<div class="panel panel-default">
    <div class="panel-heading">
        Papeis Institucionais com relevância para os processos académicos no PAE
    </div>
    <div class="panel-body">

        <%
            AbstractDao.getCurrentSession().beginTransaction();
            request.setAttribute("roleBoardIPP", Globals.ROLE_BOARD_INSTITUTION);
            request.setAttribute("roleBoardESTG",Globals.ROLE_BOARD_SCHOOL_ESTG);
            request.setAttribute("roleBoardESAE",Globals.ROLE_BOARD_SCHOOL_ESAE);
            request.setAttribute("roleBoardESS",Globals.ROLE_BOARD_SCHOOL_ESS);
            request.setAttribute("roleBoardESECS",Globals.ROLE_BOARD_SCHOOL_ESECS);
            request.setAttribute("rolePreCP",Globals.ROLE_PRESIDENTE_CONCELHO_PEDAGOGICO);
        %>

        <h1 class="well well-large">Papeis Institucionais com relevância em vários Processos</h1>
        <bacoTags:printRoleGroup role="${roleBoardIPP}" transactional="true" useWellTitle="true"/>
        <bacoTags:printRoleGroup role="${rolePreCP}" transactional="true" useWellTitle="true"/>
        <bacoTags:printRoleGroup role="${roleBoardESTG}" transactional="true" useWellTitle="true"/>
        <bacoTags:printRoleGroup role="${roleBoardESAE}" transactional="true" useWellTitle="true"/>
        <bacoTags:printRoleGroup role="${roleBoardESS}" transactional="true" useWellTitle="true"/>
        <bacoTags:printRoleGroup role="${roleBoardESECS}" transactional="true" useWellTitle="true"/>


        <h1 class="well well-large">Papeis especificos da Administração de Questionários</h1>
        <bacoTags:printRoleGroup role="questionarios.admin" transactional="true"/>
        <bacoTags:printRoleGroup role="questionarios.atribuicoes.admin" transactional="true"/>
        <bacoTags:printRoleGroup role="questionarios.atribuicoes.check_teachers" transactional="true"/>
        <bacoTags:printRoleGroup role="questionarios.gerais" transactional="true"/>

        <a name="comissoes"></a>
        <h1 class="well well-large">Comissões de Curso</h1>
        <%
            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>
                                    <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-->
        <%
            }

            AbstractDao.getCurrentSession().getTransaction().commit();
        %>


    </div>
</div>

Generated by GNU Enscript 1.6.5.2.