View | Details | Raw Unified | Return to bug 26824
Collapse All | Expand All

(-)a/koha-tmpl/opac-tmpl/bootstrap/en/includes/title-actions-menu.inc (-1 / +1 lines)
Lines 44-50 Link Here
44
        [% IF ( shelf AND op == 'view' ) %]
44
        [% IF ( shelf AND op == 'view' ) %]
45
            <span class="actions"><a href="/cgi-bin/koha/opac-addbybiblionumber.pl?biblionumber=[% items.biblionumber | uri %]" onclick="Dopop('opac-addbybiblionumber.pl?biblionumber=[% items.biblionumber | uri %]'); return false;" class="btn btn-link btn-sm"><i class="fa fa-list" aria-hidden="true"></i> Save to another list</a></span>
45
            <span class="actions"><a href="/cgi-bin/koha/opac-addbybiblionumber.pl?biblionumber=[% items.biblionumber | uri %]" onclick="Dopop('opac-addbybiblionumber.pl?biblionumber=[% items.biblionumber | uri %]'); return false;" class="btn btn-link btn-sm"><i class="fa fa-list" aria-hidden="true"></i> Save to another list</a></span>
46
            [% IF can_remove_biblios %]
46
            [% IF can_remove_biblios %]
47
                <span class="actions"><a class="btn btn-link btn-sm removefromlist" href="/cgi-bin/koha/opac-shelves.pl?op=remove_biblios&amp;shelfnumber=[% shelf.shelfnumber | html %]&amp;biblionumber=[% items.biblionumber | html %]"><i class="fa fa-remove" aria-hidden="true"></i> Remove from this list</a></span>
47
                <span class="actions"><a class="btn btn-link btn-sm removeitems" data-biblionumber="[% items.biblionumber | html %]" href="/cgi-bin/koha/opac-shelves.pl?op=remove_biblios&amp;shelfnumber=[% shelf.shelfnumber | html %]&amp;biblionumber=[% items.biblionumber | html %]"><i class="fa fa-remove" aria-hidden="true"></i> Remove from this list</a></span>
48
            [% END %]
48
            [% END %]
49
        [% ELSE %]
49
        [% ELSE %]
50
            <span class="actions"><a class="addtoshelf btn btn-link btn-sm" href="/cgi-bin/koha/opac-addbybiblionumber.pl?biblionumber=[% items.biblionumber | html %]" onclick="Dopop('opac-addbybiblionumber.pl?biblionumber=[% items.biblionumber | html %]'); return false;"><i class="fa fa-list" aria-hidden="true"></i> Save to lists</a></span>
50
            <span class="actions"><a class="addtoshelf btn btn-link btn-sm" href="/cgi-bin/koha/opac-addbybiblionumber.pl?biblionumber=[% items.biblionumber | html %]" onclick="Dopop('opac-addbybiblionumber.pl?biblionumber=[% items.biblionumber | html %]'); return false;"><i class="fa fa-list" aria-hidden="true"></i> Save to lists</a></span>
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-shelves.tt (-21 / +45 lines)
Lines 369-375 Link Here
369
                                                    [% ELSE %]
369
                                                    [% ELSE %]
370
                                                        [% check_title = itemsloo.biblionumber %]
370
                                                        [% check_title = itemsloo.biblionumber %]
371
                                                    [% END %]
371
                                                    [% END %]
372
                                                    <td class="select selectcol"><input type="checkbox" class="cb" name="biblionumber" value="[% itemsloo.biblionumber | html %]" aria-label="[% check_title | html %]"/></td>
372
                                                    <td class="select selectcol"><input type="checkbox" class="cb" name="biblionumber" value="[% itemsloo.biblionumber | html %]" data-title="[% itemsloo.title | html %]" aria-label="[% check_title | html %]"/></td>
373
                                                    [% UNLESS ( item_level_itypes ) %]
373
                                                    [% UNLESS ( item_level_itypes ) %]
374
                                                        <td>
374
                                                        <td>
375
                                                            [% UNLESS ( Koha.Preference('OpacNoItemTypeImages') ) %]
375
                                                            [% UNLESS ( Koha.Preference('OpacNoItemTypeImages') ) %]
Lines 558-564 Link Here
558
                                    <input type="hidden" name="op" value="remove_biblios" />
558
                                    <input type="hidden" name="op" value="remove_biblios" />
559
                                    <input type="hidden" name="shelfnumber" value="[% shelf.shelfnumber | html %]" />
559
                                    <input type="hidden" name="shelfnumber" value="[% shelf.shelfnumber | html %]" />
560
                                    <input type="hidden" name="modifyshelfcontents" value="1" />
560
                                    <input type="hidden" name="modifyshelfcontents" value="1" />
561
                                    <input type="submit" value="Remove selected items" id="remove-selected" class="btn btn-danger"/>
561
                                    <input type="submit" value="Remove selected items" id="remove-selected" class="btn btn-danger removeitems"/>
562
                                [% END %]
562
                                [% END %]
563
                            </form> <!-- /myform -->
563
                            </form> <!-- /myform -->
564
                        [% ELSE %]
564
                        [% ELSE %]
Lines 961-989 $(function() { Link Here
961
    [% END %]
961
    [% END %]
962
962
963
    [% IF loggedinusername && can_remove_biblios %]
963
    [% IF loggedinusername && can_remove_biblios %]
964
        $(".removefromlist").on("click", function(e){
965
            return confirmDelete(MSG_REMOVE_ONE_FROM_LIST);
966
        });
967
964
968
        $("#myform").submit(function(){
965
        $("body").on("click", ".removeitems", function(e){
969
            var checkedBoxes = $(".checkboxed input:checkbox:checked");
966
            e.preventDefault();
970
            var numchecked = $(checkedBoxes).size();
967
            var href;
971
            if (numchecked) {
968
            var title;
972
                if( numchecked > 1 ){
969
            var yes_label;
973
                    return confirmDelete(MSG_REMOVE_FROM_LIST);
970
            var no_label;
971
            var message = "";
972
            /* Single "Remove from list" link has a biblionumber data-attribute */
973
            if( $(this).data("biblionumber") ){
974
                /* Use the checkbox with that value to preview the title in the confirmation */
975
                var selected_titles = $(".cb[value='" + $(this).data("biblionumber") + "'");
976
                var href = $(this).attr("href");
977
            } else {
978
                var selected_titles = $(".cb:checked");
979
            }
980
            if ( selected_titles.size() < 1 ) {
981
                alert( _("No item was selected") );
982
            } else {
983
                if( selected_titles.size() > 1 ){
984
                    message = $("<ul></ul>");
985
                    title = _("Are you sure you want to remove these items from the list?");
986
                    yes_label = _("Yes, delete from list");
987
                    no_label = _("No, do not delete from list");
988
                    selected_titles.each(function(){
989
                        message.append( "<li>" +  $(this).data("title") + "</li>" );
990
                    });
974
                } else {
991
                } else {
975
                    return confirmDelete(MSG_REMOVE_ONE_FROM_LIST);
992
                    title = _("Are you sure you want to remove this item from the list?");
993
                    yes_label = _("Yes, delete from list");
994
                    no_label = _("No, do not delete from list");
995
                    selected_titles.each(function(){
996
                        message += $(this).data("title");
997
                    });
976
                }
998
                }
977
            } else {
999
                confirmModal( message, title, yes_label, no_label, function( result ){
978
                alert( __("No item was selected") );
1000
                    if( result ){
979
                return false;
1001
                        if( href ){
1002
                            location.href= href;
1003
                        } else {
1004
                            $("#myform").submit();
1005
                        }
1006
                    }
1007
                });
980
            }
1008
            }
981
        });
1009
        });
982
        $("#removeitems").html("<a href=\"#\" class=\"btn btn-link disabled removeitems tag_hides\"><i class=\"fa fa-fw fa-remove\" aria-hidden=\"true\"></i> "+_("Remove from list")+"</a>")
1010
983
        .click(function(){
1011
        $("#removeitems").html("<a href=\"#\" class=\"btn btn-link disabled removeitems tag_hides\"><i class=\"fa fa-fw fa-remove\" aria-hidden=\"true\"></i> "+_("Remove from list")+"</a>");
984
            $("#myform").submit();
985
            return false;
986
        });
987
    [% END %]
1012
    [% END %]
988
    [% IF OpenLibraryCovers %]KOHA.OpenLibrary.GetCoverFromIsbn();[% END %]
1013
    [% IF OpenLibraryCovers %]KOHA.OpenLibrary.GetCoverFromIsbn();[% END %]
989
    [% IF OPACLocalCoverImages %]KOHA.LocalCover.GetCoverFromBibnumber(false);[% END %]
1014
    [% IF OPACLocalCoverImages %]KOHA.LocalCover.GetCoverFromBibnumber(false);[% END %]
990
- 

Return to bug 26824