Merge remote-tracking branch 'origin/new/bug_8597'
[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 <p><a href="/cgi-bin/koha/acqui/invoice.pl?invoiceid=[% invoiceid %]">Go to invoice details</a></p>
196 </div>
197 [% UNLESS (invoiceclosedate) %]
198 <div id="acqui_receive_search">
199     <h3>Pending orders</h3>
200
201  [% IF ( loop_orders ) %]<table id="pendingt">
202     <thead>
203         <tr>
204             <th>Basket</th>
205             <th>Order line</th>
206             <th>Summary</th>
207             <th>View record</th>
208             <th>Quantity</th>
209             <th>Unit cost</th>
210             <th>Order cost</th>
211             <th>&nbsp;</th>
212             <th>&nbsp;</th>
213         </tr>
214     </thead>
215                 <tfoot>
216             <tr><td colspan="4" class="total">TOTAL</td>
217                 <td> [% totalPquantity %] </td>
218                                 <td>&nbsp;</td>
219                 <td>[% ordergrandtotal %]</td>
220                                 <td>&nbsp;</td>
221                                 <td>&nbsp;</td>
222             </tr>
223                 </tfoot>
224     <tbody class="filterclass">
225         [% FOREACH loop_order IN loop_orders %]
226             <tr>
227                 <td class="basketfilterclass"><a href="/cgi-bin/koha/acqui/basket.pl?basketno=[% loop_order.basketno %]">[% loop_order.basketno %]</a></td>
228                 <td class="orderfilterclass"><a href="neworderempty.pl?ordernumber=[% loop_order.ordernumber %]&amp;booksellerid=[% loop_order.booksellerid %]">[% loop_order.ordernumber %]</a></td>
229                 <td class="summaryfilterclass">
230                   <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% loop_order.biblionumber %]">[% loop_order.title |html %]</a>
231                 [% IF ( loop_order.author ) %] by [% loop_order.author %][% END %]
232                 [% IF ( loop_order.isbn ) %] &ndash; [% loop_order.isbn %][% END %]
233                 [% IF ( loop_order.publishercode ) %]<br />Publisher :[% loop_order.publishercode %][% END %]
234                 [% IF ( loop_order.suggestionid ) %]
235                     <br/>
236                     Suggested by: [% loop_order.surnamesuggestedby %][% IF ( loop_order.firstnamesuggestedby ) %], [% loop_order.firstnamesuggestedby %] [% END %]
237                     (<a href="/cgi-bin/koha/suggestion/suggestion.pl?suggestionid=[% loop_order.suggestionid %]&amp;op=show">suggestion #[% loop_order.suggestionid %]</a>)
238                 [% END %]
239                 <br />
240                 [% IF ( loop_order.notes ) %]
241                     <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>
242                 [% ELSE %]
243                     [<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>]
244                 [% END %]
245                 </td>
246                 <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>
247                 <td>[% loop_order.quantity %]</td>
248                 <td>[% loop_order.ecost %]</td>
249                 <td>[% loop_order.ordertotal %]</td>
250                                 <td>
251                               <a href="orderreceive.pl?ordernumber=[% loop_order.ordernumber %]&amp;invoiceid=[% invoiceid %]">Receive</a>
252                                     
253                                 </td>
254                                 <td>
255                         [% IF ( loop_order.left_holds_on_order ) %]
256                         <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>
257                         [% ELSE %]
258                         <a href="javascript:confirm_delete_item([% loop_order.ordernumber %],[% loop_order.biblionumber %])" class="button">Delete order</a><br>
259                         [% END %]
260                         [% IF ( loop_order.can_del_bib ) %]
261                         <a href="javascript:confirm_delete_biblio([% loop_order.ordernumber %],[% loop_order.biblionumber %])" class="button">Delete order and catalog record</a><br>
262                         [% ELSE %]
263                         <span class="button" title="Can't delete catalog record, see constraints below">Can't delete order and catalog record</span><br>
264                         [% END %]
265                         [% IF ( loop_order.left_item ) %]
266                         <b title="Can't delete catalog record, because of [% loop_order.items %] existing item(s)" >[% loop_order.items %] item(s) left</b><br>
267                         [% END %]
268                         [% IF ( loop_order.left_biblio ) %]
269                         <b title="Can't delete catalog record, delete other orders linked to it first">[% loop_order.biblios %] order(s) left</b><br>
270                         [% END %]
271                         [% IF ( loop_order.left_subscription ) %]
272                         <b title="Can't delete catalog record, delete subscriptions first">[% loop_order.subscriptions %] subscription(s) left</b><br>
273                         [% END %]
274                         [% IF ( loop_order.left_holds ) %]
275                         <b title="Can't delete catalog record or order, cancel holds first">[% loop_order.holds %] hold(s) left</b>
276                         [% END %]
277                     </td>
278                 </tr>
279             [% END %]
280         </tbody>
281          </table>[% ELSE %]There are no pending orders.[% END %]
282        <div id="resultnumber">
283         <!-- Row of numbers corresponding to search result pages -->
284         [% IF ( displayprev ) %]
285             <a href="parcel.pl?invoiceid=[% invoiceid %]&amp;startfrom=[% prevstartfrom %][% IF ( resultsperpage ) %]&amp;resultsperpage=[% resultsperpage %][% END %]#resultnumber">&lt;&lt; Previous</a>
286         [% END %]
287         [% FOREACH number IN numbers %]
288             [% IF ( number.highlight ) %]
289             <span class="current">[% number.number %]</span>
290             [% ELSE %]
291             <a href="parcel.pl?invoiceid=[% invoiceid %]&amp;startfrom=[% number.startfrom %][% IF ( resultsperpage ) %]&amp;resultsperpage=[% resultsperpage %][% END %]#resultnumber">[% number.number %]</a>
292             [% END %]
293         [% END %]
294         [% IF ( displaynext ) %]
295             <a href="parcel.pl?invoiceid=[% invoiceid %]&amp;startfrom=[% nextstartfrom %][% IF ( resultsperpage ) %]&amp;resultsperpage=[% resultsperpage %][% END %]#resultnumber">Next &gt;&gt;</a>
296         [% END %]
297         </div>
298     </div>
299 [% ELSE %]
300     <p>
301         Invoice is close, so you can't receive orders.
302         <a href="/cgi-bin/koha/acqui/invoice.pl?op=reopen&invoiceid=[% invoiceid %]&referer=/cgi-bin/koha/acqui/parcel.pl%3Finvoiceid=[% invoiceid %]">Reopen it</a>.
303     </p>
304 [% END %]
305
306 <div id="acqui_receive_receivelist">
307     <h3>Already received</h3>
308
309
310    [% IF ( loop_received ) %]
311    <form action="/cgi-bin/koha/acqui/parcel.pl" method="get" name="orderform">
312     <table id="receivedt">
313         <thead>
314             <tr>
315                 <th>Basket</th>
316         <th>Order line</th>
317                 <th>Summary</th>
318         <th>View record</th>
319                 <th>Quantity</th>  
320                 <th>Est cost</th>
321                 <th>Actual cost</th>
322                 <th>TOTAL</th>
323         <th></th>
324             </tr>
325     </thead>
326     <tfoot>
327             <tr>
328                 <td colspan="4" class="total">SUBTOTAL</td>
329                 <td colspan="2">&nbsp;</td>
330                 <td>[% totalprice %]</td>
331                 <td>[% tototal %]</td>
332         <td></td>
333             </tr>
334               
335               [% IF ( totalfreight ) %]
336                     <tr>
337                         <td colspan="6">&nbsp;
338                 </td>
339                             <td>Shipping</td>
340                 <td>[% totalfreight %]</td>
341                 </tr> 
342             [% END %]
343               [% IF ( gst ) %]
344                     <tr>
345                         <td colspan="6">
346                 <p class="message">
347                             <b>HELP</b><br />
348                     The total at the bottom of the page should be within a few cents of the total for the invoice.
349                 </p>
350                 </td>
351                             <td><b>Tax rate</b></td>
352                 <td>[% gst %]</td>
353                 </tr> 
354             [% END %]
355             <tr>
356             <td colspan="4" class="total">TOTAL</td>
357                 <td>[% totalquantity %]</td>
358                 <td colspan="2">&nbsp;</td>
359                 <td>[% grandtot %]</td>
360         <td></td>
361             </tr>
362     </tfoot>
363         <tbody class="filterclass">
364             [% FOREACH loop_receive IN loop_received %]
365             <tr>
366                 <td><a href="/cgi-bin/koha/acqui/basket.pl?basketno=[% loop_receive.basketno %]">[% loop_receive.basketno %]</a></td>
367                 <td><a href="neworderempty.pl?ordernumber=[% loop_receive.ordernumber %]&amp;booksellerid=[% booksellerid %]">[% loop_receive.ordernumber %]</a></td>
368                 <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% loop_receive.biblionumber %]">[% loop_receive.title |html %]</a>
369                 [% IF ( loop_receive.author ) %] / [% loop_receive.author %][% END %]
370                 [% IF ( loop_receive.isbn ) %] - [% loop_receive.isbn %][% END %]
371                 [% IF ( loop_receive.publishercode ) %]<br />Publisher :[% loop_receive.publishercode %][% END %]
372                 [% IF ( loop_receive.suggestionid ) %]
373                     <br/>
374                     Suggested by: [% loop_receive.surnamesuggestedby %][% IF ( loop_receive.firstnamesuggestedby ) %], [% loop_receive.firstnamesuggestedby %] [% END %]
375                     (<a href="/cgi-bin/koha/suggestion/suggestion.pl?suggestionid=[% loop_receive.suggestionid %]&amp;op=show">suggestion #[% loop_receive.suggestionid %]</a>)
376                 [% END %]
377                 </td>
378                 <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>
379                 <td>[% loop_receive.quantityreceived %]</td>
380                 <td>[% loop_receive.ecost %]</td>
381                 <td>[% loop_receive.unitprice %]</td>
382                 <td>[% loop_receive.total %]</td>
383                 <td>
384                     [% IF (loop_receive.cannot_cancel) %]
385                         [% span_title = BLOCK %]
386                             Cannot cancel receipt of this order line because it
387                             was created from a partial receipt of order line no.
388                             [% loop_receive.parent_ordernumber %], which is
389                             already received. Try cancelling this one first and
390                             retry.
391                         [% END %]
392                         <span title="[% span_title | collapse %]">
393                             Can't cancel receipt
394                         </span>
395                     [% ELSE %]
396                         <a href="/cgi-bin/koha/acqui/parcel.pl?invoiceid=[% invoiceid %]&op=cancelreceipt&ordernumber=[% loop_receive.ordernumber %]">Cancel receipt</a>
397                     [% END %]
398                 </td>
399             </tr>
400             [% END %]
401         </tbody>
402     </table>
403     </form>
404         [% ELSE %]There are no received orders.[% END %]
405 </div>
406
407 <!--<form action="/cgi-bin/koha/acqui/parcels.pl?booksellerid=[% booksellerid %]" method="post">-->
408 <form action="parcels.pl?booksellerid=[% booksellerid %]" method="post">
409     <input type="hidden" name="booksellerid" value="[% booksellerid %]" />
410     <fieldset class="action">
411         <input type="submit" value="Finish receiving" />
412     </fieldset>
413 </form>
414
415 </div>
416 </div>
417 <div class="yui-b">
418 <form action="/cgi-bin/koha/acqui/parcel.pl" id="filterform" method="post">
419         <fieldset class="brief">
420
421             <h4>Filter</h4>
422
423             <ol>
424
425                 <li>
426                     <label for="summaryfilter">ISBN, author or title :</label>
427             <input type="text" name="summaryfilter" id="summaryfilter" value="[% summaryfilter %]"/>
428                 </li>
429
430                 <li>
431                     <label for="basketfilter">Basket :</label>
432             <input type="text" name="basketfilter" id="basketfilter" value="[% basketfilter %]"/>
433                 </li>
434
435                 <li>
436             <label for="orderfilter">Order line :</label>
437             <input type="text" name="orderfilter" id="orderfilter" value="[% orderfilter %]"/>
438                 </li>
439                 [% IF (UNIMARC) %]
440         <li>
441             <label for="eanfilter">EAN :</label>
442             <input type="text" name="eanfilter" id="eanfilter" value="[% eanfilter %]"/>
443         </li>
444                 [% END %]
445             </ol>
446                 <fieldset class="action">
447         <input type="hidden" value="search" name="op" />
448         <input type="hidden" value="[% booksellerid %]" name="booksellerid" />
449         <input type="hidden" value="[% invoice %]" name="invoice" />
450         <input type="hidden" value="[% invoicedatereceived %]" name="datereceived" />
451         <input type="submit" value="Filter" />
452         <a href="/cgi-bin/koha/acqui/parcel.pl?booksellerid=[% booksellerid %]&invoice=[% invoice %]&op=new&datereceived=[% formatteddatereceived %]">Clear</a>
453                 </fieldset>
454
455
456         </fieldset>
457     </form>
458 [% INCLUDE 'acquisitions-menu.inc' %]
459 </div>
460 </div>
461 [% INCLUDE 'intranet-bottom.inc' %]
462