Subversion Repositories bacoAlunos

Rev

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

<%@ page import="jomm.utils.MessageResources" %>
<%@ page import="pt.estgp.estgweb.web.Globals" %>
<%@ 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="CourseUnitsForm" type="pt.estgp.estgweb.web.form.courseunits.CourseUnitsForm" scope="request"/>
<jsp:useBean id="CourseUnitView" type="pt.estgp.estgweb.domain.views.CourseUnitView" scope="request"/>
<jsp:useBean id="UserSession" type="pt.estgp.estgweb.domain.UserSession" scope="request"/>

<script>
    <%
    if (CourseUnitsForm.isShowNewWorkForm())
    {
    %>
        $(document).ready(function(){
            $('#myModal').modal({
                show: 'true'
            });
        });

    <%
    }
    %>
    $(document).ready(function(){
        setTimeout("hideWorkDesc()",100);
        setTimeout("disableWorksDisabled()",200);
    });
    function hideWorkDesc()
    {
        $(".workdesc").hide();
    }

    function disableWorksDisabled()
    {
        $(".workDisabled").addClass("disabledItem");
    }

</script>
<div class="panel panel-default">
    <div class="panel-heading clearfix">
        <bean:message key="courseunit.works"/>
        <baco:canManage name="CourseUnitView">
            <button type="button" class="btn btn-success pull-right" data-toggle="modal" data-target="#myModal"><span class="glyphicon glyphicon-plus"></span> <bean:message key="new"/> </button>
            <%--<a class="btn btn-success pull-right" href="javascript:showOrHideOne('assignements')"><span class="glyphicon glyphicon-plus"></span> <bean:message key="new"/> </a>--%>
        </baco:canManage>
    </div>
    <div class="panel-body">


        <baco:canManage name="CourseUnitView">
            <%--
            <%
                String visibility = "";
                if (CourseUnitsForm.isShowNewWorkForm())
                    visibility = Globals.VISIBLE;
                else
                    visibility = Globals.HIDDEN;
                request.setAttribute("visibility", visibility);
            %>--%>

            <!-- Modal -->
            <div class="modal fade" id="myModal" role="dialog" >
                <div class="modal-dialog" data-width="760" style="display: block; width: 760px; margin-top: 50px;" aria-hidden="false">

                    <!-- Modal content-->
                    <div class="modal-content">
                        <div class="modal-header">
                            <h1 class="modal-title"><bean:message key="course.unit.work"/></h1>
                        </div>
                        <div class="modal-body">
                            <html:errors/>
                            <jomm:messages/>
                           <html:form styleClass="form-horizontal" action="/user/courseUnitControllerFromHome" enctype="multipart/form-data">
                                        <input type="hidden" name="dispatch" value="createAssignement">
                                        <html:hidden property="courseUnitView.id"/>
                                        <html:hidden property="courseUnitAssignementView.id"/>

                                        <div class="form-group">
                                            <label class="control-label col-sm-2" for="title"><bean:message key="courseunit.title"/></label>
                                            <div class="col-sm-10">
                                                <html:text  styleId="title" styleClass="form-control" property="courseUnitAssignementView.title"/>
                                            </div>
                                        </div>

                                        <div class="form-group">
                                            <label class="control-label col-sm-2" for="date"><bean:message key="courseunit.assignement.deliver.date"/></label>
                                            <div class="col-sm-8">
                                                <div class='input-group date datetimepicker' >
                                                    <html:text styleClass="form-control" property="courseUnitAssignementView.deliverDate" styleId="date" />
                                                    <span class="input-group-addon">
                                                        <span class="glyphicon glyphicon-calendar"></span>
                                                    </span>
                                                </div>
                                            </div>
                                            <div class="col-sm-2">
                                                <button  type="button" class="btn btn-danger" onClick="CourseUnitsForm.deliverDate.value=null"><span class="glyphicon glyphicon-remove"></span></button>
                                            </div>
                                        </div>

                                        <div class="form-group">
                                            <label class="control-label col-sm-2" for="type"><bean:message key="courseunit.assignement.deliver.type"/></label>
                                            <div class="col-sm-10">
                                                <html:select styleId="type" styleClass="form-control" property="courseUnitAssignementView.deliverType">
                                                    <html:option value="file" key="courseunit.assignement.deliver.type.file"/>
                                                    <html:option value="nofile" key="courseunit.assignement.deliver.type.nofile"/>
                                                </html:select>
                                            </div>
                                        </div>

                                        <div class="form-group">
                                            <label class="control-label col-sm-2" for="permission"><bean:message key="courseunit.assignement.deliver.late.permission"/></label>
                                            <div class="col-sm-10">
                                                <html:select styleId="permission" styleClass="form-control" property="courseUnitAssignementView.lateDelivers">
                                                    <html:option value="true" key="yes"/>
                                                    <html:option value="false" key="no"/>
                                                </html:select>
                                            </div>
                                        </div>

                                        <div class="form-group">
                                            <label class="control-label col-sm-2" for="desc"><bean:message key="courseunit.description"/></label>
                                            <div class="col-sm-10">
                                                <html:textarea  styleId="desc" styleClass="form-control" property="courseUnitAssignementView.description"/>
                                            </div>
                                        </div>

                                        <div class="form-group">
                                            <label class="control-label col-sm-2" for="fileA"><bean:message key="courseunit.assignement.file"/></label>
                                            <div class="col-sm-10">
                                                <html:file styleId="fileA" styleClass="form-control" property="uploadFile"/>
                                            </div>
                                        </div>

                                        <div class="form-group">
                                            <label class="control-label col-sm-2" for="status"><bean:message key="courseunit.status"/></label>
                                            <div class="col-sm-10">
                                                <html:select styleId="status" styleClass="form-control" property="courseUnitAssignementView.status">
                                                    <html:option value="true">
                                                        <bean:message key="status.active"/>
                                                    </html:option>
                                                    <html:option value="false">
                                                        <bean:message key="status.inactive"/>
                                                    </html:option>
                                                </html:select>
                                            </div>
                                        </div>

                                        <button type="button" class="btn btn-success" onclick="this.form.submit()"><bean:message key="confirm"/></button>
                                        <button type="button" class="btn btn-danger" data-dismiss="modal"><bean:message key="cancel"/></button>

                                    </html:form>
                        </div>
                    </div>

                </div>
            </div>

        </baco:canManage>

    <logic:notEmpty name="CourseUnitView" property="courseUnitAssignements">
        <table id="myTable" class="tablesorterfiltered">
            <thead>
            <tr>
                <th><bean:message key="saveDate"/></th>
                <th><bean:message key="courseunit.title"/></th>
                <th><bean:message key="courseunit.assignement.file"/></th>
                <th><bean:message key="courseunit.assignement.deliver.date"/></th>
                <th><bean:message key="courseunit.assignement.deliver.late.permission"/></th>
                <th><bean:message key="courseunit.assignement.deliver.type"/></th>
                <baco:canManage name="CourseUnitView">
                    <%
                        request.setAttribute("colspanAssignement",6);
                    %>
                    <th><bean:message key="courseunit.status"/></th>
                    <th><bean:message key="courseunit.assignement.delivers"/></th>
                    <th class="filter-false" data-sorter="false" colspan="3"><bean:message key="manage"/></th>
                </baco:canManage>
                <baco:isStudentOfCourseUnit courseUnitId="${CourseUnitView.id}">
                    <%
                        request.setAttribute("colspanAssignement",8);
                    %>
                    <th><bean:message key="courseunit.assignement.deliver"/></th>
                    <th><bean:message key="courseunit.assignement.deliver.time"/></th>
                    <th><bean:message key="courseunit.assignement.deliver.grade"/></th>
                    <th><bean:message key="courseunit.assignement.deliver.obs"/></th>
                </baco:isStudentOfCourseUnit>
            </tr>
            </thead>
            <tbody>
            <logic:iterate id="work" name="CourseUnitView" property="courseUnitAssignements" type="pt.estgp.estgweb.domain.views.CourseUnitAssignementView">
                <%
                    String disabledClass = "";
                    if(!work.isStatus())
                    {
                        disabledClass = "workDisabled";
                    }
                %>
                <tr>
                    <td class="<%=disabledClass%>" align="right">
                        <a >${work.formatedSaveDate}</a>
                    </td>
                    <td class="<%=disabledClass%>">
                        <a href="javascript:showOrHideOne('assignement${work.id}')">${work.title}</a>
                        <div style="padding:5px;border:1px solid gray" class="workdesc" id="assignement${work.id}" style="<%=Globals.HIDDEN%>">
                                ${work.formatedDescription}
                        </div>
                    </td>
                    <td class="<%=disabledClass%>">
                        <logic:notEmpty name="work" property="workFile">
                            <a target="_blank" href="<%=request.getContextPath()%>/repositoryStream/${work.workFile}">${work.repositoryFile.lastVersion.name} (${work.repositoryFile.lastVersion.sizeKb} Kb)</a>
                        </logic:notEmpty>
                    </td>
                    <%
                        String deliverDateStyleClass;
                        if(work.isActive())
                            deliverDateStyleClass = "active";
                        else
                            deliverDateStyleClass = "inactive";
                    %>
                    <td class="<%=deliverDateStyleClass%> number <%=disabledClass%>">
                            ${work.deliverDate}
                    </td>
                    <td class="<%=disabledClass%>">
                        <logic:equal value="true" name="work" property="lateDelivers">
                            <bean:message key="yes"/>
                        </logic:equal>
                        <logic:notEqual value="true" name="work" property="lateDelivers">
                            <bean:message key="no"/>
                        </logic:notEqual>
                    </td>
                    <td class="<%=disabledClass%>">
                        <bean:message key="courseunit.assignement.deliver.type.${work.deliverType}"/>
                    </td>
                    <baco:canManage name="CourseUnitView">
                        <td class="<%=disabledClass%>">
                            <logic:equal value="true" name="work" property="status">
                                <bean:message key="status.active"/>
                            </logic:equal>
                            <logic:notEqual value="true" name="work" property="status">
                                <bean:message key="status.inactive"/>
                            </logic:notEqual>
                        </td>
                        <td class="number <%=disabledClass%>">
                            <logic:greaterThan value="0" name="work" property="delivers">
                                <html:link action="/user/startLoadCourseUnitAssignementFromHome?courseUnitAssignementView.id=${work.id}">${work.delivers}</html:link>
                            </logic:greaterThan>
                            <logic:equal value="0" name="work" property="delivers">
                                ${work.delivers}
                            </logic:equal>
                        </td>
                        <td>
                            <html:link styleClass="btn btn-default btn-sm" action="/user/startEditCourseUnitWorksFromHome?courseUnitAssignementView.id=${work.id}&courseUnitView.id=${CourseUnitView.id}">
                                <span class="glyphicon glyphicon-pencil"></span>
                            </html:link>
                        </td>
                        <td>
                            <logic:equal value="true" name="work" property="status">
                                <a class="btn btn-success btn-sm" href="<%=request.getContextPath()%>/user/startValidateInvalidateCourseUnitWorksFromHome.do?courseUnitAssignementView.id=${work.id}">
                                    <span class="glyphicon glyphicon-ok-circle"></span>
                                </a>
                            </logic:equal>
                            <logic:notEqual value="true" name="work" property="status">
                                <a class="btn btn-warning btn-sm" href="<%=request.getContextPath()%>/user/startValidateInvalidateCourseUnitWorksFromHome.do?courseUnitAssignementView.id=${work.id}">
                                    <span class="glyphicon glyphicon-ban-circle"></span>
                                </a>
                            </logic:notEqual>
                        </td>
                        <%
                            String confirmDelete = MessageResources.getMessage(request, "courseunitwork.confirm.delete");
                            request.setAttribute("confirmDelete", confirmDelete);
                        %>
                        <td>
                            <logic:equal value="0" name="work" property="delivers">

                                <html:link styleClass="btn btn-danger btn-sm" onclick="return confirm('${confirmDelete}')"  action="/user/startDeleteCourseUnitWorksFromHome?courseUnitAssignementView.id=${work.id}">
                                    <span class="glyphicon glyphicon-remove"></span>
                                </html:link>
                            </logic:equal>
                            <logic:notEqual value="0" name="work" property="delivers">
                                <%--<bean:message key="delete"/>--%>
                            </logic:notEqual>
                        </td>
                    </baco:canManage>
                    <baco:isStudentOfCourseUnit courseUnitId="${CourseUnitView.id}">
                        <td nowrap="nowrap">

                            <%
                                if(work.canDeliver(request))
                                {
                            %>
                            <html:form action="/user/courseUnitControllerFromHome" enctype="multipart/form-data">
                                <input type="hidden" name="dispatch" value="deliverWork">
                                <html:hidden property="courseUnitAssignementView.id" value="${work.id}"/>
                                <html:hidden property="courseUnitView.id" value="${CourseUnitView.id}"/>
                                <html:file property="uploadFile"/>
                                <logic:notEmpty name="work" property="courseUnitDeliverableView">
                                    <input type="submit" value="<bean:message key="replace"/>"/>
                                </logic:notEmpty>
                                <logic:empty name="work" property="courseUnitDeliverableView">
                                    <input type="submit" value="<bean:message key="courseunit.assignement.deliver"/>"/>
                                </logic:empty>
                            </html:form>
                            <%
                                }
                            %>

                        </td>
                        <logic:empty name="work" property="courseUnitDeliverableView">
                            <td class="statusWARNING">
                                <bean:message key="courseunit.assignement.deliver.time.no"/>
                            </td>
                        </logic:empty>
                        <logic:notEmpty name="work" property="courseUnitDeliverableView">
                            <logic:equal name="work" property="lateDeliver" value="true">
                                <td class="statusERROR">
                                    <bean:message key="courseunit.assignement.deliver.time.late"/>
                                </td>
                            </logic:equal>
                            <logic:notEqual name="work" property="lateDeliver" value="true">
                                <td class="statusOK">
                                    <bean:message key="courseunit.assignement.deliver.time.ok"/>
                                </td>
                            </logic:notEqual>
                        </logic:notEmpty>
                        <td>
                                ${work.courseUnitDeliverableView.grade}
                        </td>
                        <td>
                                ${work.courseUnitDeliverableView.obs}
                        </td>
                    </baco:isStudentOfCourseUnit>
                    <logic:notEmpty name="work" property="courseUnitDeliverableView">
                        <td>
                            <a target="_blank" href="<%=request.getContextPath()%>/repositoryStream/${work.courseUnitDeliverableView.fileStreamId}"><bean:message key="courseunit.assignement.deliver.version"/> (${work.courseUnitDeliverableView.deliverDateStr})</a>
                        </td>
                    </logic:notEmpty>
                </tr>
            </logic:iterate>
            </tbody>
        </table>
    </logic:notEmpty>
    <logic:empty name="CourseUnitView" property="courseUnitAssignements">
        <bean:message key="courseunit.works.zero"/>
    </logic:empty>

    </div>
</div>