Subversion Repositories bacoAlunos

Rev

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

<%@ page import="pt.estgp.estgweb.domain.views.BlogView" %>
<%@ page import="pt.utl.ist.berserk.logic.serviceManager.IServiceManager" %>
<%@ page import="pt.utl.ist.berserk.logic.serviceManager.ServiceManager" %>
<%@ page import="pt.estgp.estgweb.web.utils.RequestUtils" %>
<%@ page import="java.util.List" %>
<%@ page import="pt.estgp.estgweb.utils.DatesUtils" %>
<%@ page import="pt.estgp.estgweb.domain.enums.CourseUnitContentsGrants" %>
<%@ page import="pt.estgp.estgweb.web.UserSessionProxy" %>
<%@ page import="pt.estgp.estgweb.domain.UserImpl" %>
<%@ page import="pt.estgp.estgweb.domain.UserSession" %>
<%@ page import="pt.estgp.estgweb.Globals" %>
<%@ page import="pt.estgp.estgweb.utils.ConfigManager" %>
<%@ page import="pt.estgp.estgweb.domain.dao.DaoFactory" %>
<%@ page import="pt.estgp.estgweb.domain.CourseUnit" %>
<%@ page import="pt.estgp.estgweb.domain.views.CourseUnitView" %>
<%@ page import="pt.estgp.estgweb.domain.UserSessionImpl" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="/WEB-INF/tlds/baco.tld" prefix="baco" %>
<%@ 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" %>
<jsp:useBean id="CourseUnitView" type="pt.estgp.estgweb.domain.views.CourseUnitView" scope="request"/>
<baco:initCourseUnitEvaluationClearances name="CourseUnitView"/>
<%
    UserSession userSession = UserSessionProxy.loadUserSessionFromRequest(request);
    if(userSession == null)
        request.setAttribute("UserSession",new UserSessionImpl());
%>
<jsp:useBean id="UserSession" type="pt.estgp.estgweb.domain.UserSession" scope="request"/>
<%

    try{
            if (request.getAttribute("BlogView") != null)
            {
                BlogView bV = (BlogView) request.getAttribute("BlogView");
                request.setAttribute("CourseUnitView",bV.getCourseUnitView());
            }

            boolean activePeriod =
                    DaoFactory.getConfigurationDaoImpl().isCourseUniEvaluationActivePeriodInTransaction(CourseUnitView.getId());

             CourseUnitView.getId();

        %>



        <%
            String fromAction = "";
            String user = "";
            if (request.getParameter("from") != null)
            {
                user = "/user";
                fromAction = "From" + request.getParameter("from");
                if(request.getParameter("from").equals("CourseUnit"))
                {
                    fromAction = "FromHome";
                }
            }
            request.setAttribute("user", user);
            request.setAttribute("fromAction", fromAction);
        %>

        <style>
            .nav-menu li
            {
                padding-left: 0;
                margin-left: 0;
                padding-bottom: 0;

            }
        </style>

        <nav class="navbar navbar-default" role="navigation">

            <div class="navbar-header" style="padding-right: 15px;">
                <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#menuUnit">
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>
            </div>

            <div class="collapse navbar-collapse" id="menuUnit">


                <ul class="nav nav-stacked">
                    <li><html:link action="${user}/startLoadCourseUnit${fromAction}?courseUnitView.id=${CourseUnitView.id}"><span class="glyphicon glyphicon-home"></span> <bean:message key="courseunit.menu.home"/></html:link></li>


                    <baco:isTeacherOfCourseUnit courseUnitId="${CourseUnitView.id}">
                        <baco:hasNotRole role="services">
                            <li>
                            <li>
                                <html:link action="/user/startSubmitAnnouncementFromCourseUnit?announcementView.courseUnitView.id=${CourseUnitView.id}"><span class="icon icon-bubble2"></span> <bean:message key="courseunit.menu.put.announcement"/></html:link>
                            </li>
                        </baco:hasNotRole>
                    </baco:isTeacherOfCourseUnit>

                    <baco:hasRole role="services">
                        <li>
                            <html:link action="/user/startSubmitAnnouncementFromCourseUnit?announcementView.courseUnitView.id=${CourseUnitView.id}"><span class="icon icon-bubble2"></span> <bean:message key="courseunit.menu.put.announcement"/></html:link>
                        </li>
                    </baco:hasRole>




                    <baco:clearOperation name="CourseUnitView" property="courseUnit" op="PROGRAM_EDIT_PROGRAM">
                        <li>
                            <html:link action="/user/startLoadCourseUnitProgram?courseUnitId=${CourseUnitView.id}"><span class="icon icon-library"></span> <bean:message key="edit"/> <bean:message key="courseunit.programfilepath"/></html:link>
                        </li>
                    </baco:clearOperation>

                    <baco:clearOperation name="CourseUnitView" property="courseUnit" op="EVALUATION_EDITION">
                        <li>
                            <html:link action="/user/startLoadCourseUnitEvaluation.do?courseUnitId=${CourseUnitView.id}">
                                <span class="glyphicon glyphicon-flag"></span>
                                <bean:message key="edit"/> <bean:message key="courseunit.menu.evaluation"/>

                                <%
                                    if(activePeriod && !CourseUnitView.isValidEvaluation())
                                    {
                                        if(CourseUnitView.isValidationEvaluation())
                                        {
                                %>
                                <img src="<%=request.getContextPath()%>/imgs/check.gif" width="35px"/>
                                <%
                                        }
                                        else
                                        {
                                %>
                                <img src="<%=request.getContextPath()%>/imgs/preencher2.gif" width="35px"/>
                                <%
                                        }
                                    }
                                    else if(CourseUnitView.isValidEvaluation())
                                    {
                                %>
                                <span class="glyphicon glyphicon-ok"></span>
                                <%
                                    }
                                %>
                            </html:link>
                        </li>
                    </baco:clearOperation>


                    <baco:isAuthenticated>
                        <baco:isInCourseUnit courseUnitId="${CourseUnitView.id}">
                            <li>
                                <a href="<%=request.getContextPath()%>/user/startLoadCourseUnitWorksFromHome.do?courseUnitView.id=${CourseUnitView.id}"><span class="icon icon-clipboard"></span> <bean:message key="courseunit.menu.assignements"/></a>
                            </li>
                        </baco:isInCourseUnit>
                    </baco:isAuthenticated>

                    <baco:clearOperation name="CourseUnitView" property="courseUnit" op="STATISTICS_CAN_VIEW">
                        <li>
                            <html:link action="/user/startLoadCourseUnitStatsFromHome?courseUnitView.id=${CourseUnitView.id}"><span class="glyphicon glyphicon-stats"></span> <bean:message key="course.unit.stats"/></html:link>
                        </li>
                    </baco:clearOperation>




                    <baco:isAuthenticated>
                        <li>
                            <html:link action="/user/startCourseUnitBlogFromHome?courseUnitView.id=${CourseUnitView.id}"><span class="icon icon-bubbles"></span> <bean:message key="courseunit.menu.blog"/></html:link>
                        </li>
                        <li>
                            <html:link action="/user/startLoadCourseUnitStudentsFromHome?courseUnitView.id=${CourseUnitView.id}"><span class="icon icon-users"></span> <bean:message key="courseunit.students"/></html:link>
                        </li>

                    </baco:isAuthenticated>


                    <baco:isAuthenticated>

                        <li>
                            <a class="dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-folder-open"></span> <bean:message key="courseunit.menu.files"/><span class="caret"></span></a>


                        <ul class="dropdown-menu">

                        <%

                            CourseUnitContentsGrants contentsGrants = CourseUnitContentsGrants.parse(CourseUnitView.getContentsGrants());

                            if ( userSession.getUser().isSuperuserOrAdmin() ||
                                    userSession.getUser().hasRole("services") ||
                                    contentsGrants == CourseUnitContentsGrants.PUBLIC ||
                                    (contentsGrants == CourseUnitContentsGrants.INTERNAL && UserSessionProxy.isAuthenticated(request)) ||
                                    (contentsGrants == CourseUnitContentsGrants.PRIVATE && UserSessionProxy.isAuthenticated(request) &&
                                            (((UserImpl) ((userSession.getUser()))).isTeacherOfCourseUnit(CourseUnitView.getId()) ||
                                                    ((UserImpl) ((userSession.getUser()))).isStudentfCourseUnit(CourseUnitView.getId()))))
                            {
                        %>
                        <li>
                            <html:link action="/user/startLoadCourseUnitRootFromHome?courseUnitView.id=${CourseUnitView.id}"><span class="glyphicon glyphicon-folder-open"></span> Pasta Cadeira</html:link>
                        </li>
                        <li>
                            <html:link action="/user/startLoadCourseUnitContentsFromHome?courseUnitView.id=${CourseUnitView.id}">&nbsp;&nbsp;<span class="glyphicon glyphicon-folder-open"></span> <bean:message key="courseunit.menu.contents"/></html:link>
                        </li>
                        <%
                            if(Integer.parseInt(CourseUnitView.getImportYear()) < Integer.parseInt("201516"))
                            {
                        %>
                        <li>
                            <html:link action="/user/startLoadCourseUnitPresencesFromHome?courseUnitView.id=${CourseUnitView.id}">&nbsp;&nbsp;<span class="glyphicon glyphicon-folder-open"></span> <bean:message key="courseunit.menu.presences"/></html:link>
                        </li>
                        <li>
                            <html:link action="/user/startLoadCourseUnitGradesFromHome?courseUnitView.id=${CourseUnitView.id}">&nbsp;&nbsp;<span class="glyphicon glyphicon-folder-open"></span> <bean:message key="courseunit.menu.grades"/></html:link>
                        </li>
                        <%
                            }
                        %>
                        <li>
                            <html:link action="/user/startLoadCourseUnitDtpFromHome?courseUnitView.id=${CourseUnitView.id}">&nbsp;&nbsp;<span class="glyphicon glyphicon-folder-open"></span> <bean:message key="courseunit.menu.dtp"/></html:link>
                        </li>
                        <%
                            }
                        %>
                            </ul>
                            </li>
                    </baco:isAuthenticated>



        <%


            IServiceManager sm = ServiceManager.getInstance();

            String[] names = new String[]{};
            Object[] args = new Object[]{CourseUnitView.getCode(), CourseUnitView.getCourseCode()};

            pt.estgp.estgweb.domain.views.CourseUnitView courseUnitViewInEvaluation = (pt.estgp.estgweb.domain.views.CourseUnitView) sm.execute(RequestUtils.getRequester(request, response), "LoadCourseUnitInEvaluationBySigesCodes", args, names);


            names = new String[]{};
            args = new Object[]{CourseUnitView.getCode(), CourseUnitView.getCourseCode()};

            List<pt.estgp.estgweb.domain.views.CourseUnitView> courseUnitViews = (List<pt.estgp.estgweb.domain.views.CourseUnitView>) sm.execute(RequestUtils.getRequester(request, response), "LoadCourseUnitsBySigesCodes", args, names);
            if(courseUnitViews.size() > 1)
            {
                request.setAttribute("OldUnits",courseUnitViews);
            }
        %>
        <logic:present name="OldUnits">
           <%-- <div class="linkMenuBlock">
                <div class="linkMenuBlockTitle">
                    <%
                        if (CourseUnitView.getImportYear().equals(DaoFactory.getConfigurationDaoImpl().getInterfaceImportYearCreateTransaction()))
                        {
                    %>
                    <bean:message key="courseunit.menu.unit.old.units"/>
                    <%
                        }else{
                    %>
                    <bean:message key="courseunit.menu.unit.other.units"/>
                    <%
                        }
                    %>
                </div>
                <%

                %>
                <div class="linkLeftMenu">
                    <div class="listClean">
                        <ul>--%>
                    <li>
                        <a class="dropdown-toggle" data-toggle="dropdown" href="#"><span class="glyphicon glyphicon-folder-open"></span> <bean:message key="courseunit.menu.unit.old.units"/><span class="caret"></span>
                            <%
                                if(courseUnitViewInEvaluation !=null && courseUnitViewInEvaluation.getId()!=CourseUnitView.getId())
                                {
                            %>
                            <img src="<%=request.getContextPath()%>/imgs/preencher.gif" width="35px"/>
                            <%
                                }
                            %>
                        </a>


                        <ul class="dropdown-menu">
                            <logic:iterate id="item" name="OldUnits" type="pt.estgp.estgweb.domain.views.CourseUnitView">
                                <li>
                                    <logic:equal value="${CourseUnitView.id}" name="item" property="id">
                                        <a href="#">${item.importYear}</a>
                                    </logic:equal>
                                    <logic:notEqual value="${CourseUnitView.id}" name="item" property="id">

                                        <html:link action="${user}/startLoadCourseUnit${fromAction}?courseUnitView.id=${item.id}">

                                        ${item.importYear}
                                            <%
                                                if(courseUnitViewInEvaluation != null && courseUnitViewInEvaluation.getId()==item.getId())
                                                {
                                                    if(item.isValidationEvaluation())
                                                    {
                                            %>
                                            <img src="<%=request.getContextPath()%>/imgs/check.gif" width="35px"/>
                                            <%
                                                    }
                                                    else
                                                    {
                                            %>

                                                    <img src="<%=request.getContextPath()%>/imgs/preencher2.gif" width="35px"/>
                                            <%
                                                    }
                                                }
                                                else if(item.isValidEvaluation())
                                                {
                                            %>
                                                    <span class="glyphicon glyphicon-ok"></span>
                                            <%
                                                }
                                            %>
                                        </html:link>
                                    </logic:notEqual>

                                </li>
                            </logic:iterate>
                            </ul>
                        </li>

        </logic:present>

                </ul>


            </div><!-- /.navbar-collapse -->

        </nav>
<%
    }catch(Throwable e)
    {
        System.out.println(e.toString());
        e.printStackTrace();
    }
%>