Bug 18639: Add replacementprice field to acquisitions workflow
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / acqui / orderreceive.tt
index dc0beec..5af0604 100644 (file)
+[% USE raw %]
+[% USE Asset %]
+[% USE KohaDates %]
+[% USE Branches %]
+[% USE Price %]
+[% SET footerjs = 1 %]
 [% INCLUDE 'doc-head-open.inc' %]
-<title>Koha &rsaquo; Acquisitions &rsaquo; Receipt summary for : [% name %] [% IF ( invoice ) %]invoice, [% invoice %][% END %]</title>
+<title>Koha &rsaquo; Acquisitions &rsaquo; Receipt summary for : [% name | html %] [% IF ( invoice ) %]invoice, [% invoice | html %][% 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/cataloging.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 = 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];
-                                $(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 id="acq_orderreceive" class="acq">
 [% INCLUDE 'header.inc' %]
 [% INCLUDE 'acquisitions-search.inc' %]
 
-<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/acqui/acqui-home.pl">Acquisitions</a> &rsaquo; <a href="/cgi-bin/koha/acqui/supplier.pl?booksellerid=[% booksellerid %]">[% name %]</a> &rsaquo; Receive items from : [% name %] [% IF ( invoice ) %][[% invoice %]][% END %] (order #[% ordernumber %])</div>
+<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/acqui/acqui-home.pl">Acquisitions</a> &rsaquo; <a href="/cgi-bin/koha/acqui/supplier.pl?booksellerid=[% booksellerid | html %]">[% name | html %]</a> &rsaquo; Receive items from : [% name | html %] [% IF ( invoice ) %][[% invoice | html %]][% END %] (order #[% ordernumber | html %])</div>
 
-<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">
+        <div class="col-sm-10 col-sm-push-2">
+            <main>
 
-<h1>Receive items from : [% name %] [% IF ( invoice ) %][[% invoice %]] [% END %] (order #[% ordernumber %])</h1>
+<h1>Receive items from : [% name | html %] [% IF ( invoice ) %][[% invoice | html %]] [% END %] (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="row">
+<div class="col-sm-6">
     <div class="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">[% title | html %]</span></li>
     <li> <span class="label">Author: </span>
-        [% author %]</li>
+        [% author | html %]</li>
     <li><span class="label">Copyright: </span>
-        [% copyrightdate %]</li>
+        [% copyrightdate | html %]</li>
     <li> <span class="label">ISBN: </span>
-        [% isbn %]</li>
+        [% isbn | html %]</li>
     <li> <span class="label">Series: </span>
-        [% seriestitle %]</li>
+        [% seriestitle | html %]</li>
     </ol>
        </fieldset>
 
         <ol>
           <li>
             <span class="label">Suggested by: </span>
-            [% surnamesuggestedby %][% IF ( firstnamesuggestedby ) %], [% firstnamesuggestedby %][% END %] (<a href="/cgi-bin/koha/suggestion/suggestion.pl?suggestionid=[% suggestionid %]&amp;op=show">suggestion #[% suggestionid %]</a>)
+            [% surnamesuggestedby | html %][% IF ( firstnamesuggestedby ) %], [% firstnamesuggestedby | html %][% END %] (<a href="/cgi-bin/koha/suggestion/suggestion.pl?suggestionid=[% suggestionid | html %]&amp;op=show">suggestion #[% suggestionid | html %]</a>)
           </li>
         </ol>
         </fieldset>
                             <th>Location</th>
                             <th>Call number</th>
                             <th>Copy number</th>
-                            <th>Stock number</th>
+                            <th>Inventory number</th>
                             <th>Collection code</th>
                             <th>Item type</th>
                             <th>Materials</th>
                             <th>Location</th>
                             <th>Call number</th>
                             <th>Copy number</th>
-                            <th>Stock number</th>
+                            <th>Inventory number</th>
                             <th>Collection code</th>
                             <th>Item type</th>
                             <th>Materials</th>
                     </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 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>[% item.notforloan | html %]</td>
+                                <td>[% item.restricted | html %]</td>
+                                <td>[% item.location | html %]</td>
+                                <td>[% item.itemcallnumber | html %]</td>
+                                <td>[% item.copynumber | html %]</td>
+                                <td>[% item.stocknumber | html %]</td>
+                                <td>[% item.collection | html %]</td>
+                                <td>[% item.itemtype | html %]</td>
+                                <td>[% 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="datereceived" value="[% datereceived_iso %]" />
-    <input type="hidden" name="gstrate" value="[% gstrate %]" />
+    <input type="hidden" name="biblionumber" value="[% biblionumber | html %]" />
+    <input type="hidden" name="invoiceid" value="[% invoiceid | html %]" />
+    <input type="hidden" name="ordernumber" value="[% ordernumber | html %]" />
+    <input type="hidden" name="booksellerid" value="[% booksellerid | html %]" />
        </div>
-       <div class="yui-u">
+    <div class="col-sm-6">
     <fieldset class="rows">
     <legend>Accounting details</legend>
-       <ol>
-       <li><label for="datereceived">Date received: </label><span> [% datereceived %] </span></li>
+        <ol>
+            <li>
+                <label for="datereceived">Date received: </label>
+                <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 %] - [% bookfund | 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>&nbsp;</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>&nbsp;</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 to receive: </label><span class="label">
            [% IF ( edit and not subscriptionid) %]
-               <input type="text" id="quantity_to_receive" name="quantity" value="[% quantity %]" />
+               <input type="text" id="quantity_to_receive" name="quantity" value="[% 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="[% quantity | html %]" />
            [% END %]
            </span></li>
         <li><label for="quantity">Quantity received: </label>
           [% ELSE %]
             [% IF ( 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="[% quantityreceived | html %]" />
+                    <input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="[% quantityreceived | html %]" />
                 [% ELSE %]
                     [% IF ( items ) %]
-                        <input readonly="readonly" type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceivedplus1 %]" />
+                        <input readonly="readonly" type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceivedplus1 | html %]" />
                     [% ELSE %]
-                        <input type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceivedplus1 %]" />
+                        <input type="text" size="20" name="quantityrec" id="quantity" value="[% quantityreceivedplus1 | html %]" />
                     [% END %]
-                    <input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="[% quantityreceived %]" />
+                    <input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="[% quantityreceived | html %]" />
                 [% END %]
             [% ELSE %]
                 [% IF ( subscriptionid ) %]
             </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>
-        <li><label for="cost">Actual cost:</label>
-        [% IF ( unitprice ) %]
-         <input type="text" size="20" name="cost" id="cost" value="[% unitprice %]" />
+
+        [% IF ( gst_values ) %]
+            <li>
+                <label for="tax_rate">Tax rate: </label>
+                <select name="tax_rate" id="tax_rate">
+                [% FOREACH gst IN gst_values %]
+                    [% IF gst.option == tax_rate %]
+                        <option value="[% gst.option | html %]" selected="selected">[% gst.option * 100 | html %]%</option>
+                    [% ELSE %]
+                        <option value="[% gst.option | html %]">[% gst.option * 100 | html %]%</option>
+                    [% END %]
+                [% END %]
+                </select>
+            </li>
         [% ELSE %]
-            <input type="text" size="20" name="cost" id="cost" value="[% ecost %]" />
-        [% 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_vendornote">Vendor note: </label><textarea name="order_vendornote" width="40" rows="8" >[% order_vendornote %]</textarea></li>
+            <input type="hidden" name="tax_rate" value="0" />
+        [% END %]
+
+        <li><label for="rrp">Retail price: </label>[% rrp | $Price | html %]</li>
+        <li>
+            <label for="replacementprice">Replacement price:</label>
+            <input type="text" size="20" name="replacementprice" id="replacementprice" value="[% replacementprice | $Price | html %]" />
+        </li>
+        <li><label for="ecost">Budgeted cost: </label>[% ecost | $Price | html %]</li>
+        <li>
+            <label for="unitprice">Actual cost:</label>
+            <input type="text" size="20" name="unitprice" id="unitprice" value="[% unitprice | $Price on_editing => 1 | html %]" />
+        </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 | 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 %]&sticky_filters=1">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' %]
+    [% INCLUDE 'additem.js.inc' %]
+    [% Asset.js("js/additem.js") | $raw %]
+    [% Asset.js("js/cataloging.js") | $raw %]
+    [% Asset.js("js/prevent_submit.js") | $raw %]
+    <script>
+        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 | 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('[% UniqueItemFields | html %]') == 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 | html %]');
+            [% 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>
+[% END %]
+
 [% INCLUDE 'intranet-bottom.inc' %]