Subversion Repositories bacoAlunos

Rev

Rev 1634 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1634 Rev 1635
1
<%@ page import="pt.estgp.estgweb.domain.Teacher" %>
1
<%@ page import="pt.estgp.estgweb.domain.Teacher" %>
2
<%@ page import="pt.estgp.estgweb.domain.TeacherImpl" %>
2
<%@ page import="pt.estgp.estgweb.domain.TeacherImpl" %>
3
<%@ page import="jomm.utils.MessageResources" %>
3
<%@ page import="jomm.utils.MessageResources" %>
4
<%@ page import="java.util.Collections" %>
4
<%@ page import="java.util.Collections" %>
5
<%@ page import="pt.estgp.estgweb.domain.views.utils.CourseUnitDeliverableComparator" %>
5
<%@ page import="pt.estgp.estgweb.domain.views.utils.CourseUnitDeliverableComparator" %>
6
<%@ page import="org.json.JSONObject" %>
6
<%@ page import="org.json.JSONObject" %>
7
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
7
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
8
<%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html" %>
8
<%@ taglib uri="/WEB-INF/tlds/struts-html.tld" prefix="html" %>
9
<%@ taglib uri="/WEB-INF/tlds/struts-nested.tld" prefix="nested" %>
9
<%@ taglib uri="/WEB-INF/tlds/struts-nested.tld" prefix="nested" %>
10
<%@ taglib uri="/WEB-INF/tlds/struts-logic.tld" prefix="logic" %>
10
<%@ taglib uri="/WEB-INF/tlds/struts-logic.tld" prefix="logic" %>
11
<%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
11
<%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
12
<%@ taglib uri="/WEB-INF/tlds/struts-tiles.tld" prefix="tiles" %>
12
<%@ taglib uri="/WEB-INF/tlds/struts-tiles.tld" prefix="tiles" %>
13
<%@ taglib uri="/WEB-INF/tlds/baco.tld" prefix="baco" %>
13
<%@ taglib uri="/WEB-INF/tlds/baco.tld" prefix="baco" %>
14
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
14
<%@ taglib uri="/WEB-INF/tlds/jomm.tld" prefix="jomm" %>
15
<jsp:useBean id="CourseUnitsForm" type="pt.estgp.estgweb.web.form.courseunits.CourseUnitsForm" scope="request"/>
15
<jsp:useBean id="CourseUnitsForm" type="pt.estgp.estgweb.web.form.courseunits.CourseUnitsForm" scope="request"/>
16
<jsp:useBean id="CourseUnitView" type="pt.estgp.estgweb.domain.views.CourseUnitView" scope="request"/>
16
<jsp:useBean id="CourseUnitView" type="pt.estgp.estgweb.domain.views.CourseUnitView" scope="request"/>
17
<jsp:useBean id="CourseUnitAssignementView" type="pt.estgp.estgweb.domain.views.CourseUnitAssignementView" scope="request"/>
17
<jsp:useBean id="CourseUnitAssignementView" type="pt.estgp.estgweb.domain.views.CourseUnitAssignementView" scope="request"/>
18
<jsp:useBean id="UserSession" type="pt.estgp.estgweb.domain.UserSession" scope="request"/>
18
<jsp:useBean id="UserSession" type="pt.estgp.estgweb.domain.UserSession" scope="request"/>
19
<div id="contentIntranet">
19
<div id="contentIntranet">
20
<div id="contentPane">
20
<div id="contentPane">
21
<html:errors/>
21
<html:errors/>
22
<jomm:messages/>
22
<jomm:messages/>
23
 
23
 
24
<div class="panel panel-default">
24
<div class="panel panel-default">
25
    <div class="panel-heading">
25
    <div class="panel-heading">
26
        <bean:message key="courseunit.assignement" arg0="${CourseUnitAssignementView.title}"/>
26
        <bean:message key="courseunit.assignement" arg0="${CourseUnitAssignementView.title}"/>
27
    </div>
27
    </div>
28
    <div class="panel-body">
28
    <div class="panel-body">
29
        <table class="tablesorter-blue">
29
        <table class="tablesorter-blue">
30
            <tr>
30
            <tr>
31
                <th>
31
                <th>
32
                    <bean:message key="courseunit.title"/>
32
                    <bean:message key="courseunit.title"/>
33
                </th>
33
                </th>
34
                <td>
34
                <td>
35
                    <bean:write name="CourseUnitAssignementView" property="title"/>
35
                    <bean:write name="CourseUnitAssignementView" property="title"/>
36
                </td>
36
                </td>
37
            </tr>
37
            </tr>
38
            <tr>
38
            <tr>
39
                <th>
39
                <th>
40
                    <bean:message key="courseunit.assignement.deliver.date"/>
40
                    <bean:message key="courseunit.assignement.deliver.date"/>
41
                </th>
41
                </th>
42
                <td>
42
                <td>
43
                    <bean:write name="CourseUnitAssignementView" property="deliverDate"/>
43
                    <bean:write name="CourseUnitAssignementView" property="deliverDate"/>
44
                </td>
44
                </td>
45
            </tr>
45
            </tr>
46
            <tr>
46
            <tr>
47
                <th>
47
                <th>
48
                    <bean:message key="courseunit.assignement.deliver.type"/>
48
                    <bean:message key="courseunit.assignement.deliver.type"/>
49
                </th>
49
                </th>
50
                <td>
50
                <td>
51
                    <bean:message key="courseunit.assignement.deliver.type.${CourseUnitAssignementView.deliverType}"/>
51
                    <bean:message key="courseunit.assignement.deliver.type.${CourseUnitAssignementView.deliverType}"/>
52
                </td>
52
                </td>
53
            </tr>
53
            </tr>
54
            <tr>
54
            <tr>
55
                <th>
55
                <th>
56
                    <bean:message key="courseunit.assignement.deliver.late.permission"/>
56
                    <bean:message key="courseunit.assignement.deliver.late.permission"/>
57
                </th>
57
                </th>
58
                <td>
58
                <td>
59
                    <logic:equal value="true" name="CourseUnitAssignementView" property="lateDelivers">
59
                    <logic:equal value="true" name="CourseUnitAssignementView" property="lateDelivers">
60
                        <bean:message key="yes"/>
60
                        <bean:message key="yes"/>
61
                    </logic:equal>
61
                    </logic:equal>
62
                    <logic:notEqual value="true" name="CourseUnitAssignementView" property="lateDelivers">
62
                    <logic:notEqual value="true" name="CourseUnitAssignementView" property="lateDelivers">
63
                        <bean:message key="no"/>
63
                        <bean:message key="no"/>
64
                    </logic:notEqual>
64
                    </logic:notEqual>
65
                </td>
65
                </td>
66
            </tr>
66
            </tr>
67
            <tr>
67
            <tr>
68
                <th>
68
                <th>
69
                    <bean:message key="courseunit.description"/>
69
                    <bean:message key="courseunit.description"/>
70
                </th>
70
                </th>
71
                <td>
71
                <td>
72
                    ${CourseUnitAssignementView.formatedDescription}
72
                    ${CourseUnitAssignementView.formatedDescription}
73
                </td>
73
                </td>
74
            </tr>
74
            </tr>
75
            <tr>
75
            <tr>
76
                <th>
76
                <th>
77
                    <bean:message key="courseunit.status"/>
77
                    <bean:message key="courseunit.status"/>
78
                </th>
78
                </th>
79
                <td>
79
                <td>
80
                    <logic:equal value="true" name="CourseUnitAssignementView" property="status">
80
                    <logic:equal value="true" name="CourseUnitAssignementView" property="status">
81
                        <bean:message key="status.active"/>
81
                        <bean:message key="status.active"/>
82
                    </logic:equal>
82
                    </logic:equal>
83
                    <logic:notEqual value="true" name="CourseUnitAssignementView" property="status">
83
                    <logic:notEqual value="true" name="CourseUnitAssignementView" property="status">
84
                        <bean:message key="status.inactive"/>
84
                        <bean:message key="status.inactive"/>
85
                    </logic:notEqual>
85
                    </logic:notEqual>
86
                </td>
86
                </td>
87
            </tr>
87
            </tr>
88
            <logic:notEmpty name="CourseUnitAssignementView" property="workFile">
88
            <logic:notEmpty name="CourseUnitAssignementView" property="workFile">
89
                <tr>
89
                <tr>
90
                    <th>
90
                    <th>
91
                        <bean:message key="courseunit.assignement.file"/>
91
                        <bean:message key="courseunit.assignement.file"/>
92
                    </th>
92
                    </th>
93
                    <td>
93
                    <td>
94
                        <a target="_blank" href="<%=request.getContextPath()%>/repositoryStream/${CourseUnitAssignementView.workFile}"><bean:message key="courseunit.assignement.file"/></a>
94
                        <a target="_blank" href="<%=request.getContextPath()%>/repositoryStream/${CourseUnitAssignementView.workFile}"><bean:message key="courseunit.assignement.file"/></a>
95
                    </td>
95
                    </td>
96
                </tr>
96
                </tr>
97
            </logic:notEmpty>
97
            </logic:notEmpty>
98
        </table>
98
        </table>
99
 
99
 
100
 
100
 
101
 
101
 
102
<bean:define id="orderFirst" type="java.lang.String" scope="request" value=""/>
102
<bean:define id="orderFirst" type="java.lang.String" scope="request" value=""/>
103
<bean:define id="orderLast" type="java.lang.String" scope="request" value=""/>
103
<bean:define id="orderLast" type="java.lang.String" scope="request" value=""/>
104
 
104
 
105
<%
105
<%
106
//    String orderFirst = "";
106
//    String orderFirst = "";
107
//    String orderLast = "";
107
//    String orderLast = "";
108
 
108
 
109
    if (request.getParameter("sort") != null) {
109
    if (request.getParameter("sort") != null) {
110
        String sortBy = request.getParameter("sort");
110
        String sortBy = request.getParameter("sort");
111
        if (sortBy.equals("firstAsc"))
111
        if (sortBy.equals("firstAsc"))
112
        {
112
        {
113
            Collections.sort(CourseUnitAssignementView.getDeliverables(), CourseUnitDeliverableComparator.FIRST_VERSION_ASC);
113
            Collections.sort(CourseUnitAssignementView.getDeliverables(), CourseUnitDeliverableComparator.FIRST_VERSION_ASC);
114
%>
114
%>
115
<bean:define id="orderFirst" type="java.lang.String" scope="request" value="firstDesc"/>
115
<bean:define id="orderFirst" type="java.lang.String" scope="request" value="firstDesc"/>
116
<bean:define id="orderLast" type="java.lang.String" scope="request" value="lastAsc"/>
116
<bean:define id="orderLast" type="java.lang.String" scope="request" value="lastAsc"/>
117
<%
117
<%
118
        }
118
        }
119
        else if (sortBy.equals("firstDesc"))
119
        else if (sortBy.equals("firstDesc"))
120
        {
120
        {
121
            Collections.sort(CourseUnitAssignementView.getDeliverables(), CourseUnitDeliverableComparator.FIRST_VERSION_DESC);
121
            Collections.sort(CourseUnitAssignementView.getDeliverables(), CourseUnitDeliverableComparator.FIRST_VERSION_DESC);
122
%>
122
%>
123
<bean:define id="orderFirst" type="java.lang.String" scope="request" value="firstAsc"/>
123
<bean:define id="orderFirst" type="java.lang.String" scope="request" value="firstAsc"/>
124
<bean:define id="orderLast" type="java.lang.String" scope="request" value="lastAsc"/>
124
<bean:define id="orderLast" type="java.lang.String" scope="request" value="lastAsc"/>
125
<%
125
<%
126
        }
126
        }
127
        else if (sortBy.equals("lastAsc"))
127
        else if (sortBy.equals("lastAsc"))
128
        {
128
        {
129
            Collections.sort(CourseUnitAssignementView.getDeliverables(), CourseUnitDeliverableComparator.LAST_VERSION_ASC);
129
            Collections.sort(CourseUnitAssignementView.getDeliverables(), CourseUnitDeliverableComparator.LAST_VERSION_ASC);
130
%>
130
%>
131
<bean:define id="orderLast" type="java.lang.String" scope="request" value="lastDesc"/>
131
<bean:define id="orderLast" type="java.lang.String" scope="request" value="lastDesc"/>
132
<bean:define id="orderFirst" type="java.lang.String" scope="request" value="firstAsc"/>
132
<bean:define id="orderFirst" type="java.lang.String" scope="request" value="firstAsc"/>
133
<%
133
<%
134
         }
134
         }
135
        else if (sortBy.equals("lastDesc"))
135
        else if (sortBy.equals("lastDesc"))
136
        {
136
        {
137
            Collections.sort(CourseUnitAssignementView.getDeliverables(), CourseUnitDeliverableComparator.LAST_VERSION_DESC);
137
            Collections.sort(CourseUnitAssignementView.getDeliverables(), CourseUnitDeliverableComparator.LAST_VERSION_DESC);
138
%>
138
%>
139
<bean:define id="orderLast" type="java.lang.String" scope="request" value="lastAsc"/>
139
<bean:define id="orderLast" type="java.lang.String" scope="request" value="lastAsc"/>
140
<bean:define id="orderFirst" type="java.lang.String" scope="request" value="firstAsc"/>
140
<bean:define id="orderFirst" type="java.lang.String" scope="request" value="firstAsc"/>
141
<%
141
<%
142
         }
142
         }
143
        else
143
        else
144
        {
144
        {
145
%>
145
%>
146
<bean:define id="orderFirst" type="java.lang.String" scope="request" value="firstAsc"/>
146
<bean:define id="orderFirst" type="java.lang.String" scope="request" value="firstAsc"/>
147
<bean:define id="orderLast" type="java.lang.String" scope="request" value="lastAsc"/>
147
<bean:define id="orderLast" type="java.lang.String" scope="request" value="lastAsc"/>
148
 
148
 
149
<%
149
<%
150
        }
150
        }
151
    }
151
    }
152
 
152
 
153
%>
153
%>
154
 
154
 
155
<%
155
<%
156
    StringBuilder deliverInfoCsv = new StringBuilder();
156
    StringBuilder deliverInfoCsv = new StringBuilder();
157
%>
157
%>
158
 
158
 
159
<nested:form action="/user/courseUnitControllerFromHome">
159
<nested:form action="/user/courseUnitControllerFromHome">
160
    <input type="hidden" name="dispatch" value="updateDeliverables">
160
    <input type="hidden" name="dispatch" value="updateDeliverables">
161
    <html:hidden property="courseUnitAssignementView.id" value="${CourseUnitAssignementView.id}"/>
161
    <html:hidden property="courseUnitAssignementView.id" value="${CourseUnitAssignementView.id}"/>
162
 
162
 
163
    <html:hidden property="courseUnitView.id" value="${CourseUnitView.id}"/>
163
    <html:hidden property="courseUnitView.id" value="${CourseUnitView.id}"/>
164
 
164
 
165
    <a name="works"> </a>
165
    <a name="works"> </a>
166
    <table class="tablesorter-blue">
166
    <table class="tablesorter-blue">
167
        <thead>
167
        <thead>
168
            <tr>
168
            <tr>
169
                <th><bean:message key="courseunit.assignement.delivered.versions"/></th>
169
                <th><bean:message key="courseunit.assignement.delivered.versions"/></th>
170
                <th><bean:message key="courseunit.assignement.delivered.date.first.version"/></th>
170
                <th><bean:message key="courseunit.assignement.delivered.date.first.version"/></th>
171
                <th><bean:message key="courseunit.assignement.delivered.date"/></th>
171
                <th><bean:message key="courseunit.assignement.delivered.date"/></th>
172
                <th><bean:message key="courseunit.assignement.deliver.time"/></th>
172
                <th><bean:message key="courseunit.assignement.deliver.time"/></th>
173
                <th><bean:message key="number"/></th>
173
                <th><bean:message key="number"/></th>
174
                <th><bean:message key="name"/></th>
174
                <th><bean:message key="name"/></th>
175
                <th><bean:message key="courseunit.assignement.deliver.version"/></th>
175
                <th><bean:message key="courseunit.assignement.deliver.version"/></th>
176
                <th><bean:message key="courseunit.assignement.deliver.grade"/></th>
176
                <th><bean:message key="courseunit.assignement.deliver.grade"/></th>
177
                <th><bean:message key="courseunit.assignement.deliver.obs"/></th>
177
                <th><bean:message key="courseunit.assignement.deliver.obs"/></th>
178
            </tr>
178
            </tr>
179
        </thead>
179
        </thead>
180
        <%
180
        <%
181
            deliverInfoCsv.append("Total de Versões Entregues").append(";");
181
            deliverInfoCsv.append("Total de Versões Entregues").append(";");
182
            deliverInfoCsv.append("Data de Entrega da Primeira Versão").append(";");
182
            deliverInfoCsv.append("Data de Entrega da Primeira Versão").append(";");
183
            deliverInfoCsv.append("Data de Entrega").append(";");
183
            deliverInfoCsv.append("Data de Entrega").append(";");
184
            deliverInfoCsv.append("Entregue").append(";");
184
            deliverInfoCsv.append("Entregue").append(";");
185
            deliverInfoCsv.append("Número").append(";");
185
            deliverInfoCsv.append("Número").append(";");
186
            deliverInfoCsv.append("Nome").append(";");
186
            deliverInfoCsv.append("Nome").append(";");
187
            deliverInfoCsv.append("Nota").append(";");
187
            deliverInfoCsv.append("Nota").append(";");
188
            deliverInfoCsv.append("Observações").append(";");
188
            deliverInfoCsv.append("Observações").append(";");
189
            deliverInfoCsv.append("\n");
189
            deliverInfoCsv.append("\n");
190
 
190
 
191
        %>
191
        %>
192
        <tbody>
192
        <tbody>
193
        <nested:iterate id="deliverable" property="courseUnitAssignementView.deliverables" type="pt.estgp.estgweb.domain.views.CourseUnitDeliverableView">
193
        <nested:iterate id="deliverable" property="courseUnitAssignementView.deliverables" type="pt.estgp.estgweb.domain.views.CourseUnitDeliverableView">
194
            <%
194
            <%
195
                deliverInfoCsv.append(deliverable.getVersionsSize()).append(";");
195
                deliverInfoCsv.append(deliverable.getVersionsSize()).append(";");
196
                deliverInfoCsv.append(deliverable.getDeliverDateMinutesSecondsStrFirstVersion()).append(";");
196
                deliverInfoCsv.append(deliverable.getDeliverDateMinutesSecondsStrFirstVersion()).append(";");
197
                deliverInfoCsv.append(deliverable.getDeliverDateStrMinutesSeconds()).append(";");
197
                deliverInfoCsv.append(deliverable.getDeliverDateStrMinutesSeconds()).append(";");
198
                if(deliverable.isLateDeliver())
198
                if(deliverable.isLateDeliver())
199
                    deliverInfoCsv.append("Entregue a Horas").append(";");
199
                    deliverInfoCsv.append("Entregue a Horas").append(";");
200
                else
200
                else
201
                    deliverInfoCsv.append("Entregua Atrasada").append(";");
201
                    deliverInfoCsv.append("Entregua Atrasada").append(";");
202
                deliverInfoCsv.append(deliverable.getStudent().getCode()).append(";");
202
                deliverInfoCsv.append(deliverable.getStudent().getCode()).append(";");
203
                deliverInfoCsv.append(deliverable.getStudent().getName()).append(";");
203
                deliverInfoCsv.append(deliverable.getStudent().getName()).append(";");
-
 
204
                if(deliverable.getGrade() != null)
204
                deliverInfoCsv.append(deliverable.getGrade()).append(";");
205
                    deliverInfoCsv.append(deliverable.getGrade()).append(";");
-
 
206
                else
-
 
207
                    deliverInfoCsv.append(";");
-
 
208
                if(deliverable.getObs() != null)
205
                deliverInfoCsv.append(deliverable.getObs().replaceAll("\\n"," ")).append(";");
209
                    deliverInfoCsv.append(deliverable.getObs().replaceAll("\\n"," ")).append(";");
-
 
210
                else
-
 
211
                    deliverInfoCsv.append(";");
206
                deliverInfoCsv.append("\n");
212
                deliverInfoCsv.append("\n");
207
 
213
 
208
            %>
214
            %>
209
            <tr>
215
            <tr>
210
                <td align="right">
216
                <td align="right">
211
 
217
 
212
                <a href="javascript:showOrHideOne('work${deliverable.id}')">${deliverable.versionsSize}</a>
218
                <a href="javascript:showOrHideOne('work${deliverable.id}')">${deliverable.versionsSize}</a>
213
                    <div id="work${deliverable.id}" style="display:none;">
219
                    <div id="work${deliverable.id}" style="display:none;">
214
                        <nested:iterate id="version" name="deliverable" property="versions" type="pt.estgp.estgweb.domain.RepositoryFileVersion">
220
                        <nested:iterate id="version" name="deliverable" property="versions" type="pt.estgp.estgweb.domain.RepositoryFileVersion">
215
                           - <bean:message key="courseunit.assignement.deliver.version"/> (${version.saveDate})&nbsp;<br/>
221
                           - <bean:message key="courseunit.assignement.deliver.version"/> (${version.saveDate})&nbsp;<br/>
216
                        </nested:iterate>
222
                        </nested:iterate>
217
                    </div>
223
                    </div>
218
 
224
 
219
                </td>
225
                </td>
220
                <td nowrap="nowrap" align="center">${deliverable.deliverDateMinutesSecondsStrFirstVersion} </td>
226
                <td nowrap="nowrap" align="center">${deliverable.deliverDateMinutesSecondsStrFirstVersion} </td>
221
                <td nowrap="nowrap" align="center">${deliverable.deliverDateStrMinutesSeconds} </td>
227
                <td nowrap="nowrap" align="center">${deliverable.deliverDateStrMinutesSeconds} </td>
222
                <logic:equal name="deliverable" property="lateDeliver" value="true">
228
                <logic:equal name="deliverable" property="lateDeliver" value="true">
223
                    <td>
229
                    <td>
224
                        <label class="statusERROR">
230
                        <label class="statusERROR">
225
                            <bean:message key="courseunit.assignement.deliver.time.late"/>
231
                            <bean:message key="courseunit.assignement.deliver.time.late"/>
226
                        </label>
232
                        </label>
227
                    </td>
233
                    </td>
228
                </logic:equal>
234
                </logic:equal>
229
                <logic:notEqual name="deliverable" property="lateDeliver" value="true">
235
                <logic:notEqual name="deliverable" property="lateDeliver" value="true">
230
                    <td >
236
                    <td >
231
                        <label class="statusOK">
237
                        <label class="statusOK">
232
                            <bean:message key="courseunit.assignement.deliver.time.ok"/>
238
                            <bean:message key="courseunit.assignement.deliver.time.ok"/>
233
                        </label>
239
                        </label>
234
                    </td>
240
                    </td>
235
                </logic:notEqual>
241
                </logic:notEqual>
236
                <td align="right">${deliverable.student.code}</td>
242
                <td align="right">${deliverable.student.code}</td>
237
                <td>${deliverable.student.name}</td>
243
                <td>${deliverable.student.name}</td>
238
                <td><a target="_blank" href="<%=request.getContextPath()%>/repositoryStream/${deliverable.fileStreamId}"><bean:message key="courseunit.assignement.deliver.version"/> (${deliverable.deliverDateMinutesSecondsStr})</a></td>
244
                <td><a target="_blank" href="<%=request.getContextPath()%>/repositoryStream/${deliverable.fileStreamId}"><bean:message key="courseunit.assignement.deliver.version"/> (${deliverable.deliverDateMinutesSecondsStr})</a></td>
239
                <td>
245
                <td>
240
                    <nested:hidden property="id"/>
246
                    <nested:hidden property="id"/>
241
                    <nested:text property="grade"/>
247
                    <nested:text property="grade"/>
242
                </td>
248
                </td>
243
                <td>
249
                <td>
244
                        <%--<a href="javascript:showOrHideOne('obs${deliverable.id}')"><bean:message key="courseunit.assignement.deliver.show.obs"/></a>--%>
250
                        <%--<a href="javascript:showOrHideOne('obs${deliverable.id}')"><bean:message key="courseunit.assignement.deliver.show.obs"/></a>--%>
245
 
251
 
246
                    <nested:textarea styleId="obs${deliverable.id}"  styleClass="textarea" property="obs"/>
252
                    <nested:textarea styleId="obs${deliverable.id}"  styleClass="textarea" property="obs"/>
247
 
253
 
248
                </td>
254
                </td>
249
            </tr>
255
            </tr>
250
        </nested:iterate>
256
        </nested:iterate>
251
 
257
 
252
        </tbody>
258
        </tbody>
253
    </table>
259
    </table>
254
    <input type="button" class="btn btn-success" onclick="this.form.submit()" value="<bean:message key="confirm"/>"/>
260
    <input type="button" class="btn btn-success" onclick="this.form.submit()" value="<bean:message key="confirm"/>"/>
255
</nested:form>
261
</nested:form>
256
 
262
 
257
        <button type="button" class="btn btn-default pull-right" data-toggle="modal" data-target="#modalCsvInfo">Informação da tabela em CSV</button>
263
        <button type="button" class="btn btn-default pull-right" data-toggle="modal" data-target="#modalCsvInfo">Informação da tabela em CSV</button>
258
 
264
 
259
    </div>
265
    </div>
260
</div>
266
</div>
261
 
267
 
262
<div class="modal fade" id="modalCsvInfo" role="dialog" >
268
<div class="modal fade" id="modalCsvInfo" role="dialog" >
263
    <div class="modal-dialog" data-width="960" style="display: block; width: 960px; margin-top: 50px;" aria-hidden="false">
269
    <div class="modal-dialog" data-width="960" style="display: block; width: 960px; margin-top: 50px;" aria-hidden="false">
264
 
270
 
265
        <!-- Modal content-->
271
        <!-- Modal content-->
266
        <div class="modal-content">
272
        <div class="modal-content">
267
            <div class="modal-header clearfix">
273
            <div class="modal-header clearfix">
268
                <h3 class="modal-title">
274
                <h3 class="modal-title">
269
                    <label class="title-wrap">Informação de entregas em formato CSV para importar no EXCEL</label>
275
                    <label class="title-wrap">Informação de entregas em formato CSV para importar no EXCEL</label>
270
                    <button type="button" class="btn btn-danger btn-xs pull-right" data-dismiss="modal"><span class="glyphicon glyphicon-remove small"></span></button>
276
                    <button type="button" class="btn btn-danger btn-xs pull-right" data-dismiss="modal"><span class="glyphicon glyphicon-remove small"></span></button>
271
                </h3>
277
                </h3>
272
            </div>
278
            </div>
273
            <div class="modal-body">
279
            <div class="modal-body">
274
                <p>Selecione o texto e faça copiar. No Excel coloque o cursor numa célula, clique no menu "Editar" e de seguida escolha "Colar Especial", na opção seguinte escolha "Texto".
280
                <p>Selecione o texto e faça copiar. No Excel coloque o cursor numa célula, clique no menu "Editar" e de seguida escolha "Colar Especial", na opção seguinte escolha "Texto".
275
                    Finalmente clique na Caixa que lhe aparece no canto inferior direito do texto colado. Das opções possiveis escolha "Import Wizard".
281
                    Finalmente clique na Caixa que lhe aparece no canto inferior direito do texto colado. Das opções possiveis escolha "Import Wizard".
276
                    No wizard escolha "Delimitado" e "Seguinte".  No ecrão seguinte escolha o carcater separador ";" e desmarque os restantes, faça "Terminar".</p>
282
                    No wizard escolha "Delimitado" e "Seguinte".  No ecrão seguinte escolha o carcater separador ";" e desmarque os restantes, faça "Terminar".</p>
277
                <pre><%=deliverInfoCsv.toString()%></pre>
283
                <pre><%=deliverInfoCsv.toString()%></pre>
278
                <button type="button" class="btn btn-danger" data-dismiss="modal">Sair</button>
284
                <button type="button" class="btn btn-danger" data-dismiss="modal">Sair</button>
279
            </div>
285
            </div>
280
        </div>
286
        </div>
281
    </div>
287
    </div>
282
</div>
288
</div>