From 593cc34f19042f57fb943fde4b7fe62c72dcd7c4 Mon Sep 17 00:00:00 2001 From: Marcel de Rooy Date: Wed, 21 Jun 2017 16:24:57 +0200 Subject: [PATCH] Bug 18980: Add js to dynamically show/hide the Anyone remark Content-Type: text/plain; charset=utf-8 If we we move from Private to Public or vice versa, this should reflect on the Anyone remark from the first patch. If we go back to a private list without shares, we should show it. Handled in a js sub AdjustRemark, triggered by onchange of the category combo or the permission combo. Test plan: [1] Edit a private list without shares in OPAC. Toggle category and/or permissions. Is the remark shown or hidden accordingly? Note: Include a test with OpacAllowPublicListCreation enabled. [2] Edit a shared list or public list in staff. Toggle category/permissions. You should never see the remark. Signed-off-by: Marcel de Rooy --- .../prog/en/modules/virtualshelves/shelves.tt | 31 +++++++++++++++++++-- .../opac-tmpl/bootstrap/en/modules/opac-shelves.tt | 32 ++++++++++++++++++++-- 2 files changed, 57 insertions(+), 6 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/virtualshelves/shelves.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/virtualshelves/shelves.tt index 2b32ca0..f26acd4 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/virtualshelves/shelves.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/virtualshelves/shelves.tt @@ -12,7 +12,7 @@ [% BLOCK list_permissions %]
  • - [% IF shelf.allow_change_from_owner %][% ELSE %][% END %] @@ -25,7 +25,7 @@ [% IF shelf.allow_change_from_others %][% ELSE %][% END %] -   The Anyone permission has no actual effect while this list is strictly private. +  
  • [% END %] @@ -217,6 +217,12 @@ $(document).ready(function(){ }); [% END %] +[% IF shelf AND op == 'edit_form' %] +$(document).ready(function(){ + AdjustRemark(); +}); +[% END %] + /** * This function checks if the adequate number of records are checked for merging */ @@ -305,6 +311,25 @@ function placeHold () { return false; } } + +function AdjustRemark() { + var category = $("#category").val(); + var perms = $("#allow_changes_from").val(); + + if( perms < 2 ) { + $("#anyone_remark").hide(); + } else if( category==1 ) { + // If we move to Private (without shares), show Anyone remark + // Note: the number of shares is not tested real-time + [% IF !shelf.is_shared %] + $("#anyone_remark").show(); + [% ELSE %] + $("#anyone_remark").hide(); + [% END %] + } else { // category==2 + $("#anyone_remark").hide(); + } +} //]]> @@ -556,7 +581,7 @@ function placeHold () { [% IF shelf.sortfield == "itemcallnumber" %][% ELSE %][% END %]
  • - [% IF shelf.is_private %] [% ELSE %] diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-shelves.tt b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-shelves.tt index f6922f1..0417531 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-shelves.tt +++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-shelves.tt @@ -13,7 +13,7 @@ [% BLOCK list_permissions %]
  • - [% IF shelf.allow_change_from_owner %][% ELSE %][% END %] @@ -26,7 +26,7 @@ [% IF shelf.allow_change_from_others %][% ELSE %][% END %] -   The Anyone permission has no actual effect while this list is strictly private. +  
  • [% END %] @@ -578,7 +578,7 @@ [% IF Koha.Preference('OpacAllowPublicListCreation') OR category == PUBLIC %]
  • - [% IF shelf.is_private %] [% ELSE %] @@ -934,6 +934,8 @@ $(function() { window.print(); setTimeout('window.close()', 1); [% END %] + + AdjustRemark(); }); // document.ready function Check(f) { @@ -953,6 +955,30 @@ function Check(f) { alert(alertString2); } } + +function AdjustRemark() { + var category; + if( $("#category").length > 0 ) { + category = $("#category").val(); + } else { + category = [% category %]; + } + var perms = $("#allow_changes_from").val(); + + if( perms < 2 ) { + $("#anyone_remark").hide(); + } else if( category==1 ) { + // If we move to Private (without shares), show Anyone remark + // Note: the number of shares is not tested real-time + [% IF !shelf.is_shared %] + $("#anyone_remark").show(); + [% ELSE %] + $("#anyone_remark").hide(); + [% END %] + } else { // category==2 + $("#anyone_remark").hide(); + } +} //]]> [% END %] -- 2.1.4