From dbb601629bdfc44291d61acc4f9076d95c8ac4f8 Mon Sep 17 00:00:00 2001 From: pines Date: Wed, 30 Aug 2006 18:22:02 +0000 Subject: [PATCH] since the shrink bindings is chrome, this is what I had to do get the shrinkable groupboxes to persist their state. At first I actually used persist on the caption, but the patron search interface uses a caching deck which relies on url params, so I switched to file storage for the shrink state git-svn-id: svn://svn.open-ils.org/ILS/trunk@5782 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- Open-ILS/xul/staff_client/server/patron/summary.js | 34 ++++++++++++++++++++++ .../staff_client/server/patron/summary_overlay.xul | 4 +-- 2 files changed, 36 insertions(+), 2 deletions(-) diff --git a/Open-ILS/xul/staff_client/server/patron/summary.js b/Open-ILS/xul/staff_client/server/patron/summary.js index 19f0404140..e532cd8d40 100644 --- a/Open-ILS/xul/staff_client/server/patron/summary.js +++ b/Open-ILS/xul/staff_client/server/patron/summary.js @@ -486,6 +486,40 @@ patron.summary.prototype = { obj.retrieve(); + try { + var caption = document.getElementById("PatronSummaryContact_caption"); + var arrow = document.getAnonymousNodes(caption)[0]; + var gb_content = document.getAnonymousNodes(caption.parentNode)[1]; + arrow.addEventListener( + 'click', + function() { + setTimeout( + function() { + //alert('setting shrink_state to ' + gb_content.hidden); + //caption.setAttribute('shrink_state',gb_content.hidden); + netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect'); + JSAN.use('util.file'); var file = new util.file('patron_id_shrink'); + file.set_object(String(gb_content.hidden)); file.close(); + }, 0 + ); + }, false + ); + //var shrink_state = caption.getAttribute('shrink_state'); + var shrink_state = false; + netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect'); + JSAN.use('util.file'); var file = new util.file('patron_id_shrink'); + if (file._file.exists()) { + shrink_state = file.get_object(); file.close(); + } + //alert('shrink_state retrieved as ' + shrink_state); + if (shrink_state != 'false' && shrink_state) { + JSAN.use('util.widgets'); + //alert('clicking the widget'); + util.widgets.click( arrow ); + } + } catch(E) { + obj.error.sdump('D_ERROR','with shrink_state in summary.js: ' + E); + } }, 'retrieve' : function() { diff --git a/Open-ILS/xul/staff_client/server/patron/summary_overlay.xul b/Open-ILS/xul/staff_client/server/patron/summary_overlay.xul index 771d144775..e1a1494ea3 100644 --- a/Open-ILS/xul/staff_client/server/patron/summary_overlay.xul +++ b/Open-ILS/xul/staff_client/server/patron/summary_overlay.xul @@ -34,7 +34,7 @@ - +