From f91245756e8cde3c311b3e30e1de347b20a20f10 Mon Sep 17 00:00:00 2001 From: Kyle M Hall Date: Wed, 28 Mar 2012 13:00:54 -0400 Subject: [PATCH] Bug 8028 - Make table collapsing on parcel.pl sticky The tables on parcel.pl default to show only the first five items in the table, and librarians must click the a link to display all the items. Every time the page is reloaded, the table gets re-collapsed, and the librarian must again click the link. Parcel.pl should remember which way the table is set and keep it that way until it is changed again. This is accomplished by adding two cookies for this page, one for each table. This cookie stores the state of the table ( collapsed, or uncollapsed ) and sets each table to the correct state on each page load. Signed-off-by: Jonathan Druart Works as expected. But a "funny" behaviour, if I have only 1 item (or < 6): All 1 items are displayed. Click here to show only the first 5 items. and Only the first 5 items are displayed. Click here to show all 1 items. --- .../intranet-tmpl/prog/en/modules/acqui/parcel.tt | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/parcel.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/parcel.tt index 7b0f7ca..d1459f2 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/parcel.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/parcel.tt @@ -50,8 +50,8 @@ rowCountPending = $("#pendingt tbody.filterclass tr").length; rowCountReceived = $("#receivedt tbody.filterclass tr").length; - if (rowCountPending > rowsToCollapse) { pendingCollapse(); } - if (rowCountReceived > rowsToCollapse) { receivedCollapse(); } + if (rowCountPending > rowsToCollapse && $.cookie("pendingKeepExpanded") != 1 ) { pendingCollapse(); } + if (rowCountReceived > rowsToCollapse && $.cookie("receivedKeepExpanded") != 1 ) { receivedCollapse(); } else { receivedExpand(); } }); // Case-insensitive version of jquery's contains function @@ -67,6 +67,7 @@ // Collapse pending items table function pendingCollapse() { + $.cookie("pendingKeepExpanded", 0, { path: "/", expires: 9999 }); $("#pendingcollapserow").remove(); $("#pendingt tr").show(); $("#pendingt tbody.filterclass tr:gt(" + (rowsToCollapse-1) + ")").hide(); @@ -76,6 +77,7 @@ // Expend pending items table function pendingExpand() { + $.cookie("pendingKeepExpanded", 1, { path: "/", expires: 9999 }); $("#pendingcollapserow").remove(); $("#pendingt tr").show(); $("#pendingt tbody.filterclass tr.orderfound").remove(); @@ -84,6 +86,7 @@ // Collapse already received items table function receivedCollapse() { + $.cookie("receivedKeepExpanded", 0, { path: "/", expires: 9999 }); $("#receivedcollapserow").remove(); $("#receivedt tbody.filterclass tr:gt(" + (rowsToCollapse-1) + ")").hide(); $("#receivedt").before("

" + _("Only the first ") + rowsToCollapse + _(" items are displayed.") + "" + _("Click here to show all ") + rowCountReceived + _(" items") + "<\/a>.<\/p>"); @@ -91,6 +94,7 @@ // Expand already received items table function receivedExpand() { + $.cookie("receivedKeepExpanded", 1, { path: "/", expires: 9999 }); $("#receivedcollapserow").remove(); $("#receivedt tr").show(); $("#receivedt").before("

" + _("All ") + rowCountReceived + _(" items are displayed.") + "" + _("Click here to show only the first ") + rowsToCollapse + _(" items") + "<\/a>.<\/p>"); -- 1.7.7.3