Skip to content

Commit fe79061

Browse files
committed
HW08 Second Patch
1 parent eee8152 commit fe79061

3 files changed

Lines changed: 20 additions & 28 deletions

File tree

src/main/webapp/WEB-INF/jsp/mealList.jsp

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -63,16 +63,16 @@
6363
</thead>
6464
<c:forEach items="${mealList}" var="meal">
6565
<jsp:useBean id="meal" scope="page" type="ru.javawebinar.topjava.to.UserMealWithExceed"/>
66-
<tr class="${meal.exceed ? 'exceeded' : 'normal'}">
66+
<tr class="${meal.exceed ? 'exceeded' : 'normal'}" id="${meal.id}">
6767
<td>
6868
<%--<fmt:parseDate value="${meal.dateTime}" pattern="y-M-dd'T'H:m" var="parsedDate"/>--%>
6969
<%--<fmt:formatDate value="${parsedDate}" pattern="yyyy.MM.dd HH:mm" />--%>
7070
<%=TimeUtil.toString(meal.getDateTime())%>
7171
</td>
7272
<td>${meal.description}</td>
7373
<td>${meal.calories}</td>
74-
<td><a class="btn btn-xs btn-primary edit" id="${meal.id}">Edit</a></td>
75-
<td><a class="btn btn-xs btn-danger delete" id="${meal.id}">Delete</a></td>
74+
<td><a class="btn btn-xs btn-primary edit">Edit</a></td>
75+
<td><a class="btn btn-xs btn-danger delete">Delete</a></td>
7676
</tr>
7777
</c:forEach>
7878
</table>
@@ -136,9 +136,7 @@
136136
<script type="text/javascript" src="resources/js/datatablesUtil.js"></script>
137137
<script type="text/javascript">
138138
var ajaxUrl = 'ajax/profile/meals/';
139-
140-
var oTable_datatable;
141-
var oTable_datatable_params;
139+
var datatableApi;
142140
143141
function updateTable() {
144142
$.ajax({
@@ -153,8 +151,7 @@
153151
}
154152
155153
$(function () {
156-
oTable_datatable = $('#datatable');
157-
oTable_datatable_params = {
154+
datatableApi = $('#datatable').DataTable({
158155
"bPaginate": false,
159156
"bInfo": false,
160157
"aoColumns": [
@@ -182,8 +179,7 @@
182179
"desc"
183180
]
184181
]
185-
};
186-
oTable_datatable.dataTable(oTable_datatable_params);
182+
});
187183
188184
$('#filter').submit(function () {
189185
updateTable();

src/main/webapp/WEB-INF/jsp/userList.jsp

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -32,17 +32,17 @@
3232
</thead>
3333
<c:forEach items="${userList}" var="user">
3434
<jsp:useBean id="user" scope="page" type="ru.javawebinar.topjava.model.User"/>
35-
<tr>
35+
<tr id="${user.id}">
3636
<td><c:out value="${user.name}"/></td>
3737
<td><a href="mailto:${user.email}">${user.email}</a></td>
3838
<td>${user.roles}</td>
3939
<td>
4040
<input type="checkbox"
41-
<c:if test="${user.enabled}">checked</c:if> id="${user.id}" onclick="enable($(this))"/>
41+
<c:if test="${user.enabled}">checked</c:if> onclick="enable($(this))"/>
4242
</td>
4343
<td><fmt:formatDate value="${user.registered}" pattern="dd-MMMM-yyyy"/></td>
44-
<td><a class="btn btn-xs btn-primary edit" id="${user.id}">Edit</a></td>
45-
<td><a class="btn btn-xs btn-danger delete" id="${user.id}">Delete</a></td>
44+
<td><a class="btn btn-xs btn-primary edit">Edit</a></td>
45+
<td><a class="btn btn-xs btn-danger delete">Delete</a></td>
4646
</tr>
4747
</c:forEach>
4848
</table>
@@ -107,8 +107,7 @@
107107
<script type="text/javascript">
108108
109109
var ajaxUrl = 'ajax/admin/users/';
110-
var oTable_datatable;
111-
var oTable_datatable_params;
110+
var datatableApi;
112111
113112
function updateTable() {
114113
$.get(ajaxUrl, function (data) {
@@ -117,8 +116,7 @@
117116
}
118117
119118
$(function () {
120-
oTable_datatable = $('#datatable');
121-
oTable_datatable_params = {
119+
datatableApi = $('#datatable').DataTable({
122120
"bPaginate": false,
123121
"bInfo": false,
124122
"aoColumns": [
@@ -152,9 +150,7 @@
152150
"asc"
153151
]
154152
]
155-
};
156-
157-
oTable_datatable.dataTable(oTable_datatable_params);
153+
});
158154
makeEditable();
159155
init();
160156
});

src/main/webapp/resources/js/datatablesUtil.js

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ function makeEditable() {
66
});
77

88
$('.delete').click(function () {
9-
deleteRow($(this).attr("id"));
9+
deleteRow($(this).closest('tr').attr("id"));
1010
});
1111

1212
$('#detailsForm').submit(function () {
@@ -32,9 +32,10 @@ function deleteRow(id) {
3232

3333
function enable(chkbox) {
3434
var enabled = chkbox.is(":checked");
35-
chkbox.closest('tr').css("text-decoration", enabled ? "none" : "line-through");
35+
var row = chkbox.closest('tr');
36+
row.css("text-decoration", enabled ? "none" : "line-through");
3637
$.ajax({
37-
url: ajaxUrl + chkbox.attr('id'),
38+
url: ajaxUrl + row.attr('id'),
3839
type: 'POST',
3940
data: 'enabled=' + enabled,
4041
success: function () {
@@ -44,17 +45,16 @@ function enable(chkbox) {
4445
}
4546

4647
function updateTableByData(data) {
47-
oTable_datatable.fnClearTable();
48+
datatableApi.clear();
4849
$.each(data, function (key, item) {
49-
oTable_datatable.fnAddData(item);
50+
datatableApi.row.add(item);
5051
});
51-
oTable_datatable.fnDraw();
52+
datatableApi.draw();
5253
init();
5354
}
5455

5556
function save() {
5657
var form = $('#detailsForm');
57-
debugger;
5858
$.ajax({
5959
type: "POST",
6060
url: ajaxUrl,

0 commit comments

Comments
 (0)