From 1bfbf707de40d90f8ffe85b9c2e32a33b95600ab 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. --- koha-tmpl/intranet-tmpl/prog/en/modules/acqui/parcel.tt | 8 ++++++-- 1 file 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 1b6543a69f..6ff4993948 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/parcel.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/parcel.tt @@ -51,8 +51,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 @@ -68,6 +68,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(); @@ -77,6 +78,7 @@ // Expend pending items table function pendingExpand() { + $.cookie("pendingKeepExpanded", 1, { path: "/", expires: 9999 }); $("#pendingcollapserow").remove(); $("#pendingt tr").show(); $("#pendingt tbody.filterclass tr.orderfound").remove(); @@ -85,6 +87,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>"); @@ -92,6 +95,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>"); -- 2.39.5