+[% USE raw %]
+[% USE Asset %]
+[% USE Koha %]
[% USE KohaDates %]
[% USE Branches %]
+[% USE AuthorisedValues %]
+[% USE ItemTypes %]
[% USE Price %]
+[% SET footerjs = 1 %]
[% INCLUDE 'doc-head-open.inc' %]
-<title>Koha › Acquisitions › Receipt summary for : [% name %] [% IF ( invoice ) %]invoice, [% invoice %][% END %]</title>
+<title>Koha › Acquisitions › Receipt summary for : [% name | html %] [% IF ( invoice ) %]invoice, [% invoice | html %][% END %]</title>
[% INCLUDE 'doc-head-close.inc' %]
-[% INCLUDE 'calendar.inc' %]
-[% INCLUDE 'additem.js.inc' %]
-<script type="text/javascript" src="[% interface %]/[% theme %]/js/additem_[% KOHA_VERSION %].js"></script>
-<script type="text/javascript" src="[% interface %]/[% theme %]/js/cataloging_[% KOHA_VERSION %].js"></script>
-<script type="text/javascript" src="[% interface %]/[% theme %]/js/prevent_submit_[% KOHA_VERSION %].js"></script>
-<script type="text/javascript">
-//<![CDATA[
- function Check(form) {
- [% IF (AcqCreateItemReceiving) %]
- var total_errors = CheckMandatorySubfields(form);
- if (total_errors != 0) {
- var alertString = _("Form not submitted because of the following problem(s)");
- alertString += "\n------------------------------------------------------------------------------------\n";
- alertString += "\n- " + _("%s mandatory fields empty (highlighted)").format(total_errors);
- 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];
- var text = item[column];
- if ( text == null ) text = '';
- $(tds[i]).text(text);
- }
- }
- );
- }
- }, 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).prop('checked', false);
- });
- $("input[name='items_to_receive']:lt("+n+")").each(function () {
- $(this).prop('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 id="acq_orderreceive" class="acq">
[% INCLUDE 'header.inc' %]
[% INCLUDE 'acquisitions-search.inc' %]
-<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> › <a href="/cgi-bin/koha/acqui/acqui-home.pl">Acquisitions</a> › <a href="/cgi-bin/koha/acqui/supplier.pl?booksellerid=[% booksellerid %]">[% name %]</a> › Receive items from : [% name %] [% IF ( invoice ) %][[% invoice |html %]][% END %] (order #[% ordernumber %])</div>
+<nav aria-label="Breadcrumb" class="breadcrumb">
+ <ol>
+ <li>
+ <a href="/cgi-bin/koha/mainpage.pl">Home</a>
+ </li>
+ <li>
+ <a href="/cgi-bin/koha/acqui/acqui-home.pl">Acquisitions</a>
+ </li>
+ <li>
+ <a href="/cgi-bin/koha/acqui/supplier.pl?booksellerid=[% order.basket.booksellerid | uri %]">[% name | html %]</a>
+ </li>
+ <li>
+ <a href="#" aria-current="page">
+ Receive items from : [% name | html %] [% IF ( invoice ) %]
+ [[% invoice | html %]]
+ [% END %] (order #[% order.ordernumber | html %])
+ </a>
+ </li>
+ </ol>
+</nav>
-<div id="doc3" class="yui-t2">
-
- <div id="bd">
- <div id="yui-main">
- <div class="yui-b">
+<div class="main container-fluid">
+ <div class="row">
+ [% AcqCreateItem = order.basket.effective_create_items %]
+ <div class="col-sm-10 col-sm-push-2">
+ <main>
-<h1>Receive items from : [% name %] [% IF ( invoice ) %][[% invoice |html %]] [% END %] (order #[% ordernumber %])</h1>
+<h1>Receive items from : [% name | html %] [% IF ( invoice ) %][[% invoice | html %]] [% END %] (order #[% order.ordernumber | html %])</h1>
-[% IF ( count ) %]
- <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>
+[% IF ( order ) %]
+ <form action="/cgi-bin/koha/acqui/finishreceive.pl" class="noEnterSubmit" method="post" onsubmit="return Check(this);">
+<div class="row">
+<div class="col-sm-6">
+ <div class="dialog alert order_error" style="display:none"></div>
<fieldset class="rows">
<legend>Catalog details</legend>
- <ol><li><span class="label">Title: </span><span class="title">[% title |html %]</span></li>
+ <ol><li><span class="label">Title: </span><span class="title">[% order.biblio.title | html %]</span></li>
<li> <span class="label">Author: </span>
- [% author %]</li>
+ [% order.biblio.author | html %]</li>
<li><span class="label">Copyright: </span>
- [% copyrightdate %]</li>
+ [% order.biblio.copyrightdate | html %]</li>
<li> <span class="label">ISBN: </span>
- [% isbn %]</li>
+ [% order.biblio.biblioitem.isbn | html %]</li>
<li> <span class="label">Series: </span>
- [% seriestitle %]</li>
+ [% order.biblio.seriestitle | html %]</li>
</ol>
</fieldset>
- [% IF ( suggestionid ) %]
+ [% IF suggestion %]
<fieldset class="rows">
<legend>Suggestion</legend>
<ol>
<li>
<span class="label">Suggested by: </span>
- [% surnamesuggestedby %][% IF ( firstnamesuggestedby ) %], [% firstnamesuggestedby %][% END %] (<a href="/cgi-bin/koha/suggestion/suggestion.pl?suggestionid=[% suggestionid %]&op=show">suggestion #[% suggestionid %]</a>)
+ [% suggestion.surnamesuggestedby | html %][% IF suggestion.firstnamesuggestedby %], [% suggestion.firstnamesuggestedby | html %][% END %] (<a href="/cgi-bin/koha/suggestion/suggestion.pl?suggestionid=[% suggestion.suggestionid | uri %]&op=show">suggestion #[% suggestion.suggestionid | html %]</a>)
+ [% IF suggestion.reason %]
+ <li>
+ <span class="label">Reason:</span>
+ [% SET suggestion_reasons = AuthorisedValues.GetAuthValueDropbox( 'SUGGEST' ) %]
+ [% SET other_reason = 1 %]
+ <select class="select-reason" id="reason" name="reason">
+ <option value=""> -- Choose a reason -- </option>
+ [% FOREACH reason IN suggestion_reasons %]
+ [% IF reason.lib == suggestion.reason %]
+ <option value="[% reason.lib | html %]" selected="selected">[% reason.lib | html %]</option>
+ [% SET other_reason = 0 %]
+ [% ELSE %]
+ <option value="[% reason.lib | html %]">[% reason.lib | html %]</option>
+ [% END %]
+ [% END %]
+ <option value="other">Others...</option>
+ </select>
+
+ <span id="other_reason" name="other_reason">
+ [% IF other_reason %]
+ <input type="text" size="31" id="select-other_reason" name="other_reason" placeholder="please note your reason here..." value="[% suggestion.reason | html %]"/>
+ [% ELSE %]
+ <input type="text" size="31" id="select-other_reason" name="other_reason" placeholder="please note your reason here..." />
+ [% END %]
+ <a href="#back">Cancel</a>
+ </span>
+
+ <input type="hidden" name="suggestionid" value="[% suggestion.suggestionid | html %]" />
+ </li>
+ [% END %]
</li>
</ol>
</fieldset>
[% END %]
- [% IF (AcqCreateItemReceiving) %]
+ [% IF order.subscriptionid and orders.count %]
+ <fieldset class="rows">
+ <legend>Receipt history for this subscription</legend>
+ <table id="orders">
+ <thead>
+ <tr>
+ <th>Invoice</th>
+ <th>Order number</th>
+ <th class="title-string">Creation date</th>
+ <th class="title-string">Receive date</th>
+ <th>Quantity received</th>
+ <th class="title-string">Status</th>
+ <th title="Actual cost tax exc. / Actual cost tax inc.">Spent</th>
+ <th>Internal note</th>
+ </tr>
+ </thead>
+ <tbody>
+ [% FOR suborder IN orders %]
+ <tr>
+ <td>
+ [% IF suborder.invoice %]
+ [% IF CAN_user_acquisition %]
+ <a href="/cgi-bin/koha/acqui/invoice.pl?invoiceid=[% suborder.invoiceid | uri %]" title="Invoice detail page">
+ [% suborder.invoice.invoicenumber | html %]</a>
+ [% ELSE %]
+ [% suborder.invoice.invoicenumber | html %]
+ [% END %]
+ [% END %]
+ </td>
+ <td>[% suborder.ordernumber | html %]</td>
+ <td><span title="[% suborder.basket.creationdate | uri %]">[% suborder.basket.creationdate | $KohaDates%]</span></td>
+ <td>[% IF suborder.datereceived %]<span title="[% suborder.datereceived | uri %]">[% suborder.datereceived | $KohaDates %]</span>[% END %]</td>
+ <td>[% suborder.quantityreceived | html %]</td>
+ <td>
+ [% SWITCH suborder.orderstatus %]
+ [%# FIXME We should only see/display Complete here, right? %]
+ [% CASE 'new' %]<span title="status_1">New</span>
+ [% CASE 'ordered' %]<span title="status_2">Ordered</span>
+ [% CASE 'partial' %]<span title="status_3">Partial</span>
+ [% CASE 'complete' %]<span title="status_4">Complete</span>
+ [% CASE 'cancelled' %]<span title="status_5">Cancelled</span>
+ [% END %]
+ </td>
+ <td>
+ [% IF suborder.datereceived %][%# FIXME Should only be true, right? %]
+ [%# FIXME What if unitprice has not been filled? %]
+ [% suborder.unitprice_tax_excluded * suborder.quantity | $Price %] / [% suborder.unitprice_tax_included * suborder.quantity | $Price %]
+ [% END %]
+ </td>
+ <td>[% suborder.order_internalnote | html %]</td>
+ </tr>
+ [% END %]
+ </tbody>
+ </table>
+ </fieldset>
+ [% ELSIF (AcqCreateItem == 'receiving') %]
<div id="items_list" style="display:none">
- <p><b>Items list</b></p>
+ <p><strong>Items list</strong></p>
<div style="width:100%;overflow:auto;">
<table>
<thead>
<tr>
- <th> </th>
- <th> </th>
+ <th class="noExport">Actions</th>
<th>Barcode</th>
<th>Home library</th>
<th>Holding library</th>
<th>Call number</th>
<th>Copy number</th>
<th>Inventory number</th>
- <th>Collection code</th>
+ <th>Collection</th>
<th>Item type</th>
<th>Materials</th>
<th>Notes</th>
</div>
</div>
- [% UNLESS subscriptionid %]
+ [% UNLESS order.subscriptionid %]
<fieldset class="rows" id="itemfieldset">
<legend>Item</legend>
[% IF ( NoACQframework ) %]
</fieldset>
[% END %]
[% ELSIF (AcqCreateItem == 'ordering') %]
- [% IF (items.size) %]
+ [% IF (order.items) %]
<h5>Items</h5>
<div style="width:100%;overflow:auto">
<table>
<th>Receive?</th>
<th> </th>
<th>Barcode</th>
- <th>Home branch</th>
- <th>Holding branch</th>
+ <th>Home library</th>
+ <th>Current library</th>
<th>Not for loan</th>
<th>Restricted</th>
<th>Location</th>
<th>Call number</th>
<th>Copy number</th>
<th>Inventory number</th>
- <th>Collection code</th>
+ <th>Collection</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>[% Branches.GetName( item.homebranch )%]</td>
- <td>[% Branches.GetName( item.holdingbranch ) %]</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>
+ [% FOREACH item IN order.items %]
+ <tr id="item_[% item.itemnumber | html %]">
+ <td style="text-align:center"><input type="checkbox" name="items_to_receive" value="[% item.itemnumber | html %]" /></td>
+ <td><a style="cursor:pointer" onclick="PopupEditPage([% item.biblionumber | html %],[% item.itemnumber | html %]);">Edit</a></td>
+ <td>[% item.barcode | html %]</td>
+ <td>[% Branches.GetName( item.homebranch ) | html %]</td>
+ <td>[% Branches.GetName( item.holdingbranch ) | html %]</td>
+ <td>[% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.notforloan', authorised_value => item.notforloan ) | html %]</td>
+ <td>[% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.restricted', authorised_value => item.restricted ) | html %]</td>
+ <td><span class="shelvingloc">[% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.location', authorised_value => item.location ) | html %]</span></td>
+ <td>[% item.itemcallnumber | html %]</td>
+ <td>[% item.copynumber | html %]</td>
+ <td>[% item.stocknumber | html %]</td>
+ <td>[% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.ccode', authorised_value => item.ccode ) | html %]</td>
+ <td>[% ItemTypes.GetDescription( item.itype ) | html %]</td>
+ <td>[% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.materials', authorised_value => item.materials ) | html %]</td>
+ <td>[% item.itemnotes | html %]</td>
</tr>
[% END %]
</tbody>
</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="booksellerid" value="[% booksellerid %]" />
+ <input type="hidden" name="biblionumber" value="[% order.biblionumber | html %]" />
+ <input type="hidden" name="invoiceid" value="[% invoiceid | html %]" />
+ <input type="hidden" name="ordernumber" value="[% order.ordernumber | html %]" />
+ <input type="hidden" name="booksellerid" value="[% order.basket.booksellerid | html %]" />
</div>
- <div class="yui-u">
+ <div class="col-sm-6">
<fieldset class="rows">
<legend>Accounting details</legend>
<ol>
<input type="text" size="10" id="datereceived" name="datereceived" value="[% datereceived | $KohaDates %]" class="datepicker" />
</li>
<li><label for="bookfund">Fund: </label><select id="bookfund" name="bookfund">
- <option value="">Keep current ([% budget_period_description %] - [% bookfund %])</option>
+ <option value="">Keep current ([% budget_period_description | html %] - [% order.fund.budget_name | html %])</option>
[% FOREACH period IN budget_loop %]
- <optgroup label="[% period.description %]">
+ <optgroup label="[% period.description | html %]">
[% FOREACH fund IN period.funds %]
[% IF ( fund.b_sel ) %]
- <option value="[% fund.b_id %]" selected="selected">[% fund.b_txt %]</option>
+ <option value="[% fund.b_id | html %]" selected="selected">[% fund.b_txt | html %]</option>
[% ELSE %]
- <option value="[% fund.b_id %]">[% fund.b_txt %]</option>
+ <option value="[% fund.b_id | html %]">[% fund.b_txt | html %]</option>
[% END %]
[% END %]
+ </optgroup>
[% END %]
</select></li>
- <li><label> </label><span>(Current: [% budget_period_description %] - [% 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="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 %]" />
+ <li><label> </label><span>(Current: [% budget_period_description | html %] - [% bookfund | html %])</span></li>
+ <li>
+ <label for="creator">Ordered by: </label>
+ <span>
+ [% INCLUDE 'patron-title.inc' patron = creator %]
+ </span>
+ </li>
+ <li><label for="quantity_to_receive">Quantity ordered: </label><span class="label">
+ [% IF edit or order.subscriptionid %]
+ <input type="text" id="quantity_to_receive" name="quantity" value="[% order.quantity | html %]" />
[% ELSE%]
- <input type="text" readonly="readonly" id="quantity_to_receive" name="quantity" value="[% quantity %]" />
+ <input type="text" readonly="readonly" id="quantity_to_receive" name="quantity" value="[% order.quantity | html %]" />
[% 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 %]
+ [% IF order.subscriptionid %]
+ <input type="text" size="20" name="quantityrec" id="quantity" value="[% order.quantity | html %]" />
+ <input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="[% order.quantityreceived | html %]" />
+ [% ELSIF AcqCreateItem == 'receiving' %]
<input readonly="readonly" type="text" size="20" name="quantityrec" id="quantity" value="0" />
- [% END %]
[% ELSE %]
- [% IF ( quantityreceived ) %]
+ [% IF ( order.quantityreceived ) %]
[% IF ( edit ) %]
- <input type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceived %]" />
- <input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="[% quantityreceived %]" />
+ <input type="text" size="20" name="quantityrec" id="quantity" value="[% order.quantityreceived | html %]" />
+ <input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="[% order.quantityreceived | html %]" />
[% ELSE %]
- [% IF ( items ) %]
- <input readonly="readonly" type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceivedplus1 %]" />
+ [% IF ( order.items.count ) %]
+ <input readonly="readonly" type="text" size="20" name="quantityrec" id="quantity" value="[% order.quantityreceived + 1 | html %]" />
[% ELSE %]
- <input type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceivedplus1 %]" />
+ <input type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceived + 1 | html %]" />
[% END %]
- <input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="[% quantityreceived %]" />
+ <input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="[% order.quantityreceived | html %]" />
[% END %]
[% ELSE %]
- [% IF ( subscriptionid ) %]
- <input type="text" readonly="readonly" id="quantity" size="20" name="quantityrec" value="1" />
- [% ELSE %]
- <input type="text" id="quantity" size="20" name="quantityrec" value="1" />
- [% END %]
+ <input type="text" id="quantity" size="20" name="quantityrec" value="1" />
<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) %]
+ [% END %][%# IF (order.subscriptionid) ELSIF (AcqCreateItem == 'receiving' ) %]
</li>
[% IF ( gst_values ) %]
<li>
<label for="tax_rate">Tax rate: </label>
<select name="tax_rate" id="tax_rate">
+ [% tax_rate = order.tax_rate_on_receiving || order.tax_rate_on_ordering %]
[% FOREACH gst IN gst_values %]
[% IF gst.option == tax_rate %]
- <option value="[% gst.option %]" selected="selected">[% gst.option * 100 %]%</option>
+ <option value="[% gst.option | html %]" selected="selected">[% gst.option * 100 | html %]%</option>
[% ELSE %]
- <option value="[% gst.option %]">[% gst.option * 100 %]%</option>
+ <option value="[% gst.option | html %]">[% gst.option * 100 | html %]%</option>
[% END %]
[% END %]
</select>
<input type="hidden" name="tax_rate" value="0" />
[% END %]
- <li><label for="rrp">Replacement cost: </label>[% rrp | $Price %]</li>
- <li><label for="ecost">Budgeted cost: </label>[% ecost | $Price %]</li>
+ <li><label for="rrp">Retail price: </label>
+ [% IF (invoiceincgst == 1) %]
+ [% order.rrp_tax_included | $Price %]<span class="hint">(adjusted for [% active_currency.currency | html %],tax inclusive)</span></li>
+ [% ELSE %]
+ [% order.rrp_tax_excluded | $Price %]<span class="hint">(adjusted for [% active_currency.currency | html %],tax exclusive)</span></li>
+ [% END %]
+ <li>
+ <label for="replacementprice">Replacement price:</label>
+ <input type="text" size="20" name="replacementprice" id="replacementprice" value="[% order.replacementprice | $Price on_editing => 1 %]" />
+ </li>
+ <li>
+ [% IF (invoiceincgst) %]
+ <label for="ecost">Budgeted cost: </label>[% order.ecost_tax_included | $Price %] <span class="hint">(tax inclusive)</span>
+ [% ELSE %]
+ <label for="ecost">Budgeted cost: </label>[% order.ecost_tax_excluded | $Price %] <span class="hint">(tax exclusive)</span>
+ [% END %]
+ </li>
<li>
<label for="unitprice">Actual cost:</label>
- <input type="text" size="20" name="unitprice" id="unitprice" value="[% unitprice | $Price %]" />
+ [% IF (invoiceincgst) %]
+ <input type="text" size="20" name="unitprice" id="unitprice" value="[% order.unitprice_tax_included | $Price on_editing => 1 %]" /> <span class="hint">(tax inclusive)</span>
+ [% ELSE %]
+ <input type="text" size="20" name="unitprice" id="unitprice" value="[% order.unitprice_tax_excluded | $Price on_editing => 1 %]" /> <span class="hint">(tax exclusive)</span>
+ [% END %]
+ <label style="font-weight: inherit; float:none;"><input type="checkbox" name="change_currency">Change currency</label>
+ </li>
+ <li id="select_currency">
+ <label for="unitprice_currency"></label>
+ <input type="text" size="20" name="unitprice" id="unitprice_currency" value="" />
+ [% IF currencies.count %]
+ <select name="currency">
+ <option value="[% active_currency.rate | html %]" selected="selected">[% active_currency.currency | html %] ([% active_currency.symbol | html %])</option>
+ [% FOR currency IN currencies %]
+ <option value="[% currency.rate | html %]">[% currency.currency | html %] ([% currency.symbol | html %])</option>
+ [% END %]
+ </select>
+ [% END %]
</li>
- <li><label for="order_internalnote">Internal note: </label><textarea name="order_internalnote" width="40" rows="8" >[% order_internalnote %]</textarea></li>
+ <li><label for="order_internalnote">Internal note: </label><textarea name="order_internalnote" width="40" rows="8" >[% order_internalnote | html %]</textarea></li>
[% IF order_vendornote %]
- <li><label for="order_vendornote">Vendor note: </label><span>[% order_vendornote %]</span></li>
+ <li><label for="order_vendornote">Vendor note: </label><span>[% order_vendornote | html %]</span></li>
[% END %]
</ol>
</fieldset>
</div>
-</div><div class="yui-g"><fieldset class="action">
+</div><div class="row"><fieldset class="action">
<input type="submit" value="Save" class="button" accesskey="w" />
- <a class="cancel" href="/cgi-bin/koha/acqui/parcel.pl?invoiceid=[% invoiceid %]&sticky_filters=1">Cancel</a>
+ <a class="cancel" href="/cgi-bin/koha/acqui/parcel.pl?invoiceid=[% invoiceid | html %]">Cancel</a>
</fieldset></div> </form>
[% ELSE %]
This ordernumber does not exist.
[% END %]
-</div>
-</div>
-<div class="yui-b">
-[% INCLUDE 'acquisitions-menu.inc' %]
-</div>
-</div>
+</main>
+</div> <!-- /.col-sm-10.col-sm-push-2 -->
+
+<div class="col-sm-2 col-sm-pull-10">
+ <aside>
+ [% INCLUDE 'acquisitions-menu.inc' %]
+ </aside>
+</div> <!-- /.col-sm-2.col-sm-pull-10 -->
+</div> <!-- /.row -->
+[% MACRO jsinclude BLOCK %]
+ [% Asset.js("js/acquisitions-menu.js") | $raw %]
+[% INCLUDE 'calendar.inc' %]
+ [% Asset.js("js/additem.js") | $raw %]
+ [% Asset.js("js/cataloging.js") | $raw %]
+ <script>
+ function Check(form) {
+ [% IF (AcqCreateItem == 'receiving') %]
+ var total_errors = CheckMandatorySubfields(form);
+ if (total_errors != 0) {
+ var alertString = _("Form not submitted because of the following problem(s)");
+ alertString += "\n------------------------------------------------------------------------------------\n";
+ alertString += "\n- " + _("%s mandatory fields empty (highlighted)").format(total_errors);
+ alert(alertString);
+ return false;
+ }
+
+ if(check_additem('[% Koha.Preference("UniqueItemFields") | html %]') == 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('[% Koha.Preference("UniqueItemFields") | html %]') == false){
+ alert(_("Duplicate values detected. Please correct the errors and resubmit.") );
+ if(tobedeleted) {
+ $(lastitemblock).appendTo("#outeritemblock");
+ }
+ return false;
+ };
+ [% END %]
+
+ if( $("#quantity").val() < 1 ) {
+ alert(_("You must receive at least one item"));
+ return false;
+ }
+
+ 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];
+ var text = item[column];
+ if ( text == null ) text = '';
+ $(tds[i]).text(text);
+ }
+ }
+ );
+ }
+ }, 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).prop('checked', false);
+ });
+ $("input[name='items_to_receive']:lt("+n+")").each(function () {
+ $(this).prop('checked', true);
+ });
+ }
+ [% END %]
+
+ $(document).ready(function() {
+ [% IF (AcqCreateItem == 'receiving') %]
+ cloneItemBlock(0, '[% Koha.Preference('UniqueItemFields') | html %]');
+ [% ELSIF (AcqCreateItem == 'ordering') && not order.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 %]
+
+ $("input[name='change_currency']").on("change", function(){
+ if ( $(this).is(":checked") ) {
+ $("#select_currency").show();
+ $("#unitprice").prop("readonly", "true");
+ } else {
+ $("#select_currency").hide();
+ $("#unitprice").prop("readonly", "");
+ }
+ }).change();
+
+ function update_unitprice() {
+ var rate = Number($("select[name='currency'] option:selected").val());
+ var unitprice = $("#unitprice_currency").val();
+ var new_unitprice = Number( unitprice * rate ).toFixed(2);
+ $("#unitprice").val(new_unitprice);
+ }
+ $("select[name='currency']").on("change", function(){update_unitprice()} );
+ $("#unitprice_currency").on("change", function(){update_unitprice()} );
+
+ [% IF other_reason %]
+ $(".select-reason").hide();
+ $(".select-reason").find("option[value='other']").attr("selected","selected");
+ $("#other_reason").show();
+ [% ELSE %]
+ $("#other_reason").hide();
+ [% END %]
+ $(".select-reason").change(function(){
+ if($(this).val() == "other"){
+ $(this).hide();
+ $("#other_reason").show();
+ }
+ });
+ $("a[href*=back]").click(function(){
+ $(".select-reason").show().find("option[value='']").attr("selected","selected");
+ $("#other_reason").hide();
+ });
+
+ });
+ </script>
+[% END %]
+
[% INCLUDE 'intranet-bottom.inc' %]