Koha/koha-tmpl/intranet-tmpl/prog/en/modules/tools/batchMod-edit.tt
Amit Gupta fcc9fcea4f Bug 7739 - Batch edit items of a title
A new option - Edit items in batch - is made available under the menu - Edit - in the catalog detail page. When this option is selected the tool batch item modification is called with all items under this biblio passed as parameters.

User can then edit all items of this biblio in batch. Once changes are saved the "done" link takes the user back to the catalog detail page of this biblio.

To test:
    Navigate to catalog detail page of any biblio with one or more item records. Use the option "Edit items in batch" from the "Edit" menu. Modify the items in batch, say the collction code or lost status. Press "Save", verify that changes have been effected in the confirmation screen. Use the "Done" link to navigate back to the catalog detail page.

Signed-off-by: Nicole C. Engard <nengard@bywatersolutions.com>
Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
2012-05-11 12:16:22 +02:00

187 lines
8.6 KiB
Text

[% INCLUDE 'doc-head-open.inc' %]
<title>Koha &rsaquo; Tools &rsaquo; Batch item modification</title>
[% INCLUDE 'doc-head-close.inc' %]
<script type="text/javascript" src="[% themelang %]/js/background-job-progressbar.js"></script>
<link rel="stylesheet" type="text/css" href="[% themelang %]/css/pages/batchMod.css" />
<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
<script src="[% themelang %]/lib/yui/cookie/cookie-min.js"></script>
<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.checkboxes.min.js"></script>
<script type="text/javascript">
//<![CDATA[
// Prepare array of all column headers, incrementing each index by
// two to accomodate control and title columns
var allColumns = new Array([% FOREACH item_header_loo IN item_header_loop %]'[% loop.count %]'[% UNLESS ( loop.last ) %],[% END %][% END %]);
console.log(allColumns);
for( x=0; x<allColumns.length; x++ ){
allColumns[x] = Number(allColumns[x]) + 2;
}
$("#itemst").tablesorter({ widgets : ['zebra'], headers: {0:{sorter: false}} });
$("#selectallbutton").click(function() {
$("#itemst").find("input:checkbox").each(function() {
$(this).attr("checked", "checked");
});
});
$("#clearallbutton").click(function() {
$("#itemst").find("input:checkbox").each(function() {
$(this).removeAttr("checked");
});
});
$("input[name='disable_input']").click(function() {
if ($(this).is(":checked")){
$(this).val($(this).siblings("[name='subfield']").val());
$(this).siblings().attr('disabled',true);
}
else {
$(this).siblings().removeAttr('disabled');
}
});
//]]>
</script>
<script type="text/javascript" src="[% themelang %]/js/pages/batchMod.js"></script>
<!--[if IE]>
<style type="text/css">#selections { display: none; }</style>
<![endif]-->
<link type="text/css" rel="stylesheet" href="[% themelang %]/css/addbiblio.css" />
</head>
<body id="tools_batchMod-edit" class="tools">
[% INCLUDE 'header.inc' %]
[% INCLUDE 'cat-search.inc' %]
<div id="breadcrumbs">
<a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo;
<a href="/cgi-bin/koha/tools/tools-home.pl">Tools</a> &rsaquo;
<a href="/cgi-bin/koha/tools/batchMod.pl">Batch item modification</a>
</div>
<div id="doc3" class="yui-t7">
<div id="bd">
<div id="yui-main">
[% IF ( show ) %]<h1>Batch item modification</h1>[% ELSE %]<h1>Batch item modification results</h1>[% END %]
[% IF ( barcode_not_unique ) %]<div class="dialog alert"><strong>Error saving item</strong>: Barcode must be unique.</div>[% END %]
[% IF ( no_next_barcode ) %]<div class="dialog alert"><strong>Error saving items</strong>: Unable to automatically determine values for barcodes. No item has been inserted.</div>[% END %]
[% IF ( book_on_loan ) %]<div class="dialog alert"><strong>Cannot Delete</strong>: item is checked out.</div>[% END %]
[% IF ( book_reserved ) %]<div class="dialogalert"><strong>Cannot Delete</strong>: item has a waiting hold.</div>[% END %]
[% IF ( notfoundbarcodes ) %]
<div class="dialog alert"><p>Warning, the following barcodes were not found:</p></div>
<table style="margin:auto;">
<thead>
<tr><th>Barcodes not found</th></tr>
</thead>
<tbody>
[% FOREACH notfoundbarcode IN notfoundbarcodes %]
<tr><td>[% notfoundbarcode.barcode %]</td></td>
[% END %]
</tbody>
</table>
[% UNLESS ( too_many_items ) %]
<h4>The following barcodes were found: </h4>
[% END %]
[% END %] <!-- /notfoundbarcodes -->
<form name="f" action="batchMod.pl" method="post">
<input type="hidden" name="op" value="[% op %]" />
<input type="hidden" name="uploadedfileid" id="uploadedfileid" value="" />
<input type="hidden" name="runinbackground" id="runinbackground" value="" />
<input type="hidden" name="completedJobID" id="completedJobID" value="" />
<input type="hidden" name="src" id="src" value="[% src %]" />
[% IF ( item_loop ) %]
[% IF ( show ) %]<div id="toolbar"><a id="selectallbutton" href="#">Select All</a> | <a id="clearallbutton" href="#">Clear All</a></div>[% ELSE %][% END %]
<div id="cataloguing_additem_itemlist">
<p id="selections"><strong>Show/hide columns:</strong> <span class="selected"><input type="checkbox" checked="checked" id="showall"/><label for="showall">Show all columns</label></span> <span><input type="checkbox" id="hideall"/><label for="hideall">Hide all columns</label></span>
[% FOREACH item_header_loo IN item_header_loop %]
<span class="selected"><input id="checkheader[% loop.count %]" type="checkbox" checked="checked" /> <label for="checkheader[% loop.count %]">[% item_header_loo.header_value %]</label> </span>
[% END %]
</p>
<table id="itemst">
<thead>
<tr>
<th>&nbsp;</th>
<th>Title</th>
[% FOREACH item_header_loo IN item_header_loop %]
<th> [% item_header_loo.header_value %] </th>
[% END %]
</tr>
</thead>
<tbody>
[% FOREACH item_loo IN item_loop %] <tr> [% IF ( show ) %][% IF ( item_loo.nomod ) %] <td class="error">Cannot Edit</td>[% ELSE %]<td><input type="checkbox" name="itemnumber" value="[% item_loo.itemnumber %]" id="row[% item_loo.itemnumber %]" checked="checked" /></td>[% END %][% ELSE %]<td>&nbsp;</td>[% END %]
<td><label for="row[% item_loo.itemnumber %]"><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% item_loo.biblionumber %]">[% item_loo.title %]</a>[% IF ( item_loo.author ) %], by [% item_loo.author %][% END %]</label></td>
[% FOREACH item_valu IN item_loo.item_value %] <td>[% item_valu.field |html %]</td>
[% END %] </tr>
[% END %]
</tbody>
</table>
</div>
[% END %]<!-- /item_loop -->
[% IF ( simple_items_display ) %]
<p>The following items were modified:</p>
<ul>
[% FOREACH simple_items_displa IN simple_items_display %]
<li>
[% IF ( CAN_user_editcatalogue_edit_items ) %]<a href="/cgi-bin/koha/cataloguing/additem.pl?op=edititem&amp;biblionumber=[% simple_items_displa.biblionumber %]&amp;itemnumber=[% simple_items_displa.itemnumber %]">[% simple_items_displa.barcode %]</a>[% ELSE %][% simple_items_displa.barcode %][% END %]
</li>
[% END %]
</ul>
[% END %]<!-- /simple_items_display -->
[% IF ( show ) %]
[% IF ( too_many_items ) %]
<p>Too many items ([% too_many_items %]): not displaying each one individually.</p>
[% FOREACH itemnumbers_hashre IN itemnumbers_hashref %]
<input type="hidden" name="itemnumber" value="[% itemnumbers_hashre.itemnumber %]" />
[% END %]
[% END %]<!-- /too_many_items -->
<div id="cataloguing_additem_newitem">
<h2>Edit Items</h2>
<div class="hint">Checking the box right next the subfield label will disable the entry and delete the values of that subfield on all selected items</div>
<fieldset class="rows">
<ol>
[% FOREACH ite IN item %]
<li><div class="subfield_line" style="[% ite.visibility %]" id="subfield[% ite.tag %][% ite.subfield %][% ite.random %]">
<label>[% ite.subfield %] -
[% IF ( ite.mandatory ) %]<b>[% END %]
[% ite.marc_lib %]
[% IF ( ite.mandatory ) %] *</b>[% END %]
</label>
<input type="checkbox" title="check to delete subfield [% ite.subfield %]" name="disable_input" value="[% ite.subfield %]" />
[% ite.marc_value %]
<input type="hidden" name="tag" value="[% ite.tag %]" />
<input type="hidden" name="subfield" value="[% ite.subfield %]" />
<input type="hidden" name="mandatory" value="[% ite.mandatory %]" />
[% IF ( ite.repeatable ) %]
<span class="buttonPlus" onclick="CloneSubfield('subfield[% ite.tag %][% ite.subfield %][% ite.random %]')">+</span>
[% END %]
</div></li>
[% END %]
</ol>
</fieldset>
<fieldset class="action">
<div id="jobpanel">
<div id="jobstatus">Job progress: <div id="jobprogress"></div> <span id="jobprogresspercent">0</span>%</div>
<div id="jobfailed"></div>
</div>
<input type="submit" name="mainformsubmit" value="Save" onclick="return submitBackgroundJob(this.form);" />
<a href="/cgi-bin/koha/tools/batchMod.pl" class="cancel" onclick="history.back();return false;">Cancel</a>
</fieldset>
</div>
[% ELSE %] <!-- // show -->
<fieldset class="action">
[% IF ( src == 'CATALOGUING') %]
<a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% item_loo.biblionumber %]">Done</a>
[% ELSE %]
<a href="/cgi-bin/koha/tools/batchMod.pl">Done</a>
[% END %]
</fieldset>
[% END %]
</div>
</div>
[% INCLUDE 'intranet-bottom.inc' %]