|
Lines 1332-1342
Link Here
|
| 1332 |
} |
1332 |
} |
| 1333 |
|
1333 |
|
| 1334 |
[% IF StaffDetailItemSelection %] |
1334 |
[% IF StaffDetailItemSelection %] |
| 1335 |
function itemSelectionBuildDeleteLink(div) { |
1335 |
|
| 1336 |
var itemnumbers = new Array(); |
1336 |
let items_selection = {}; |
| 1337 |
$("input[name='itemnumber'][type='checkbox']:checked", div).each(function() { |
1337 |
function itemSelectionBuildDeleteLink(tab_id) { |
| 1338 |
itemnumbers.push($(this).val()); |
1338 |
var itemnumbers = items_selection[tab_id]; |
| 1339 |
}); |
|
|
| 1340 |
if (itemnumbers.length > 0) { |
1339 |
if (itemnumbers.length > 0) { |
| 1341 |
var url = '/cgi-bin/koha/tools/batchMod.pl?op=show&del=1'; |
1340 |
var url = '/cgi-bin/koha/tools/batchMod.pl?op=show&del=1'; |
| 1342 |
url += '&itemnumber=' + itemnumbers.join('&itemnumber='); |
1341 |
url += '&itemnumber=' + itemnumbers.join('&itemnumber='); |
|
Lines 1349-1359
Link Here
|
| 1349 |
return true |
1348 |
return true |
| 1350 |
} |
1349 |
} |
| 1351 |
|
1350 |
|
| 1352 |
function itemSelectionBuildModifyLink(div) { |
1351 |
function itemSelectionBuildModifyLink(tab_id) { |
| 1353 |
var itemnumbers = new Array(); |
1352 |
var itemnumbers = items_selection[tab_id]; |
| 1354 |
$("input[name='itemnumber'][type='checkbox']:checked", div).each(function() { |
|
|
| 1355 |
itemnumbers.push($(this).val()); |
| 1356 |
}); |
| 1357 |
if (itemnumbers.length > 0) { |
1353 |
if (itemnumbers.length > 0) { |
| 1358 |
var url = '/cgi-bin/koha/tools/batchMod.pl?op=show'; |
1354 |
var url = '/cgi-bin/koha/tools/batchMod.pl?op=show'; |
| 1359 |
url += '&itemnumber=' + itemnumbers.join('&itemnumber='); |
1355 |
url += '&itemnumber=' + itemnumbers.join('&itemnumber='); |
|
Lines 1366-1375
Link Here
|
| 1366 |
return true; |
1362 |
return true; |
| 1367 |
} |
1363 |
} |
| 1368 |
|
1364 |
|
| 1369 |
function itemSelectionBuildActionLinks(tab) { |
1365 |
function itemSelectionBuildActionLinks(tab_id) { |
| 1370 |
var div = $("#" + tab); |
1366 |
var delete_link_ok = itemSelectionBuildDeleteLink(tab_id); |
| 1371 |
var delete_link_ok = itemSelectionBuildDeleteLink(div); |
1367 |
var modify_link_ok = itemSelectionBuildModifyLink(tab_id); |
| 1372 |
var modify_link_ok = itemSelectionBuildModifyLink(div); |
1368 |
var div = $("#" + tab_id); |
| 1373 |
if (modify_link_ok || delete_link_ok) { |
1369 |
if (modify_link_ok || delete_link_ok) { |
| 1374 |
$('.itemselection_actions', div).show(); |
1370 |
$('.itemselection_actions', div).show(); |
| 1375 |
} else { |
1371 |
} else { |
|
Lines 1378-1387
Link Here
|
| 1378 |
} |
1374 |
} |
| 1379 |
|
1375 |
|
| 1380 |
$(document).ready(function() { |
1376 |
$(document).ready(function() { |
| 1381 |
$('table.items_table').each(function() { |
|
|
| 1382 |
var div = $(this).parent().attr("id"); |
| 1383 |
itemSelectionBuildActionLinks(div); |
| 1384 |
}); |
| 1385 |
|
1377 |
|
| 1386 |
$(".SelectAll").on("click",function(e){ |
1378 |
$(".SelectAll").on("click",function(e){ |
| 1387 |
e.preventDefault(); |
1379 |
e.preventDefault(); |
|
Lines 2220-2225
Link Here
|
| 2220 |
[% IF hidden_count %] |
2212 |
[% IF hidden_count %] |
| 2221 |
default_filters.lost_status = "0"; |
2213 |
default_filters.lost_status = "0"; |
| 2222 |
[% END %] |
2214 |
[% END %] |
|
|
2215 |
if ( !items_selection.hasOwnProperty(tab_id) ){ |
| 2216 |
items_selection[tab_id] = []; |
| 2217 |
} |
| 2223 |
var items_table = $("#" + tab_id + '_table').kohaTable({ |
2218 |
var items_table = $("#" + tab_id + '_table').kohaTable({ |
| 2224 |
ajax: { url: item_table_url }, |
2219 |
ajax: { url: item_table_url }, |
| 2225 |
order: [[ 0, "asc" ]], |
2220 |
order: [[ 0, "asc" ]], |
|
Lines 2234-2240
Link Here
|
| 2234 |
orderable: false, |
2229 |
orderable: false, |
| 2235 |
render: function (data, type, row, meta) { |
2230 |
render: function (data, type, row, meta) { |
| 2236 |
if ( can_edit_items_from[row.holding_library_id] ){ |
2231 |
if ( can_edit_items_from[row.holding_library_id] ){ |
| 2237 |
return '<input type="checkbox" value="%s" name="itemnumber" />'.format(row.item_id); |
2232 |
if ( items_selection[tab_id].includes(row.item_id) ) { |
|
|
2233 |
return '<input type="checkbox" value="%s" name="itemnumber" checked />'.format(row.item_id); |
| 2234 |
} else { |
| 2235 |
return '<input type="checkbox" value="%s" name="itemnumber" />'.format(row.item_id); |
| 2236 |
} |
| 2238 |
} else { |
2237 |
} else { |
| 2239 |
return '' |
2238 |
return '' |
| 2240 |
} |
2239 |
} |
|
Lines 2686-2696
Link Here
|
| 2686 |
}); |
2685 |
}); |
| 2687 |
itemSelectionBuildActionLinks(tab_id); |
2686 |
itemSelectionBuildActionLinks(tab_id); |
| 2688 |
}, |
2687 |
}, |
|
|
2688 |
[% IF StaffDetailItemSelection %] |
| 2689 |
drawCallback: function(settings){ |
2689 |
drawCallback: function(settings){ |
| 2690 |
$(this).find("td:first input[name='itemnumber'][type='checkbox']").on("change", function(){ |
2690 |
var api = new $.fn.dataTable.Api(settings) |
| 2691 |
itemSelectionBuildActionLinks(tab_id); |
2691 |
$.each( |
| 2692 |
}); |
2692 |
$(this).find("tbody tr td:first-child"), |
|
|
2693 |
function (index, e) { |
| 2694 |
let tr = $(this).parent() |
| 2695 |
let row = api.row(tr).data() |
| 2696 |
if (!row) return // Happen if the table is empty |
| 2697 |
$(this).find("input[name='itemnumber'][type='checkbox']").on("change", function(){ |
| 2698 |
let itemnumber = parseInt($(this).val()); |
| 2699 |
if( $(this).prop("checked") ){ |
| 2700 |
items_selection[tab_id].push(itemnumber); |
| 2701 |
} else { |
| 2702 |
items_selection[tab_id] = items_selection[tab_id].filter( id => id != itemnumber ); |
| 2703 |
} |
| 2704 |
itemSelectionBuildActionLinks(tab_id); |
| 2705 |
}); |
| 2706 |
} |
| 2707 |
); |
| 2693 |
}, |
2708 |
}, |
|
|
2709 |
[% END %] |
| 2694 |
...dt_options, |
2710 |
...dt_options, |
| 2695 |
}, |
2711 |
}, |
| 2696 |
items_table_settings[tab_id], |
2712 |
items_table_settings[tab_id], |
| 2697 |
- |
|
|