From: Kyle Tomita Date: Thu, 13 Jun 2013 21:00:11 +0000 (-0700) Subject: LP1125567 - Staff client doesn't sort patron's checked out items X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=d88cc943ed99d59c815266d4bbbeb4258dbb5090;p=working%2FEvergreen.git LP1125567 - Staff client doesn't sort patron's checked out items The checked out items are sorted in items.js. After the array of checked out items is created, we sort the array by Due Date (earliest to latest). Signed-off-by: Kyle Tomita --- diff --git a/Open-ILS/xul/staff_client/server/patron/items.js b/Open-ILS/xul/staff_client/server/patron/items.js index a2fc0619be..0f13ecef4f 100644 --- a/Open-ILS/xul/staff_client/server/patron/items.js +++ b/Open-ILS/xul/staff_client/server/patron/items.js @@ -889,6 +889,23 @@ patron.items.prototype = { } else { obj.checkouts = obj.checkouts.concat( robj.overdue ); obj.checkouts = obj.checkouts.concat( robj.out ); + + var circ_checkouts = []; + for (var i = 0; i < obj.checkouts.length; ++i) + { + circ_checkouts[i] = obj.network.simple_request( + 'FM_CIRC_RETRIEVE_VIA_ID', [ ses(), obj.checkouts[i]] + ); + } + circ_checkouts.sort(function(a, b) { + return util.date.db_date2Date(a.due_date()).getTime() - + util.date.db_date2Date(b.due_date()).getTime() + }); + for (var i = 0; i < circ_checkouts.length; ++i) + { + obj.checkouts[i] = circ_checkouts[i].id(); + } + obj.checkouts2 = obj.checkouts2.concat( robj.lost ); obj.checkouts2 = obj.checkouts2.concat( robj.claims_returned ); obj.checkouts2 = obj.checkouts2.concat( robj.long_overdue );