Bug 12395: Save order line's creator
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / acqui / invoices.tt
index 578b7b3..fe65803 100644 (file)
@@ -1,97 +1,25 @@
+[% USE Asset %]
 [% USE KohaDates %]
-
+[% USE Branches %]
+[% SET footerjs = 1 %]
 [% INCLUDE 'doc-head-open.inc' %]
 <title>Koha &rsaquo; Acquisitions &rsaquo; Invoices</title>
-<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
+[% Asset.css("css/datatables.css") %]
 [% INCLUDE 'doc-head-close.inc' %]
-[% INCLUDE 'datatables.inc' %]
-[% INCLUDE 'calendar.inc' %]
-<script type="text/javascript">
-//<![CDATA[
-$(document).ready(function() {
-    var resultst = $("#resultst").dataTable($.extend(true, {}, dataTablesDefaults, {
-        sDom: "t",
-        aoColumnDefs: [
-            { "bSortable": false, "aTargets": [1, 8] },
-            { "bVisible": false, "aTargets": [0] },
-            { "sType": "title-string", "aTargets" : [ "title-string" ] }
-        ]
-    }));
-
-    $("#show_only_subscription").attr("checked", false);
-
-    $("#show_only_subscription").click(function(){
-        if ( $(this).attr("checked") ) {
-            resultst.fnFilter( "1", 0, true );
-        } else {
-            resultst.fnFilter( '', 0 );
-        }
-    });
 
-    $('#merge').click(function (ev) {
-        var booksellerid;
-        var mismatch;
-        var invoices = [ ];
-        if ($('.select-invoice:checked').size() < 2) {
-            alert(_("You must select at least two invoices to merge."));
-            return false;
-        }
-        $('.select-invoice:checked').each(function () {
-            var row = $(this).parents('tr');
-            booksellerid = booksellerid || $(row).attr('data-booksellerid');
-            if (booksellerid !== $(row).attr('data-booksellerid')) {
-                mismatch = true;
-            }
-            invoices.push({ 'invoiceid': $(row).attr('data-invoiceid'),
-                            'invoicenumber': $(row).find('td:nth-child(2) a').text(),
-                            'shipmentdate': $(row).attr('data-shipmentdate'),
-                            'billingdate': $(row).attr('data-billingdate'),
-                            'shipmentcost': $(row).attr('data-shipmentcost'),
-                            'shipment_budgetid': $(row).attr('data-shipment_budgetid'),
-                            'closedate': $(row).attr('data-closedate'), });
-            $('#merge_invoice_form').append('<input type="hidden" name="merge" value="' + $(row).attr('data-invoiceid') + '" />');
-        });
-        if (mismatch) {
-            alert(_("All invoices for merging must be from the same vendor"));
-        } else {
-            $('#merge_table tbody').empty();
-            $.each(invoices, function (idx, invoice) {
-                var row = $('<tr data-invoiceid="' + invoice.invoiceid + '"><td>' + invoice.invoicenumber + '</td><td>' + invoice.shipmentdate + '</td><td>' + invoice.billingdate + '</td><td>' + invoice.shipmentcost + '</td></tr>');
-                $(row).appendTo('#merge_table tbody');
-                $(row).click(function () {
-                    $('#merge_table tbody tr').removeClass('active');
-                    $(this).addClass('active');
-                    $('#merge_invoicenumber').text(invoice.invoicenumber);
-                    $.each(['invoiceid', 'shipmentdate', 'billingdate', 'shipmentcost', 'shipment_budgetid'], function (idx, prop) {
-                        $('#merge_' + prop).val(invoice[prop]);
-                    });
-                    if (invoice.closedate) {
-                        $('#merge_status').text(_("Closed on %s").format(invoice.closedate));
-                    } else {
-                        $('#merge_status').text(_("Open"));
-                    }
-                });
-            });
-            $('#merge_table tbody tr:first').click();
-            $('#merge_invoices').show();
-        }
-    });
-});
-//]]>
-</script>
 </head>
 
-<body>
+<body id="acq_invoices" 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; Invoices</div>
 
-<div id="doc3" class="yui-t2">
+<div class="main container-fluid">
+    <div class="row">
+        <div class="col-sm-10 col-sm-push-2">
+            <main>
 
-<div id="bd">
-  <div id="yui-main">
-    <div class="yui-b">
       <h1>Invoices</h1>
       [% IF ( do_search ) %]
         [% IF invoices %]
@@ -106,6 +34,7 @@ $(document).ready(function() {
                 <th>&nbsp;</th>
                 <th>Invoice no.</th>
                 <th>Vendor</th>
+                <th class="title-string">Shipment date</th>
                 <th class="title-string">Billing date</th>
                 <th>Received biblios</th>
                 <th>Received items</th>
@@ -120,6 +49,13 @@ $(document).ready(function() {
                   <td><input type="checkbox" class="select-invoice" value="[% invoice.invoiceid %]" /></td>
                   <td><a href="/cgi-bin/koha/acqui/invoice.pl?invoiceid=[% invoice.invoiceid %]">[% invoice.invoicenumber %]</a></td>
                   <td><a href="/cgi-bin/koha/acqui/supplier.pl?booksellerid=[% invoice.booksellerid %]">[% invoice.suppliername %]</a></td>
+                  <td>
+                    [% IF invoice.shipmentdate %]
+                      <span title="[% invoice.shipmentdate %]">[% invoice.shipmentdate | $KohaDates %]</span>
+                    [% ELSE %]
+                      <span title="0000-00-00"></span>
+                    [% END %]
+                  </td>
                   <td>
                     [% IF invoice.billingdate %]
                       <span title="[% invoice.billingdate %]">[% invoice.billingdate | $KohaDates %]</span>
@@ -139,18 +75,18 @@ $(document).ready(function() {
                   <td>
 
                       <div class="dropdown dropup">
-                          <a class="btn btn-mini dropdown-toggle" id="invoiceactions[% invoice.invoiceid %]" role="button" data-toggle="dropdown" href="#">
+                          <a class="btn btn-default btn-xs dropdown-toggle" id="invoiceactions[% invoice.invoiceid %]" role="button" data-toggle="dropdown" href="#">
                              Actions <b class="caret"></b>
                           </a>
                           <ul class="dropdown-menu pull-right" role="menu" aria-labelledby="invoiceactions[% invoice.invoiceid %]">
-                              <li><a href="/cgi-bin/koha/acqui/invoice.pl?invoiceid=[% invoice.invoiceid %]"><i class="icon-search"></i> Details</a></li>
+                              <li><a href="/cgi-bin/koha/acqui/invoice.pl?invoiceid=[% invoice.invoiceid %]"><i class="fa fa-search"></i> Details</a></li>
                             [% IF invoice.closedate %]
-                                <li><a href="invoice.pl?op=reopen&amp;invoiceid=[% invoice.invoiceid %]&amp;referer=/cgi-bin/koha/acqui/invoices.pl%3Fop=do_search%26invoicenumber=[% invoicenumber %]%26supplier=[% booksellerid %]%26billingdatefrom=[% billingdatefrom %]%26billingdateto=[% billingdateto %]%26isbneanissn=[% isbneanissn %]%26title=[% title %]%26author=[% author %]%26publisher=[% publisher %]%26publicationyear=[% publicationyear %]%26branch=[% branch %]"><i class="icon-refresh"></i> Reopen</a></li>
+                                <li><a href="invoice.pl?op=reopen&amp;invoiceid=[% invoice.invoiceid %]&amp;referer=/cgi-bin/koha/acqui/invoices.pl%3Fop=do_search%26invoicenumber=[% invoicenumber %]%26supplier=[% booksellerid %]%26shipmentdatefrom=[% shipmentdatefrom | $KohaDates %]%26shipmentdateto=[% shipmentdateto | $KohaDates %]%26billingdatefrom=[% billingdatefrom | $KohaDates %]%26billingdateto=[% billingdateto | $KohaDates %]%26isbneanissn=[% isbneanissn %]%26title=[% title %]%26author=[% author %]%26publisher=[% publisher %]%26publicationyear=[% publicationyear %]%26branch=[% branch %]"><i class="fa fa-refresh"></i> Reopen</a></li>
                             [% ELSE %]
-                                <li><a href="invoice.pl?op=close&amp;invoiceid=[% invoice.invoiceid %]&amp;referer=/cgi-bin/koha/acqui/invoices.pl%3Fop=do_search%26invoicenumber=[% invoicenumber %]%26supplier=[% booksellerid %]%26billingdatefrom=[% billingdatefrom %]%26billingdateto=[% billingdateto %]%26isbneanissn=[% isbneanissn %]%26title=[% title %]%26author=[% author %]%26publisher=[% publisher %]%26publicationyear=[% publicationyear %]%26branch=[% branch %]"><i class="icon-remove-sign"></i> Close</a></li>
+                                <li><a href="invoice.pl?op=close&amp;invoiceid=[% invoice.invoiceid %]&amp;referer=/cgi-bin/koha/acqui/invoices.pl%3Fop=do_search%26invoicenumber=[% invoicenumber %]%26supplier=[% booksellerid %]%26shipmentdatefrom=[% shipmentdatefrom | $KohaDates %]%26shipmentdateto=[% shipmentdateto | $KohaDates %]%26billingdatefrom=[% billingdatefrom | $KohaDates %]%26billingdateto=[% billingdateto | $KohaDates %]%26isbneanissn=[% isbneanissn %]%26title=[% title %]%26author=[% author %]%26publisher=[% publisher %]%26publicationyear=[% publicationyear %]%26branch=[% branch %]"><i class="fa fa-times-circle"></i> Close</a></li>
                             [% END %]
                             [% UNLESS invoice.receivedbiblios || invoice.receiveditems %]
-                                <li><a href="invoice.pl?op=delete&amp;invoiceid=[% invoice.invoiceid %]&amp;referer=/cgi-bin/koha/acqui/invoices.pl%3Fop=do_search%26invoicenumber=[% invoicenumber %]%26supplier=[% booksellerid %]%26billingdatefrom=[% billingdatefrom %]%26billingdateto=[% billingdateto %]%26isbneanissn=[% isbneanissn %]%26title=[% title %]%26author=[% author %]%26publisher=[% publisher %]%26publicationyear=[% publicationyear %]%26branch=[% branch %]"><i class="icon-remove"></i> Delete</a></li>
+                                <li><a href="invoice.pl?op=delete&amp;invoiceid=[% invoice.invoiceid %]&amp;referer=/cgi-bin/koha/acqui/invoices.pl%3Fop=do_search%26invoicenumber=[% invoicenumber %]%26supplier=[% booksellerid %]%26shipmentdatefrom=[% shipmentdatefrom | $KohaDates %]%26shipmentdateto=[% shipmentdateto | $KohaDates %]%26billingdatefrom=[% billingdatefrom | $KohaDates %]%26billingdateto=[% billingdateto | $KohaDates %]%26isbneanissn=[% isbneanissn %]%26title=[% title %]%26author=[% author %]%26publisher=[% publisher %]%26publicationyear=[% publicationyear %]%26branch=[% branch %]" class="delete_invoice"><i class="fa fa-trash"></i> Delete</a></li>
                             [% END %]
                           </ul>
                       </div>
@@ -170,12 +106,15 @@ $(document).ready(function() {
                         <tbody>
                         </tbody>
                     </table></li>
-                    <li><label for="merge_invoicenumber">Invoice number:</label><span id="merge_invoicenumber"></span></li>
+                    <li><label for="merge_invoicenumber" class="required">Invoice number:</label>
+                            <input type="text" size="10" id="merge_invoicenumber" name="invoicenumber" value="" class="required" required="required" />
+                            <span class="required">Required</span>
+                            </li>
                     <li><label for="merge_shipmentdate">Shipment date:</label>
-                            <input type="text" size="10" id="merge_shipmentdate" name="shipmentdate" value="" readonly="readonly" class="datepicker" /></li>
+                            <input type="text" size="10" id="merge_shipmentdate" name="shipmentdate" value="" class="datepicker" /></li>
 
                     <li><label for="merge_billingdate">Billing date:</label>
-                            <input type="text" size="10" id="merge_billingdate" name="billingdate" value="" readonly="readonly" class="datepicker" /></li>
+                            <input type="text" size="10" id="merge_billingdate" name="billingdate" value="" class="datepicker" /></li>
 
                     <li><label for="merge_shipmentcost">Shipment cost:</label>
                             <input type="text" size="10" id="merge_shipmentcost" name="shipmentcost" value="" /></li>
@@ -197,48 +136,64 @@ $(document).ready(function() {
                 </form>
             </div>
         [% ELSE %]
-          <p>Sorry, but there is no results for your search.</p>
+          <p>Sorry, but there are no results for your search.</p>
           <p>Search was:
             <ul>
               [% IF ( invoicenumber ) %]
-                <li>Invoice no.: [% invoicenumber %]</li>
+                <li>Invoice no.: [% invoicenumber |html %]</li>
               [% END %]
               [% IF booksellerid %]
                 <li>Vendor: [% suppliername %]</li>
               [% END %]
-              [% IF ( billingdatefrom ) %]
+              [% IF shipmentdatefrom %]
+                <li>Shipment date:
+                [% IF shipmentdateto %]
+                  From [% shipmentdatefrom | $KohaDates %]
+                  To [% shipmentdateto | $KohaDates %]
+                [% ELSE %]
+                  All since [% shipmentdatefrom | $KohaDates %]
+                [% END %]
+                </li>
+              [% ELSE %]
+                [% IF shipmentdateto %]
+                  <li>Shipment date:
+                    All until [% shipmentdateto | $KohaDates %]
+                  </li>
+                [% END %]
+              [% END %]
+              [% IF billingdatefrom %]
                 <li>Billing date:
-                [% IF ( billingdateto ) %]
-                  From [% billingdatefrom %]
-                  To [% billingdateto %]
+                [% IF billingdateto %]
+                  From [% billingdatefrom | $KohaDates %]
+                  To [% billingdateto | $KohaDates %]
                 [% ELSE %]
-                  All since [% billingdatefrom %]
+                  All since [% billingdatefrom | $KohaDates %]
                 [% END %]
                 </li>
               [% ELSE %]
-                [% IF ( billingdateto ) %]
+                [% IF billingdateto %]
                   <li>Billing date:
-                    All until [% billingdateto %]
+                    All until [% billingdateto | $KohaDates %]
                   </li>
                 [% END %]
               [% END %]
               [% IF ( isbneanissn ) %]
-                <li>ISBN/EAN/ISSN: [% isbneanissn %]</li>
+                <li>ISBN/EAN/ISSN: [% isbneanissn |html %]</li>
               [% END %]
               [% IF ( title ) %]
-                <li>Title: [% title %]</li>
+                <li>Title: [% title |html %]</li>
               [% END %]
               [% IF ( author ) %]
-                <li>Author: [% author %]</li>
+                <li>Author: [% author |html %]</li>
               [% END %]
               [% IF ( publisher ) %]
-                <li>Publisher: [% publisher %]</li>
+                <li>Publisher: [% publisher |html %]</li>
               [% END %]
               [% IF ( publicationyear ) %]
-                <li>Publication year: [% publicationyear %]</li>
+                <li>Publication year: [% publicationyear |html %]</li>
               [% END %]
               [% IF ( branch ) %]
-                <li>Library: [% branchname %]</li>
+                <li>Library: [% Branches.GetName( branch ) %]</li>
               [% END %]
             </ul>
           </p>
@@ -246,16 +201,18 @@ $(document).ready(function() {
       [% ELSE %]
         <p>Use the search form on the left to find invoices.</p>
       [% END %]<!-- do_search -->
-    </div>
-  </div>
-  <div class="yui-b">
+    </main>
+</div> <!-- /.col-sm-10.col-sm-push-2 -->
+
+<div class="col-sm-2 col-sm-pull-10">
+<aside>
     <form action="" method="get">
-      <fieldset class="brief">
+      <fieldset class="sidebar brief">
         <h3>Search filters</h3>
         <ol>
           <li>
             <label for="invoicenumber">Invoice no:</label>
-            <input type="text" id="invoicenumber" name="invoicenumber" value="[% invoicenumber %]" class="focus" />
+            <input type="text" id="invoicenumber" name="invoicenumber" value="[% invoicenumber |html %]" class="focus" />
           </li>
           <li>
             <label for="supplier">Vendor:</label>
@@ -276,11 +233,11 @@ $(document).ready(function() {
               <ol>
                 <li>
                   <label for="shipmentdatefrom">From:</label>
-                  <input type="text" id="shipmentdatefrom" name="shipmentdatefrom" size="10" value="[% shipmentdatefrom %]" class="datepicker" />
+                  <input type="text" id="shipmentdatefrom" name="shipmentdatefrom" size="10" value="[% shipmentdatefrom | $KohaDates %]" class="datepicker" />
                 </li>
                 <li>
                   <label for="shipmentdateto">To:</label>
-                  <input type="text" id="shipmentdateto" name="shipmentdateto" size="10" value="[% shipmentdateto %]" class="datepicker" />
+                  <input type="text" id="shipmentdateto" name="shipmentdateto" size="10" value="[% shipmentdateto | $KohaDates %]" class="datepicker" />
                 </li>
               </ol>
             </fieldset>
@@ -291,46 +248,41 @@ $(document).ready(function() {
               <ol>
                 <li>
                   <label for="billingdatefrom">From:</label>
-                  <input type="text" id="billingdatefrom" name="billingdatefrom" size="10" value="[% billingdatefrom %]" class="datepicker" />
+                  <input type="text" id="billingdatefrom" name="billingdatefrom" size="10" value="[% billingdatefrom | $KohaDates %]" class="datepicker" />
                 </li>
                 <li>
                   <label for="billingdateto">To:</label>
-                  <input type="text" id="billingdateto" name="billingdateto" size="10" value="[% billingdateto %]" class="datepicker" />
+                  <input type="text" id="billingdateto" name="billingdateto" size="10" value="[% billingdateto | $KohaDates %]" class="datepicker" />
                 </li>
               </ol>
             </fieldset>
           </li>
           <li>
             <label for="isbneanissn">ISBN / EAN / ISSN:</label>
-            <input type="text" id="isbneanissn" name="isbneanissn" value="[% isbneanissn %]" />
+            <input type="text" id="isbneanissn" name="isbneanissn" value="[% isbneanissn |html %]" />
           </li>
           <li>
             <label for="title">Title:</label>
-            <input type="text" id="title" name="title" value="[% title %]" />
+            <input type="text" id="title" name="title" value="[% title |html %]" />
           </li>
           <li>
             <label for="author">Author:</label>
-            <input type="text" id="author" name="author" value="[% author %]" />
+            <input type="text" id="author" name="author" value="[% author |html %]" />
           </li>
           <li>
             <label for="publisher">Publisher:</label>
-            <input type="text" id="publisher" name="publisher" value="[% publisher %]" />
+            <input type="text" id="publisher" name="publisher" value="[% publisher |html %]" />
           </li>
           <li>
             <label for="publicationyear">Publication year:</label>
-            <input type="text" id="publicationyear" name="publicationyear" value="[% publicationyear %]" />
+            <input type="text" id="publicationyear" name="publicationyear" value="[% publicationyear |html %]" />
           </li>
           <li>
             <label for="branch">Library:</label>
             <select id="branch" name="branch">
               <option value="">All</option>
-              [% FOREACH branch IN branches_loop %]
-                [% IF ( branch.selected ) %]
-                  <option selected="selected" value="[% branch.branchcode %]">[% branch.branchname %]</option>
-                [% ELSE %]
-                  <option value="[% branch.branchcode %]">[% branch.branchname %]</option>
-                [% END %]
-              [% END %]
+              [%# FIXME Should not we filter the libraries %]
+              [% PROCESS options_for_libraries libraries => Branches.all( selected => branch, unfiltered => 1 ) %]
             </select>
           </li>
         </ol>
@@ -341,6 +293,87 @@ $(document).ready(function() {
       <input type="hidden" name="op" id="op" value="do_search" />
     </form>
     [% INCLUDE 'acquisitions-menu.inc' %]
-  </div>
-</div>
+  </aside>
+</div> <!-- /.col-sm-2.col-sm-pull-10 -->
+</div> <!-- /.row -->
+
+[% MACRO jsinclude BLOCK %]
+    [% Asset.js("js/acquisitions-menu.js") %]
+    [% INCLUDE 'datatables.inc' %]
+    [% INCLUDE 'calendar.inc' %]
+    <script>
+        $(document).ready(function() {
+            $(".delete_invoice").click(function(){
+                return confirmDelete(_("Are you sure you want to delete this invoice?"));
+            });
+            var resultst = $("#resultst").dataTable($.extend(true, {}, dataTablesDefaults, {
+                bPaginate: false,
+                aoColumnDefs: [
+                    { "bSortable": false, "aTargets": [1, -1] },
+                    { "bVisible": false, "aTargets": [0] },
+                    { "sType": "title-string", "aTargets" : [ "title-string" ] }
+                ]
+            }));
+
+            $("#show_only_subscription").prop("checked", false);
+
+            $("#show_only_subscription").click(function(){
+                if ( $(this).prop("checked") ) {
+                    resultst.fnFilter( "1", 0, true );
+                } else {
+                    resultst.fnFilter( '', 0 );
+                }
+            });
+
+            $('#merge').click(function (ev) {
+                var booksellerid;
+                var mismatch;
+                var invoices = [ ];
+                if ($('.select-invoice:checked').size() < 2) {
+                    alert(_("You must select at least two invoices to merge."));
+                    return false;
+                }
+                $('.select-invoice:checked').each(function () {
+                    var row = $(this).parents('tr');
+                    booksellerid = booksellerid || $(row).attr('data-booksellerid');
+                    if (booksellerid !== $(row).attr('data-booksellerid')) {
+                        mismatch = true;
+                    }
+                    invoices.push({ 'invoiceid': $(row).attr('data-invoiceid'),
+                                    'invoicenumber': $(row).find('td:nth-child(2) a').text(),
+                                    'shipmentdate': $(row).attr('data-shipmentdate'),
+                                    'billingdate': $(row).attr('data-billingdate'),
+                                    'shipmentcost': $(row).attr('data-shipmentcost'),
+                                    'shipment_budgetid': $(row).attr('data-shipment_budgetid'),
+                                    'closedate': $(row).attr('data-closedate'), });
+                    $('#merge_invoice_form').append('<input type="hidden" name="merge" value="' + $(row).attr('data-invoiceid') + '" />');
+                });
+                if (mismatch) {
+                    alert(_("All invoices for merging must be from the same vendor"));
+                } else {
+                    $('#merge_table tbody').empty();
+                    $.each(invoices, function (idx, invoice) {
+                        var row = $('<tr data-invoiceid="' + invoice.invoiceid + '"><td>' + invoice.invoicenumber + '</td><td>' + invoice.shipmentdate + '</td><td>' + invoice.billingdate + '</td><td>' + invoice.shipmentcost + '</td></tr>');
+                        $(row).appendTo('#merge_table tbody');
+                        $(row).click(function () {
+                            $('#merge_table tbody tr').removeClass('active');
+                            $(this).addClass('active');
+                            $.each(['invoiceid', 'shipmentdate', 'billingdate', 'shipmentcost', 'shipment_budgetid', 'invoicenumber'], function (idx, prop) {
+                                $('#merge_' + prop).val(invoice[prop]);
+                            });
+                            if (invoice.closedate) {
+                                $('#merge_status').text(_("Closed on %s").format(invoice.closedate));
+                            } else {
+                                $('#merge_status').text(_("Open"));
+                            }
+                        });
+                    });
+                    $('#merge_table tbody tr:first').click();
+                    $('#merge_invoices').show();
+                }
+            });
+        });
+    </script>
+[% END %]
+
 [% INCLUDE 'intranet-bottom.inc' %]