From 45d65e119ff56c92809b92d3c300cc8265336f48 Mon Sep 17 00:00:00 2001 From: Julian Maurice <julian.maurice@biblibre.com> Date: Tue, 2 Jul 2013 14:05:20 +0000 Subject: [PATCH] Bug 9044: Change dropdown list into links list --- .../prog/en/modules/catalogue/detail.tt | 100 ++++++++++++-------- 1 file changed, 62 insertions(+), 38 deletions(-) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt index 7914ee9..dc979da 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt @@ -73,40 +73,70 @@ function verify_images() { [% IF StaffDetailItemSelection %] function selectAllItems(div) { $("input[name='itemnumber'][type='checkbox']", div).attr('checked', 'checked'); + itemSelectionBuildActionLinks(div); } - function deselectAllItems(div) { + function clearAllItems(div) { $("input[name='itemnumber'][type='checkbox']", div).removeAttr('checked'); + itemSelectionBuildActionLinks(div); } - function itemSelectionExecuteAction(div) { + function itemSelectionBuildDeleteLink(div) { var itemnumbers = new Array(); $("input[name='itemnumber'][type='checkbox']:checked", div).each(function() { itemnumbers.push($(this).val()); }); if (itemnumbers.length > 0) { - var action = $('select[name="itemselection_action"]', div).val(); - if (action.length > 0) { - var del = (action == 'delete') ? 1 : 0; - var url = '/cgi-bin/koha/tools/batchMod.pl?op=show'; - if (action == 'delete') { - url += '&del=1'; - } - url += '&itemnumber=' + itemnumbers.join('&itemnumber='); - url += '&src=' + '[% "/cgi-bin/koha/catalogue/detail.pl?biblionumber=$biblionumber" |uri %]'; - new_window = $("input[name='new_window']", div).attr('checked'); - if (new_window) { - window.open(url); - } else { - window.location.href = url; - } - } else { - alert(_("Please choose an action")); - } + var url = '/cgi-bin/koha/tools/batchMod.pl?op=show&del=1'; + url += '&itemnumber=' + itemnumbers.join('&itemnumber='); + url += '&src=' + '[% "/cgi-bin/koha/catalogue/detail.pl?biblionumber=$biblionumber" |uri %]'; + $('a.itemselection_action_delete').attr('href', url); + $('a.itemselection_action_delete').show(); } else { - alert(_("Please select at least one item.")); + $('a.itemselection_action_delete').hide(); + return false; } + return true } + + function itemSelectionBuildModifyLink(div) { + var itemnumbers = new Array(); + $("input[name='itemnumber'][type='checkbox']:checked", div).each(function() { + itemnumbers.push($(this).val()); + }); + if (itemnumbers.length > 0) { + var url = '/cgi-bin/koha/tools/batchMod.pl?op=show'; + url += '&itemnumber=' + itemnumbers.join('&itemnumber='); + url += '&src=' + '[% "/cgi-bin/koha/catalogue/detail.pl?biblionumber=$biblionumber" |uri %]'; + $('a.itemselection_action_modify').attr('href', url); + $('a.itemselection_action_modify').show(); + } else { + $('a.itemselection_action_modify').hide(); + return false; + } + return true; + } + + function itemSelectionBuildActionLinks(div) { + var delete_link_ok = itemSelectionBuildDeleteLink(div); + var modify_link_ok = itemSelectionBuildModifyLink(div); + if (modify_link_ok || delete_link_ok) { + $('.itemselection_actions', div).show(); + } else { + $('.itemselection_actions', div).hide(); + } + } + + $(document).ready(function() { + $('table.items_table').each(function() { + var div = $(this).parent().parent(); + itemSelectionBuildActionLinks(div); + }); + $("input[name='itemnumber'][type='checkbox']").change(function() { + var div = $(this).parents('table').parent().parent(); + itemSelectionBuildActionLinks(div); + }); + }); [% END %] $(document).ready(function() { @@ -453,24 +483,18 @@ function verify_images() { [% items_table_block_iter = items_table_block_iter + 1 %] [% IF (StaffDetailItemSelection) %] <a href="#" onclick="selectAllItems($(this).parent()); return false;">Select all</a> | - <a href="#" onclick="deselectAllItems($(this).parent()); return false;">Deselect all</a> | - <form onsubmit="itemSelectionExecuteAction($(this).parent()); return false;"> - <label for="itemselection_action_[% items_table_block_iter %]">Action:</label> - <select id="itemselection_action_[% items_table_block_iter %]" name="itemselection_action"> - <option value=""></option> - [% IF CAN_user_tools_items_batchdel %] - <option value="delete">Delete selected items</option> - [% END %] - [% IF CAN_user_tools_items_batchmod %] - <option value="modify">Modify selected items</option> - [% END %] - </select> - <input type="submit" value="Go" /> - <input type="checkbox" id="new_window_[% items_table_block_iter %]" name="new_window" /> - <label for="new_window_[% items_table_block_iter %]">Open in new window</label> - </form> + <a href="#" onclick="clearAllItems($(this).parent()); return false;">Clear all</a> + <span class="itemselection_actions"> + | Actions: + [% IF CAN_user_tools_items_batchdel %] + <a class="itemselection_action_delete">Delete selected items</a> + [% END %] + [% IF CAN_user_tools_items_batchmod %] + <a class="itemselection_action_modify">Modify selected items</a> + [% END %] + </span> [% END %] - <table> + <table class="items_table"> <thead> <tr> [% IF (StaffDetailItemSelection) %]<th></th>[% END %] -- 1.7.10.4