Merge remote-tracking branch 'origin/new/bug_5339'
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / acqui / parcel.tt
1 [% INCLUDE 'doc-head-open.inc' %]
2 <title>Koha &rsaquo; Acquisitions &rsaquo; [% IF ( date ) %]
3             Receipt summary for [% name %] [% IF ( invoice ) %]invoice [% invoice %][% END %] on [% formatteddatereceived %][% ELSE %]Receive orders from [% name %][% END %]</title>
4 <link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
5 [% INCLUDE 'doc-head-close.inc' %]
6 <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.dataTables.min.js"></script>
7 [% INCLUDE 'datatables-strings.inc' %]
8 <script type="text/javascript" src="[% themelang %]/js/datatables.js"></script>
9 [% INCLUDE 'greybox.inc' %]
10 <script type="text/javascript" src="[% yuipath %]/json/json-min.js"></script>
11 <script type="text/javascript">
12 //<![CDATA[
13
14     dt_overwrite_html_sorting_localeCompare();
15
16     var rowsToCollapse = 5;
17     $(document).ready(function(){
18         var pendingt = $("#pendingt").dataTable($.extend(true, {}, dataTablesDefaults, {
19             "aoColumnDefs": [
20                 { "aTargets": [ 3, 7, 8 ], "bSortable": false, "bSearchable": false },
21             ],
22             "aoColumns": [
23                 { "sType": "num-html" },
24                 { "sType": "num-html" },
25                 { "sType": "html" },
26                 null,
27                 null,
28                 null,
29                 null,
30                 null,
31                 null,
32             ],
33             "sPaginationType": "four_button"
34         } ) );
35         var receivedt = $("#receivedt").dataTable($.extend(true, {}, dataTablesDefaults, {
36             "aoColumnDefs": [
37                 { "aTargets": [ 3 ], "bSortable": false, "bSearchable": false },
38             ],
39             "aoColumns": [
40                 { "sType": "num-html" },
41                 { "sType": "num-html" },
42                 { "sType": "html" },
43                 null,
44                 null,
45                 null,
46                 null,
47                 null,
48                 null
49             ],
50             "sPaginationType": "four_button"
51         } ) );
52
53         rowCountPending  = $("#pendingt tbody.filterclass tr").length;
54         rowCountReceived = $("#receivedt tbody.filterclass tr").length;
55         if (rowCountPending > rowsToCollapse ) { if ( $.cookie("pendingKeepExpanded") != 1 ) { pendingCollapse(); } else { pendingExpand(); } }
56         if (rowCountReceived > rowsToCollapse ) { if ( $.cookie("receivedKeepExpanded") != 1 ) { receivedCollapse(); } else { receivedExpand(); } }
57     });
58
59      // Case-insensitive version of jquery's contains function
60      jQuery.extend(jQuery.expr[':'], {
61             icontains : "jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase())>=0"
62      });
63
64      // Contains exactly function
65      jQuery.extend(jQuery.expr[':'], {
66           containsExactly: "$(a).text() == m[3]"
67      });
68
69
70     // Collapse pending items table
71     function pendingCollapse() {
72         $.cookie("pendingKeepExpanded", 0, { path: "/", expires: 9999 });
73         $("#pendingcollapserow").remove();
74     $("#pendingt tr").show();
75         $("#pendingt tbody.filterclass tr:gt(" + (rowsToCollapse-1) + ")").hide();
76         $("#pendingt").before("<p id=\"pendingcollapserow\">" + _("Only the first ")  + rowsToCollapse +  _(" items are displayed.") + "<a href=\"javascript:pendingExpand();\">" + _("Click here to show all ")  + rowCountPending + _(" items") + "<\/a>.<\/p>");
77
78     }
79
80     // Expend pending items table
81     function pendingExpand() {
82         $.cookie("pendingKeepExpanded", 1, { path: "/", expires: 9999 });
83         $("#pendingcollapserow").remove();
84         $("#pendingt tr").show();
85     $("#pendingt tbody.filterclass tr.orderfound").remove();
86         $("#pendingt").before("<p id=\"pendingcollapserow\">" + rowCountPending + _(" items are displayed.") + "<a href=\"javascript:pendingCollapse();\">" + _("Click here to show only the first ") + rowsToCollapse + _(" items") + "<\/a>.<\/p>");
87     }
88
89     // Collapse already received items table
90     function receivedCollapse() {
91         $.cookie("receivedKeepExpanded", 0, { path: "/", expires: 9999 });
92         $("#receivedcollapserow").remove();
93         $("#receivedt tbody.filterclass tr:gt(" + (rowsToCollapse-1) + ")").hide();
94         $("#receivedt").before("<p id=\"receivedcollapserow\">" + _("Only the first ") + rowsToCollapse + _(" items are displayed.") + "<a href=\"javascript:receivedExpand();\">" + _("Click here to show all ") + rowCountReceived + _(" items") + "<\/a>.<\/p>");
95     }
96
97     // Expand already received items table
98     function receivedExpand() {
99         $.cookie("receivedKeepExpanded", 1, { path: "/", expires: 9999 });
100         $("#receivedcollapserow").remove();
101         $("#receivedt tr").show();
102         $("#receivedt").before("<p id=\"receivedcollapserow\">" + _("All ") + rowCountReceived + _(" items are displayed.") + "<a href=\"javascript:receivedCollapse();\">" + _("Click here to show only the first ") + rowsToCollapse + _(" items") + "<\/a>.<\/p>");
103     }
104
105 //]]>
106 </script>
107 <script type="text/javascript">
108 //<![CDATA[
109             function confirm_delete_item(ordernumber, basketno, biblionumber) {
110                 var is_confirmed = confirm(_('Are you sure you want to delete this order ?'));
111                 if (is_confirmed) {
112                     window.location = "addorder.pl?ordernumber="+ordernumber+"&basketno="+basketno+"&quantity=0&biblionumber="+biblionumber;
113                 }
114             }
115             
116             function confirm_delete_biblio(ordernumber, basketno, biblionumber) {
117                 var is_confirmed = confirm(_('Are you sure you want to delete this catalog record and order ?'));
118                 if (is_confirmed) {
119                     window.location = "addorder.pl?ordernumber="+ordernumber+"&basketno="+basketno+"&quantity=0&biblionumber="+biblionumber+"&delbiblio=1";
120                     }
121             }
122 //]]>
123 </script>
124 </head>
125 <body id="acq_parcel" class="acq">
126 [% INCLUDE 'header.inc' %]
127 [% INCLUDE 'acquisitions-search.inc' %]
128
129 <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;
130     [% IF ( datereceived ) %]
131         Receipt summary for <i>[% name %]</i>
132         [% IF ( invoice ) %]
133             <i>[ [% invoice %] ]</i>
134         [% END %]
135         on <i>[% formatteddatereceived %]</i>
136     [% ELSE %]
137         Receive orders from [% name %]
138     [% END %]
139 </div>
140
141 <div id="doc3" class="yui-t2">
142
143    <div id="bd">
144         <div id="yui-main">
145         <div class="yui-b">
146         [% IF ( receive_error ) %]
147         <div class="dialog alert">
148         <h3>Error adding items:</h3>
149         <ul>
150         [% FOREACH error_loo IN error_loop %]
151                 <li>[% error_loo.error_param %][% IF ( error_loo.error_duplicate_barcode ) %]Duplicate Barcode[% END %] <!-- todo: other error conditions come here. --></li>
152         [% END %]
153         </ul>
154         </div>
155         [% END %]
156     <h1>
157         [% IF ( datereceived ) %]
158             Receipt summary for <i>[% name %]</i> [% IF ( invoice ) %] <i> [ [% invoice %] ] </i>[% END %] on <i>[% formatteddatereceived %]</i>
159         [% ELSE %]
160             Receive orders from [% name %]
161         [% END %]
162     </h1>
163
164     [% IF ( success_delorder ) %]
165     <div class="dialog message">The order has been successfully canceled.</div>
166     [% ELSE %]
167         [% IF ( error_delitem ) %]
168             <div class="dialog alert">The order has been canceled, although one or more items could not have been deleted.</div>
169         [% END %]
170         [% IF ( error_delbiblio ) %]
171             <div class="dialog alert">The order has been canceled, although the record has not been deleted.</div>
172         [% END %]
173     [% END %]
174
175     [% IF (error_cancelling_receipt) %]
176       <div class="error">
177       Cannot cancel receipt. Possible reasons :
178       <ul>
179         <li>
180           The order line you trying to cancel was created from a partial receipt
181           of another order line which is already received. Try to cancel this
182           one first and retry.
183         </li>
184         <li>
185           The order line you trying to cancel was created from a partial receipt
186           of another order line which has been deleted. Cancellation is not
187           possible.
188         </li>
189       </ul>
190       </div>
191     [% END %]
192
193 <div id="acqui_receive_summary">
194 <p><strong>Invoice number:</strong> [% invoice %] <strong>Received by:</strong> [% loggedinusername %] <strong>On:</strong> [% formatteddatereceived %]</p>
195 </div>
196 [% UNLESS (invoiceclosedate) %]
197 <div id="acqui_receive_search">
198     <h3>Pending orders</h3>
199
200  [% IF ( loop_orders ) %]<table id="pendingt">
201     <thead>
202         <tr>
203             <th>Basket</th>
204             <th>Order line</th>
205             <th>Summary</th>
206             <th>View record</th>
207             <th>Quantity</th>
208             <th>Unit cost</th>
209             <th>Order cost</th>
210             <th>&nbsp;</th>
211             <th>&nbsp;</th>
212         </tr>
213     </thead>
214                 <tfoot>
215             <tr><td colspan="4" class="total">TOTAL</td>
216                 <td> [% totalPquantity %] </td>
217                                 <td>&nbsp;</td>
218                 <td>[% ordergrandtotal %]</td>
219                                 <td>&nbsp;</td>
220                                 <td>&nbsp;</td>
221             </tr>
222                 </tfoot>
223     <tbody class="filterclass">
224         [% FOREACH loop_order IN loop_orders %]
225             <tr>
226                 <td class="basketfilterclass"><a href="/cgi-bin/koha/acqui/basket.pl?basketno=[% loop_order.basketno %]">[% loop_order.basketno %]</a></td>
227                 <td class="orderfilterclass"><a href="neworderempty.pl?ordernumber=[% loop_order.ordernumber %]&amp;booksellerid=[% loop_order.booksellerid %]">[% loop_order.ordernumber %]</a></td>
228                 <td class="summaryfilterclass">
229                   <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% loop_order.biblionumber %]">[% loop_order.title |html %]</a>
230                 [% IF ( loop_order.author ) %] by [% loop_order.author %][% END %]
231                 [% IF ( loop_order.isbn ) %] &ndash; [% loop_order.isbn %][% END %]
232                 [% IF ( loop_order.publishercode ) %]<br />Publisher :[% loop_order.publishercode %][% END %]
233                 [% IF ( loop_order.suggestionid ) %]
234                     <br/>
235                     Suggested by: [% loop_order.surnamesuggestedby %][% IF ( loop_order.firstnamesuggestedby ) %], [% loop_order.firstnamesuggestedby %] [% END %]
236                     (<a href="/cgi-bin/koha/suggestion/suggestion.pl?suggestionid=[% loop_order.suggestionid %]&amp;op=show">suggestion #[% loop_order.suggestionid %]</a>)
237                 [% END %]
238                 <br />
239                 [% IF ( loop_order.notes ) %]
240                     <p class="ordernote"><strong>Note: </strong>[% loop_order.notes|html %] [<a href="/cgi-bin/koha/acqui/modordernotes.pl?ordernumber=[% loop_order.ordernumber %]&amp;referrer=/cgi-bin/koha/acqui/parcel.pl%3Fbooksellerid=[% loop_order.booksellerid %]&amp;datereceived=[% loop_order.invoicedatereceived %]&amp;invoice=[% loop_order.invoice %]">Change note</a>]</p>
241                 [% ELSE %]
242                     [<a href="/cgi-bin/koha/acqui/modordernotes.pl?ordernumber=[% loop_order.ordernumber %]&amp;referrer=/cgi-bin/koha/acqui/parcel.pl%3Fbooksellerid=[% loop_order.booksellerid %]&amp;datereceived=[% loop_order.invoicedatereceived %]&amp;invoice=[% loop_order.invoice %]">Add note</a>]
243                 [% END %]
244                 </td>
245                 <td><a href="/cgi-bin/koha/catalogue/showmarc.pl?id=[% loop_order.biblionumber %]" title="MARC" rel="gb_page_center[600,500]">MARC</a> | <a href="/cgi-bin/koha/catalogue/showmarc.pl?viewas=card&amp;id=[% loop_order.biblionumber %]" title="MARC" rel="gb_page_center[600,500]">Card</a></td>
246                 <td>[% loop_order.quantity %]</td>
247                 <td>[% loop_order.ecost %]</td>
248                 <td>[% loop_order.ordertotal %]</td>
249                                 <td>
250                               <a href="orderreceive.pl?ordernumber=[% loop_order.ordernumber %]&amp;invoiceid=[% invoiceid %]">Receive</a>
251                                     
252                                 </td>
253                                 <td>
254                         [% IF ( loop_order.left_holds_on_order ) %]
255                         <span class="button" title="Can't delete order, ([% loop_order.holds_on_order %]) holds are linked with this order cancel holds first">Can't delete order</span><br>
256                         [% ELSE %]
257                         <a href="javascript:confirm_delete_item([% loop_order.ordernumber %],[% loop_order.biblionumber %])" class="button">Delete order</a><br>
258                         [% END %]
259                         [% IF ( loop_order.can_del_bib ) %]
260                         <a href="javascript:confirm_delete_biblio([% loop_order.ordernumber %],[% loop_order.biblionumber %])" class="button">Delete order and catalog record</a><br>
261                         [% ELSE %]
262                         <span class="button" title="Can't delete catalog record, see constraints below">Can't delete order and catalog record</span><br>
263                         [% END %]
264                         [% IF ( loop_order.left_item ) %]
265                         <b title="Can't delete catalog record, because of [% loop_order.items %] existing item(s)" >[% loop_order.items %] item(s) left</b><br>
266                         [% END %]
267                         [% IF ( loop_order.left_biblio ) %]
268                         <b title="Can't delete catalog record, delete other orders linked to it first">[% loop_order.biblios %] order(s) left</b><br>
269                         [% END %]
270                         [% IF ( loop_order.left_subscription ) %]
271                         <b title="Can't delete catalog record, delete subscriptions first">[% loop_order.subscriptions %] subscription(s) left</b><br>
272                         [% END %]
273                         [% IF ( loop_order.left_holds ) %]
274                         <b title="Can't delete catalog record or order, cancel holds first">[% loop_order.holds %] hold(s) left</b>
275                         [% END %]
276                     </td>
277                 </tr>
278             [% END %]
279         </tbody>
280          </table>[% ELSE %]There are no pending orders.[% END %]
281        <div id="resultnumber">
282         <!-- Row of numbers corresponding to search result pages -->
283         [% IF ( displayprev ) %]
284             <a href="parcel.pl?invoiceid=[% invoiceid %]&amp;startfrom=[% prevstartfrom %][% IF ( resultsperpage ) %]&amp;resultsperpage=[% resultsperpage %][% END %]#resultnumber">&lt;&lt; Previous</a>
285         [% END %]
286         [% FOREACH number IN numbers %]
287             [% IF ( number.highlight ) %]
288             <span class="current">[% number.number %]</span>
289             [% ELSE %]
290             <a href="parcel.pl?invoiceid=[% invoiceid %]&amp;startfrom=[% number.startfrom %][% IF ( resultsperpage ) %]&amp;resultsperpage=[% resultsperpage %][% END %]#resultnumber">[% number.number %]</a>
291             [% END %]
292         [% END %]
293         [% IF ( displaynext ) %]
294             <a href="parcel.pl?invoiceid=[% invoiceid %]&amp;startfrom=[% nextstartfrom %][% IF ( resultsperpage ) %]&amp;resultsperpage=[% resultsperpage %][% END %]#resultnumber">Next &gt;&gt;</a>
295         [% END %]
296         </div>
297     </div>
298 [% ELSE %]
299     <p>
300         Invoice is closed, so you can't receive orders anymore.
301         <a href="/cgi-bin/koha/acqui/invoice.pl?op=reopen&invoiceid=[% invoiceid %]&referer=/cgi-bin/koha/acqui/parcel.pl%3Finvoiceid=[% invoiceid %]">Reopen it</a>.
302     </p>
303 [% END %]
304
305 <div id="acqui_receive_receivelist">
306     <h3>Already received</h3>
307
308
309    [% IF ( loop_received ) %]
310    <form action="/cgi-bin/koha/acqui/parcel.pl" method="get" name="orderform">
311     <table id="receivedt">
312         <thead>
313             <tr>
314                 <th>Basket</th>
315         <th>Order line</th>
316                 <th>Summary</th>
317         <th>View record</th>
318                 <th>Quantity</th>  
319                 <th>Est cost</th>
320                 <th>Actual cost</th>
321                 <th>TOTAL</th>
322         <th></th>
323             </tr>
324     </thead>
325     <tfoot>
326             <tr>
327                 <td colspan="4" class="total">SUBTOTAL</td>
328                 <td colspan="2">&nbsp;</td>
329                 <td>[% totalprice %]</td>
330                 <td>[% tototal %]</td>
331         <td></td>
332             </tr>
333               
334               [% IF ( totalfreight ) %]
335                     <tr>
336                         <td colspan="6">&nbsp;
337                 </td>
338                             <td>Shipping</td>
339                 <td>[% totalfreight %]</td>
340                 </tr> 
341             [% END %]
342               [% IF ( gst ) %]
343                     <tr>
344                         <td colspan="6">
345                 <p class="message">
346                             <b>HELP</b><br />
347                     The total at the bottom of the page should be within a few cents of the total for the invoice.
348                 </p>
349                 </td>
350                             <td><b>Tax rate</b></td>
351                 <td>[% gst %]</td>
352                 </tr> 
353             [% END %]
354             <tr>
355             <td colspan="4" class="total">TOTAL</td>
356                 <td>[% totalquantity %]</td>
357                 <td colspan="2">&nbsp;</td>
358                 <td>[% grandtot %]</td>
359         <td></td>
360             </tr>
361     </tfoot>
362         <tbody class="filterclass">
363             [% FOREACH loop_receive IN loop_received %]
364             <tr>
365                 <td><a href="/cgi-bin/koha/acqui/basket.pl?basketno=[% loop_receive.basketno %]">[% loop_receive.basketno %]</a></td>
366                 <td><a href="neworderempty.pl?ordernumber=[% loop_receive.ordernumber %]&amp;booksellerid=[% booksellerid %]">[% loop_receive.ordernumber %]</a></td>
367                 <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% loop_receive.biblionumber %]">[% loop_receive.title |html %]</a>
368                 [% IF ( loop_receive.author ) %] / [% loop_receive.author %][% END %]
369                 [% IF ( loop_receive.isbn ) %] - [% loop_receive.isbn %][% END %]
370                 [% IF ( loop_receive.publishercode ) %]<br />Publisher :[% loop_receive.publishercode %][% END %]
371                 [% IF ( loop_receive.suggestionid ) %]
372                     <br/>
373                     Suggested by: [% loop_receive.surnamesuggestedby %][% IF ( loop_receive.firstnamesuggestedby ) %], [% loop_receive.firstnamesuggestedby %] [% END %]
374                     (<a href="/cgi-bin/koha/suggestion/suggestion.pl?suggestionid=[% loop_receive.suggestionid %]&amp;op=show">suggestion #[% loop_receive.suggestionid %]</a>)
375                 [% END %]
376                 </td>
377                 <td><a href="/cgi-bin/koha/catalogue/showmarc.pl?id=[% loop_receive.biblionumber %]" title="MARC" rel="gb_page_center[600,500]">MARC</a> | <a href="/cgi-bin/koha/catalogue/showmarc.pl?viewas=card&amp;id=[% loop_receive.biblionumber %]" title="MARC" rel="gb_page_center[600,500]">Card</a></td>
378                 <td>[% loop_receive.quantityreceived %]</td>
379                 <td>[% loop_receive.ecost %]</td>
380                 <td>[% loop_receive.unitprice %]</td>
381                 <td>[% loop_receive.total %]</td>
382                 <td>
383                     [% IF (loop_receive.cannot_cancel) %]
384                         [% span_title = BLOCK %]
385                             Cannot cancel receipt of this order line because it
386                             was created from a partial receipt of order line no.
387                             [% loop_receive.parent_ordernumber %], which is
388                             already received. Try cancelling this one first and
389                             retry.
390                         [% END %]
391                         <span title="[% span_title | collapse %]">
392                             Can't cancel receipt
393                         </span>
394                     [% ELSE %]
395                         <a href="/cgi-bin/koha/acqui/parcel.pl?invoiceid=[% invoiceid %]&op=cancelreceipt&ordernumber=[% loop_receive.ordernumber %]">Cancel receipt</a>
396                     [% END %]
397                 </td>
398             </tr>
399             [% END %]
400         </tbody>
401     </table>
402     </form>
403         [% ELSE %]There are no received orders.[% END %]
404 </div>
405
406 <!--<form action="/cgi-bin/koha/acqui/parcels.pl?booksellerid=[% booksellerid %]" method="post">-->
407 [% IF (invoiceclosedate) %]
408     <a href="/cgi-bin/koha/acqui/invoice.pl?invoiceid=[% invoiceid %]">View invoice</a>
409 [% ELSE %]
410     <form action="/cgi-bin/koha/acqui/invoice.pl" method="get">
411         <input type="hidden" name="invoiceid" value="[% invoiceid %]" />
412         <fieldset class="action">
413             <input type="submit" value="Finish receiving" />
414         </fieldset>
415     </form>
416 [% END %]
417
418 </div>
419 </div>
420 <div class="yui-b">
421 <form action="/cgi-bin/koha/acqui/parcel.pl" id="filterform" method="post">
422         <fieldset class="brief">
423
424             <h4>Filter</h4>
425
426             <ol>
427
428                 <li>
429                     <label for="summaryfilter">ISBN, author or title :</label>
430             <input type="text" name="summaryfilter" id="summaryfilter" value="[% summaryfilter %]"/>
431                 </li>
432
433                 <li>
434                     <label for="basketfilter">Basket :</label>
435             <input type="text" name="basketfilter" id="basketfilter" value="[% basketfilter %]"/>
436                 </li>
437
438                 <li>
439             <label for="orderfilter">Order line :</label>
440             <input type="text" name="orderfilter" id="orderfilter" value="[% orderfilter %]"/>
441                 </li>
442                 [% IF (UNIMARC) %]
443         <li>
444             <label for="eanfilter">EAN :</label>
445             <input type="text" name="eanfilter" id="eanfilter" value="[% eanfilter %]"/>
446         </li>
447                 [% END %]
448             </ol>
449                 <fieldset class="action">
450         <input type="hidden" value="search" name="op" />
451         <input type="hidden" value="[% booksellerid %]" name="booksellerid" />
452         <input type="hidden" value="[% invoice %]" name="invoice" />
453         <input type="hidden" value="[% invoicedatereceived %]" name="datereceived" />
454         <input type="submit" value="Filter" />
455         <a href="/cgi-bin/koha/acqui/parcel.pl?booksellerid=[% booksellerid %]&invoice=[% invoice %]&op=new&datereceived=[% formatteddatereceived %]">Clear</a>
456                 </fieldset>
457
458
459         </fieldset>
460     </form>
461 [% INCLUDE 'acquisitions-menu.inc' %]
462 </div>
463 </div>
464 [% INCLUDE 'intranet-bottom.inc' %]
465