From f849b3bbb5fb1c9fa9b0b019f58171d2c4b4efdb Mon Sep 17 00:00:00 2001 From: Owen Leonard Date: Fri, 24 Apr 2020 14:48:21 +0000 Subject: [PATCH] Bug 25280: Use modal confirmation when removing share from a list in the OPAC This patch updates the process of removing a share from a list in the OPAC so that the confirmation request shown to the user is a Bootstrap modal instead of a plain JavaScript confirm dialog. To test you should have the OpacAllowSharingPrivateLists enabled. - Log in to the OPAC as a user who has multiple private lists. - Share two or more lists with another user in the system. - Accept the list shares on behalf of the other user and log in to the OPAC as that user. - In the list of that user's lists, test the process of removing a share: - Clicking "Remove share" should trigger a modal which asks if you want to remove sharing. It should show the name of the list in question. - Test the funcionality of both the "No" and "Yes" options. - Confirm that the "Remove share" button works correctly for any of multiple lists. - View the contents of a list which has been shared with this user. - Test the "Remove share" button at the top of the list's contents. - The same confirmation dialog should be triggered. Signed-off-by: Lucas Gass --- .../opac-tmpl/bootstrap/en/modules/opac-shelves.tt | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) 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 a352cbc5a7..52cf9578cf 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-shelves.tt +++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-shelves.tt @@ -192,12 +192,13 @@ Share list [% END %] [% ELSIF category == PRIVATE # not manageshelf and private means shared %] -
+ - +
[% END %] @@ -699,12 +700,13 @@ Share [% END %] [% IF s.is_shared_with( loggedinusernumber ) %] -
+ - +
[% END %]  @@ -964,6 +966,18 @@ $(function() { }); [% END %] + $(".remove_share").on("click", function(e){ + e.preventDefault(); + var shelf_name = $(this).data("shelfname"); + var shelf_number = $(this).data("shelfnumber"); + confirmModal( shelf_name, _("Are you sure you want to remove sharing? You will no longer have access to the list."), _("Yes, remove sharing"), _("No, do not remove sharing"), function( result ){ + if( result ){ + $("#unshare" + shelf_number ).submit(); + } + } + ); + }); + }); // document.ready function sortMenu( sorting_form ){ -- 2.11.0