[% INCLUDE 'doc-head-open.inc' %]
<title>Koha › Acquisitions › Receipt summary for : [% name %] [% IF ( invoice ) %]invoice, [% invoice %][% END %]</title>
[% INCLUDE 'doc-head-close.inc' %]
+[% INCLUDE 'additem.js.inc' %]
<script type="text/javascript" src="[% themelang %]/js/additem.js"> </script>
+<script type="text/javascript" src="[% themelang %]/js/prevent_submit.js"></script>
+<script type="text/javascript">
+//<![CDATA[
+ function Check(form) {
+ [% IF (AcqCreateItemReceiving) %]
+ var total_errors=0;
+ $("input[name='mandatory'],select[name='mandatory']").each(function(i){
+ if($(this).val() == 1){
+ var mandatory_field = $("input[name='field_value'],select[name='field_value']").eq(i);
+ if(mandatory_field.val() == ''){
+ mandatory_field.addClass("missing");
+ total_errors++;
+ }
+ }
+ });
+
+ if (total_errors != 0) {
+ var alertString = _("Form not submitted because of the following problem(s)");
+ alertString += "\n------------------------------------------------------------------------------------\n";
+ alertString += "\n- "+ total_errors+_(" mandatory fields empty (highlighted)");
+ alert(alertString);
+ return false;
+ }
+
+ if(check_additem('[% UniqueItemFields %]') == false){
+ alert(_("Duplicate values detected. Please correct the errors and resubmit.") );
+ return false;
+ };
+
+ // Remove last itemblock if it is not in items_list
+ var lastitemblock = $("#outeritemblock > div:last");
+ var tobedeleted = true;
+ var listitems = $("#items_list tr");
+ $(listitems).each(function(){
+ if($(this).attr('idblock') == $(lastitemblock).attr('id')){
+ tobedeleted = false;
+ }
+ });
+ if(tobedeleted){
+ $(lastitemblock).remove();
+ }
+
+ if(check_additem('[% UniqueItemFields %]') == false){
+ alert(_("Duplicate values detected. Please correct the errors and resubmit.") );
+ if(tobedeleted) {
+ $(lastitemblock).appendTo("#outeritemblock");
+ }
+ return false;
+ };
+ [% END %]
+
+ return true;
+ }
+
+ [% IF (AcqCreateItem == 'ordering') %]
+ var items_columns = [null, null, 'barcode', 'homebranchname',
+ 'holdingbranchname', 'notforloan', 'restricted', 'location',
+ 'itemcallnumber', 'copynumber', 'stocknumber', 'collection',
+ 'itemtype', 'materials', 'itemnotes'];
+
+ function PopupEditPage(biblionumber, itemnumber) {
+ var url = "/cgi-bin/koha/cataloguing/additem.pl?op=edititem&biblionumber="
+ + biblionumber + "&itemnumber=" + itemnumber + "&popup=1#edititem";
+ var w = window.open(url);
+ var watchClose = setInterval(function() {
+ if (w.closed) {
+ clearTimeout(watchClose);
+ $.getJSON('/cgi-bin/koha/catalogue/getitem-ajax.pl',
+ {
+ 'itemnumber': itemnumber
+ },
+ function(item) {
+ var tds = $("#item_"+itemnumber+" td");
+ for(var i=2; i<tds.length; i++) {
+ var column = items_columns[i];
+ $(tds[i]).text(item[column]);
+ }
+ }
+ );
+ }
+ }, 500);
+ }
+
+ function CalcQtyToReceive() {
+ var qty = $("input[name='items_to_receive']:checked").length;
+ $("#quantity").val(qty);
+ }
+
+ function CheckNItems(n) {
+ $("input[name='items_to_receive']").each(function() {
+ $(this).attr('checked', false);
+ });
+ $("input[name='items_to_receive']:lt("+n+")").each(function () {
+ $(this).attr('checked', true);
+ });
+ }
+ [% END %]
+
+ $(document).ready(function() {
+ [% IF (AcqCreateItemReceiving) %]
+ cloneItemBlock(0, '[% UniqueItemFields %]');
+ [% ELSIF (AcqCreateItem == 'ordering') && not subscriptionid %]
+ $("input[name='items_to_receive']").change(function() {
+ CalcQtyToReceive();
+ });
+ CalcQtyToReceive();
+ $("#quantity").keyup(function() {
+ var qty = parseInt($("#quantity").val());
+ var qtyto = parseInt($("#quantity_to_receive").val());
+ if(qty > qtyto) {
+ $("#qtyrecerror").show();
+ } else {
+ $("#qtyrecerror").hide();
+ }
+ CheckNItems($(this).val());
+ });
+ [% END %]
+ });
+//]]>
+</script>
</head>
-<body>
+<body id="acq_orderreceive" class="acq">
[% INCLUDE 'header.inc' %]
[% INCLUDE 'acquisitions-search.inc' %]
<h1>Receive items from : [% name %] [% IF ( invoice ) %][[% invoice %]] [% END %] (order #[% ordernumber %])</h1>
[% IF ( count ) %]
- <form action="/cgi-bin/koha/acqui/finishreceive.pl" method="post">
+ <form action="/cgi-bin/koha/acqui/finishreceive.pl" method="post" onsubmit="return Check(this);">
<div class="yui-g">
<div class="yui-u first">
-
+ <div class="error" style="display:none"></div>
+
<fieldset class="rows">
- <legend>Catalog Details</legend>
+ <legend>Catalog details</legend>
<ol><li><span class="label">Title: </span><span class="title">[% title |html %]</span></li>
<li> <span class="label">Author: </span>
[% author %]</li>
</fieldset>
[% END %]
- [% IF ( items ) %]
- <fieldset class="rows">
- <legend>Item</legend>
- [% IF ( NoACQframework ) %]
- <p class="required">No ACQ framework, using default. You should create a framework with code ACQ, the items framework would be used</p>
- [% END %]
-
- [% FOREACH item IN items %]
- <div id="outeritemblock">
- <div id="itemblock">
- <ol>[% FOREACH iteminformatio IN item.iteminformation %]<li style="[% iteminformatio.hidden %];">
- <div class="subfield_line" id="subfield[% iteminformatio.serialid %][% iteminformatio.countitems %][% iteminformatio.subfield %][% iteminformatio.random %]">
-
- <label>[% iteminformatio.subfield %] - [% IF ( iteminformatio.mandatory ) %]<b>[% END %][% iteminformatio.marc_lib %][% IF ( iteminformatio.mandatory ) %] *</b>[% END %]</label>
- [% iteminformatio.marc_value %]
- <input type="hidden" name="itemid" value="1" />
- <input type="hidden" name="kohafield" value="[% iteminformatio.kohafield %]" />
- <input type="hidden" name="tag" value="[% iteminformatio.tag %]" />
- <input type="hidden" name="subfield" value="[% iteminformatio.subfield %]" />
- <input type="hidden" name="mandatory" value="[% iteminformatio.mandatory %]" />
- [% IF ( iteminformatio.ITEM_SUBFIELDS_ARE_NOT_REPEATABLE ) %]
- <span class="buttonPlus" onclick="CloneSubfield('subfield[% iteminformatio.serialid %][% iteminformatio.countitems %][% iteminformatio.subfield %][% iteminformatio.random %]')">+</span>
- [% END %]
-
- </div></li>
- [% END %]
- </ol>
- <a class="addItem" onclick="cloneItemBlock('itemblock[% item.itemBlockIndex %]')">Add</a>
- <a class="delItem" style="display:none;" onclick="deleteItemBlock('itemblock[% item.itemBlockIndex %]')">Delete</a>
- </div><!-- /iteminformation -->
+ [% IF (AcqCreateItemReceiving) %]
+ <div id="items_list" style="display:none">
+ <p><b>Items list</b></p>
+ <div style="width:100%;overflow:auto;">
+ <table>
+ <thead>
+ <tr>
+ <th> </th>
+ <th> </th>
+ <th>Barcode</th>
+ <th>Home library</th>
+ <th>Holding library</th>
+ <th>Not for loan</th>
+ <th>Restricted</th>
+ <th>Location</th>
+ <th>Call number</th>
+ <th>Copy number</th>
+ <th>Stock number</th>
+ <th>Collection code</th>
+ <th>Item type</th>
+ <th>Materials</th>
+ <th>Notes</th>
+ </tr>
+ </thead>
+ <tbody>
+ </tbody>
+ </table>
+ </div>
</div>
-
- <input type="hidden" name="moditem" value="" />
- <input type="hidden" name="tag" value="[% item.itemtagfield %]" />
- <input type="hidden" name="subfield" value="[% item.itemtagsubfield %]" />
- <input type="hidden" name="serial" value="[% item.serialid %]" />
- <input type="hidden" name="bibnum" value="[% item.biblionumber %]" />
- <input type="hidden" name="itemid" value="1" />
- <input type="hidden" name="field_value" value="[% item.itemnumber %]" />
- [% END %] <!-- /items -->
- </fieldset>
- [% END %] <!-- items -->
+
+ [% UNLESS subscriptionid %]
+ <fieldset class="rows" id="itemfieldset">
+ <legend>Item</legend>
+ [% IF ( NoACQframework ) %]
+ <p class="required">
+ No ACQ framework, using default. You should create a
+ framework with code ACQ, the items framework would be
+ used
+ </p>
+ [% END %]
+ <div id="outeritemblock"></div>
+ </fieldset>
+ [% END %]
+ [% ELSIF (AcqCreateItem == 'ordering') %]
+ [% IF (items.size) %]
+ <h5>Items</h5>
+ <div style="width:100%;overflow:auto">
+ <table>
+ <thead>
+ <tr>
+ <th>Receive?</th>
+ <th> </th>
+ <th>Barcode</th>
+ <th>Home branch</th>
+ <th>Holding branch</th>
+ <th>Not for loan</th>
+ <th>Restricted</th>
+ <th>Location</th>
+ <th>Call number</th>
+ <th>Copy number</th>
+ <th>Stock number</th>
+ <th>Collection code</th>
+ <th>Item type</th>
+ <th>Materials</th>
+ <th>Notes</th>
+ </tr>
+ </thead>
+ <tbody>
+ [% FOREACH item IN items %]
+ <tr id="item_[% item.itemnumber %]">
+ <td style="text-align:center"><input type="checkbox" name="items_to_receive" value="[% item.itemnumber %]" /></td>
+ <td><a style="cursor:pointer" onclick="PopupEditPage([% item.biblionumber %],[% item.itemnumber %]);">Edit</a></td>
+ <td>[% item.barcode %]</td>
+ <td>[% item.homebranchname %]</td>
+ <td>[% item.holdingbranchname %]</td>
+ <td>[% item.notforloan %]</td>
+ <td>[% item.restricted %]</td>
+ <td>[% item.location %]</td>
+ <td>[% item.itemcallnumber %]</td>
+ <td>[% item.copynumber %]</td>
+ <td>[% item.stocknumber %]</td>
+ <td>[% item.collection %]</td>
+ <td>[% item.itemtype %]</td>
+ <td>[% item.materials %]</td>
+ <td>[% item.itemnotes %]</td>
+ </tr>
+ [% END %]
+ </tbody>
+ </table>
+ </div>
+ [% END %]
+ [% END %]
<input type="hidden" name="biblionumber" value="[% biblionumber %]" />
+ <input type="hidden" name="invoiceid" value="[% invoiceid %]" />
<input type="hidden" name="ordernumber" value="[% ordernumber %]" />
- <input type="hidden" name="biblioitemnumber" value="[% biblioitemnumber %]" />
<input type="hidden" name="booksellerid" value="[% booksellerid %]" />
<input type="hidden" name="datereceived" value="[% datereceived_iso %]" />
- <input type="hidden" name="freight" value="[% freight %]" />
- <input type="hidden" name="gst" value="[% gst %]" />
+ <input type="hidden" name="gstrate" value="[% gstrate %]" />
</div>
<div class="yui-u">
<fieldset class="rows">
<li><label for="datereceived">Date received: </label><span> [% datereceived %] </span></li>
<li><label for="bookfund">Budget: </label><span> [% bookfund %] </span></li>
<li><label for="creator">Created by: </label><span> [% IF ( memberfirstname and membersurname ) %][% IF ( memberfirstname ) %][% memberfirstname %][% END %] [% membersurname %][% ELSE %]No name[% END %]</span></li>
- <li><label for="quantityto">Quantity to receive: </label><span class="label">
- [% IF ( edit ) %]
- <input type="text" name="quantity" value="[% quantity %]" />
- [% ELSE %]
- <input type="text" READONLY name="quantity" value="[% quantity %]" />
+ <li><label for="quantity_to_receive">Quantity to receive: </label><span class="label">
+ [% IF ( edit and not subscriptionid) %]
+ <input type="text" id="quantity_to_receive" name="quantity" value="[% quantity %]" />
+ [% ELSE%]
+ <input type="text" readonly="readonly" id="quantity_to_receive" name="quantity" value="[% quantity %]" />
[% END %]
</span></li>
<li><label for="quantity">Quantity received: </label>
+ [% IF (AcqCreateItemReceiving) %]
+ [% IF ( subscriptionid ) %]
+ <input readonly="readonly" type="text" size="20" name="quantityrec" id="quantity" value="1" />
+ [% ELSE %]
+ <input readonly="readonly" type="text" size="20" name="quantityrec" id="quantity" value="0" />
+ [% END %]
+ [% ELSE %]
[% IF ( quantityreceived ) %]
[% IF ( edit ) %]
<input type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceived %]" />
- <input id="origquantityrec" READONLY type="hidden" name="origquantityrec" value="[% quantityreceived %]" />
+ <input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="[% quantityreceived %]" />
[% ELSE %]
- [% IF ( items ) %]
- <input READONLY type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceivedplus1 %]" />
- [% ELSE %]
- <input type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceivedplus1 %]" />
- [% END %]
- <input id="origquantityrec" READONLY type="hidden" name="origquantityrec" value="[% quantityreceived %]" />
+ [% IF ( items ) %]
+ <input readonly="readonly" type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceivedplus1 %]" />
+ [% ELSE %]
+ <input type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceivedplus1 %]" />
+ [% END %]
+ <input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="[% quantityreceived %]" />
[% END %]
[% ELSE %]
- [% IF ( items ) %]
- <input READONLY type="text" id="quantity" size="20" name="quantityrec" value="1" />
+ [% IF ( subscriptionid ) %]
+ <input type="text" readonly="readonly" id="quantity" size="20" name="quantityrec" value="1" />
[% ELSE %]
- <input type="text" size="20" id="quantity" name="quantityrec" value="1" />
+ <input type="text" id="quantity" size="20" name="quantityrec" value="1" />
[% END %]
- <input id="origquantityrec" READONLY type="hidden" name="origquantityrec" value="0" />
+ <input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="0" />
[% END %]
+ <div id="qtyrecerror" style="display:none">
+ <p class="error">Warning, you have entered more items than expected.
+ Items will not be created.</p>
+ </div>
+ [% END %][%# IF (AcqCreateItemReceiving) %]
</li>
<li><label for="rrp">Replacement cost: </label><input type="text" size="20" name="rrp" id="rrp" value="[% rrp %]" /></li>
<li><label for="ecost">Budgeted cost: </label><input type="text" size="20" name="ecost" id="ecost" value="[% ecost %]" /></li>
<input type="text" size="20" name="cost" id="cost" value="[% ecost %]" />
[% END %]</li></ol>
<label for="note">Notes: </label><textarea name="note" width="40" rows="8" >[% notes %]</textarea>
- <input type="hidden" name="invoice" value="[% invoice %]" />
</fieldset>
</div>
</div><div class="yui-g"><fieldset class="action">
- <input type="button" value="Save" onclick="javascript:if(check_additem()) { this.form.submit(); } else { alert( _('Duplicate barcodes detected. Please correct the errors and resubmit.') ); return false };" /> <a class="cancel" href="/cgi-bin/koha/acqui/parcel.pl?booksellerid=[% booksellerid %]&invoice=[% invoice %]&gst=[% gst %]&freight=[% freight %]">Cancel</a>
+ <input type="submit" value="Save" class="button" accesskey="w" />
+ <a class="cancel" href="/cgi-bin/koha/acqui/parcel.pl?invoiceid=[% invoiceid %]">Cancel</a>
</fieldset></div> </form>
[% ELSE %]
-<div id="acqui_acquire_orderlist">
- <table>
- <tr>
- <th>Basket</th>
- <th>ISBN</th>
- <th>Title</th>
- <th>Author</th>
- <th>Qty</th>
- <th>Received</th>
- </tr>
- [% FOREACH loo IN loop %]
- <tr>
- <td>[% loo.basketno %]</td>
- <td>[% loo.isbn %]</td>
- <td><a href="orderreceive.pl?datereceived=[% loo.datereceived %]&receive=[% loo.ordernumber %]&biblio=[% loo.biblionumber %]&invoice=[% loo.invoice %]&freight=[% loo.freight %]&gst=[% loo.gst %]&id=[% loo.id %]">[% loo.title |html %]</a></td>
- <td>[% loo.author %]</td>
- <td>[% loo.quantity %]</td>
- <td>[% loo.quantityreceived %]</td>
- </tr>
- [% END %]
- </table>
-</div>
+ This ordernumber does not exist.
[% END %]
</div>