|
Lines 8-111
Link Here
|
| 8 |
<script type="text/javascript" src="[% themelang %]/js/datatables.js"></script> |
8 |
<script type="text/javascript" src="[% themelang %]/js/datatables.js"></script> |
| 9 |
[% INCLUDE 'greybox.inc' %] |
9 |
[% INCLUDE 'greybox.inc' %] |
| 10 |
<script type="text/javascript" src="[% yuipath %]/json/json-min.js"></script> |
10 |
<script type="text/javascript" src="[% yuipath %]/json/json-min.js"></script> |
|
|
11 |
<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.dataTables.min.js"></script> |
| 12 |
[% INCLUDE 'datatables-strings.inc' %] |
| 13 |
<script type="text/javascript" src="[% themelang %]/js/datatables.js"></script> |
| 11 |
<script type="text/javascript"> |
14 |
<script type="text/javascript"> |
| 12 |
//<![CDATA[ |
15 |
//<![CDATA[ |
| 13 |
|
16 |
|
| 14 |
dt_overwrite_html_sorting_localeCompare(); |
17 |
dt_overwrite_html_sorting_localeCompare(); |
|
|
18 |
var pendingt; |
| 15 |
|
19 |
|
| 16 |
var rowsToCollapse = 5; |
20 |
var rowsToCollapse = 5; |
| 17 |
$(document).ready(function(){ |
21 |
$(document).ready(function(){ |
| 18 |
var pendingt = $("#pendingt").dataTable($.extend(true, {}, dataTablesDefaults, { |
22 |
pendingt = $("#pendingt").dataTable($.extend(true, {}, dataTablesDefaults, { |
| 19 |
"aoColumnDefs": [ |
23 |
"aoColumnDefs": [ |
| 20 |
{ "aTargets": [ 3, 8, 9 ], "bSortable": false, "bSearchable": false }, |
24 |
{ "aTargets": [ 4, 9, 10 ], "bSortable": false, "bSearchable": false }, |
| 21 |
], |
25 |
{ "aTargets": [ 0, 1 ], "sType": "num-html" }, |
| 22 |
"aoColumns": [ |
26 |
{ "aTargets": [ 2 ], "sType": "html" }, |
| 23 |
{ "sType": "num-html" }, |
27 |
{ "aTargets": [ 3 ], "bVisible": false } |
| 24 |
{ "sType": "num-html" }, |
|
|
| 25 |
{ "sType": "html" }, |
| 26 |
null, |
| 27 |
null, |
| 28 |
null, |
| 29 |
null, |
| 30 |
null, |
| 31 |
null, |
| 32 |
null, |
| 33 |
], |
28 |
], |
| 34 |
"sPaginationType": "four_button" |
29 |
"sPaginationType": "four_button" |
| 35 |
} ) ); |
30 |
} ) ); |
| 36 |
var receivedt = $("#receivedt").dataTable($.extend(true, {}, dataTablesDefaults, { |
31 |
var receivedt = $("#receivedt").dataTable($.extend(true, {}, dataTablesDefaults, { |
| 37 |
"aoColumnDefs": [ |
32 |
"aoColumnDefs": [ |
| 38 |
{ "aTargets": [ 3, -1 ], "bSortable": false, "bSearchable": false }, |
33 |
{ "aTargets": [ 3, -1 ], "bSortable": false, "bSearchable": false }, |
| 39 |
], |
34 |
{ "aTargets": [ 0, 1 ], "sType": "num-html" }, |
| 40 |
"aoColumns": [ |
35 |
{ "aTargets": [ 2 ], "sType": "html" } |
| 41 |
{ "sType": "num-html" }, |
|
|
| 42 |
{ "sType": "num-html" }, |
| 43 |
{ "sType": "html" }, |
| 44 |
null, |
| 45 |
null, |
| 46 |
null, |
| 47 |
null, |
| 48 |
null, |
| 49 |
null |
| 50 |
], |
36 |
], |
| 51 |
"sPaginationType": "four_button" |
37 |
"sPaginationType": "four_button" |
| 52 |
} ) ); |
38 |
} ) ); |
| 53 |
/* |
|
|
| 54 |
$("#pendingt").tablesorter({ |
| 55 |
headers: { 2: { sorter: 'articles' },3: { sorter: false },8:{sorter:false}} |
| 56 |
}); |
39 |
}); |
| 57 |
*/ |
|
|
| 58 |
|
| 59 |
rowCountPending = $("#pendingt tbody.filterclass tr").length; |
| 60 |
rowCountReceived = $("#receivedt tbody.filterclass tr").length; |
| 61 |
if (rowCountPending > rowsToCollapse ) { if ( $.cookie("pendingKeepExpanded") != 1 ) { pendingCollapse(); } else { pendingExpand(); } } |
| 62 |
if (rowCountReceived > rowsToCollapse ) { if ( $.cookie("receivedKeepExpanded") != 1 ) { receivedCollapse(); } else { receivedExpand(); } } |
| 63 |
}); |
| 64 |
|
| 65 |
// Case-insensitive version of jquery's contains function |
| 66 |
jQuery.extend(jQuery.expr[':'], { |
| 67 |
icontains : "jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase())>=0" |
| 68 |
}); |
| 69 |
|
| 70 |
// Contains exactly function |
| 71 |
jQuery.extend(jQuery.expr[':'], { |
| 72 |
containsExactly: "$(a).text() == m[3]" |
| 73 |
}); |
| 74 |
|
| 75 |
|
| 76 |
// Collapse pending items table |
| 77 |
function pendingCollapse() { |
| 78 |
$.cookie("pendingKeepExpanded", 0, { path: "/", expires: 9999 }); |
| 79 |
$("#pendingcollapserow").remove(); |
| 80 |
$("#pendingt tr").show(); |
| 81 |
$("#pendingt tbody.filterclass tr:gt(" + (rowsToCollapse-1) + ")").hide(); |
| 82 |
$("#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>"); |
| 83 |
|
40 |
|
| 84 |
} |
41 |
function filter() { |
|
|
42 |
var summaryStatus = jQuery.trim($("#summaryfilter").val()); |
| 43 |
var basketStatus = $("#basketfilter").val(); |
| 44 |
var orderStatus = $("#orderfilter").val(); |
| 45 |
var eanfilter = $("#eanfilter").val(); |
| 85 |
|
46 |
|
| 86 |
// Expend pending items table |
47 |
if (summaryStatus == '' && basketStatus == '' && orderStatus == '' && eanfilter == '') { |
| 87 |
function pendingExpand() { |
48 |
clearFilters(); |
| 88 |
$.cookie("pendingKeepExpanded", 1, { path: "/", expires: 9999 }); |
49 |
return false; |
| 89 |
$("#pendingcollapserow").remove(); |
50 |
} |
| 90 |
$("#pendingt tr").show(); |
51 |
pendingt.fnFilter(summaryStatus,2); |
| 91 |
$("#pendingt tbody.filterclass tr.orderfound").remove(); |
52 |
pendingt.fnFilter(orderStatus,1); |
| 92 |
$("#pendingt").before("<p id=\"pendingcollapserow\">" + rowCountPending + _(" items are displayed.") + " <a href=\"javascript:pendingCollapse();\">" + _("Click here to show only the first ") + rowsToCollapse + _(" items") + "<\/a>.<\/p>"); |
53 |
pendingt.fnFilter(basketStatus,0); |
| 93 |
} |
54 |
pendingt.fnFilter(eanfilter, 3); |
| 94 |
|
55 |
|
| 95 |
// Collapse already received items table |
56 |
return false; |
| 96 |
function receivedCollapse() { |
|
|
| 97 |
$.cookie("receivedKeepExpanded", 0, { path: "/", expires: 9999 }); |
| 98 |
$("#receivedcollapserow").remove(); |
| 99 |
$("#receivedt tbody.filterclass tr:gt(" + (rowsToCollapse-1) + ")").hide(); |
| 100 |
$("#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>"); |
| 101 |
} |
57 |
} |
| 102 |
|
58 |
|
| 103 |
// Expand already received items table |
59 |
// Clear already applied filters |
| 104 |
function receivedExpand() { |
60 |
function clearFilters() { |
| 105 |
$.cookie("receivedKeepExpanded", 1, { path: "/", expires: 9999 }); |
61 |
$("#summaryfilter").val(''); |
| 106 |
$("#receivedcollapserow").remove(); |
62 |
$("#basketfilter").val(''); |
| 107 |
$("#receivedt tr").show(); |
63 |
$("#orderfilter").val(''); |
| 108 |
$("#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>"); |
64 |
$("#eanfilter").val(''); |
|
|
65 |
var oSettings = pendingt.fnSettings(); |
| 66 |
for(iCol = 0; iCol < oSettings.aoPreSearchCols.length; iCol++) { |
| 67 |
oSettings.aoPreSearchCols[ iCol ].sSearch = ''; |
| 68 |
} |
| 69 |
pendingt.fnDraw(); |
| 109 |
} |
70 |
} |
| 110 |
|
71 |
|
| 111 |
//]]> |
72 |
//]]> |
|
Lines 151-161
Link Here
|
| 151 |
<div class="yui-b"> |
112 |
<div class="yui-b"> |
| 152 |
[% IF ( receive_error ) %] |
113 |
[% IF ( receive_error ) %] |
| 153 |
<div class="dialog alert"> |
114 |
<div class="dialog alert"> |
| 154 |
<h3>Error adding items:</h3> |
115 |
<h3>Error receiving items:</h3> |
| 155 |
<ul> |
116 |
<ul> |
| 156 |
[% FOREACH error_loo IN error_loop %] |
117 |
[% FOREACH error IN error_loop %] |
| 157 |
<li>[% error_loo.error_param %][% IF ( error_loo.error_duplicate_barcode ) %]Duplicate Barcode[% END %] <!-- todo: other error conditions come here. --></li> |
118 |
<li> |
| 158 |
[% END %] |
119 |
[% error.error_param %] |
|
|
120 |
[% IF ( error.error_duplicate_barcode ) %] |
| 121 |
Duplicate Barcode |
| 122 |
[% ELSIF (error.error_cannot_receive_order) %] |
| 123 |
You were not authorised to receive this order |
| 124 |
[% END %] |
| 125 |
<!-- todo: other error conditions come here. --> |
| 126 |
</li> |
| 127 |
[% END %] |
| 159 |
</ul> |
128 |
</ul> |
| 160 |
</div> |
129 |
</div> |
| 161 |
[% END %] |
130 |
[% END %] |
|
Lines 209-214
Link Here
|
| 209 |
<th>Basket</th> |
178 |
<th>Basket</th> |
| 210 |
<th>Order line</th> |
179 |
<th>Order line</th> |
| 211 |
<th>Summary</th> |
180 |
<th>Summary</th> |
|
|
181 |
<th>EAN</th> |
| 212 |
<th>View record</th> |
182 |
<th>View record</th> |
| 213 |
<th>Quantity</th> |
183 |
<th>Quantity</th> |
| 214 |
<th>Unit cost</th> |
184 |
<th>Unit cost</th> |
|
Lines 240-252
Link Here
|
| 240 |
[<a href="/cgi-bin/koha/acqui/modordernotes.pl?ordernumber=[% loop_order.ordernumber %]&referrer=/cgi-bin/koha/acqui/parcel.pl%3Fbooksellerid=[% loop_order.booksellerid %]&datereceived=[% loop_order.invoicedatereceived %]&invoice=[% loop_order.invoice %]">Add note</a>] |
210 |
[<a href="/cgi-bin/koha/acqui/modordernotes.pl?ordernumber=[% loop_order.ordernumber %]&referrer=/cgi-bin/koha/acqui/parcel.pl%3Fbooksellerid=[% loop_order.booksellerid %]&datereceived=[% loop_order.invoicedatereceived %]&invoice=[% loop_order.invoice %]">Add note</a>] |
| 241 |
[% END %] |
211 |
[% END %] |
| 242 |
</td> |
212 |
</td> |
|
|
213 |
<td>[% loop_order.ean %]</td> |
| 243 |
<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&id=[% loop_order.biblionumber %]" title="MARC" rel="gb_page_center[600,500]">Card</a></td> |
214 |
<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&id=[% loop_order.biblionumber %]" title="MARC" rel="gb_page_center[600,500]">Card</a></td> |
| 244 |
<td>[% loop_order.quantity %]</td> |
215 |
<td>[% loop_order.quantity %]</td> |
| 245 |
<td>[% loop_order.ecost %]</td> |
216 |
<td>[% loop_order.ecost %]</td> |
| 246 |
<td>[% loop_order.ordertotal %]</td> |
217 |
<td>[% loop_order.ordertotal %]</td> |
| 247 |
<td>[% loop_order.budget_name %]</td> |
218 |
<td>[% loop_order.budget_name %]</td> |
| 248 |
<td> |
219 |
<td> |
|
|
220 |
[% IF (loop_order.can_receive) %] |
| 249 |
<a href="orderreceive.pl?ordernumber=[% loop_order.ordernumber %]&invoiceid=[% invoiceid %]">Receive</a> |
221 |
<a href="orderreceive.pl?ordernumber=[% loop_order.ordernumber %]&invoiceid=[% invoiceid %]">Receive</a> |
|
|
222 |
[% ELSE %] |
| 223 |
Can't receive order |
| 224 |
[% END %] |
| 250 |
</td> |
225 |
</td> |
| 251 |
<td> |
226 |
<td> |
| 252 |
[% IF ( loop_order.left_holds_on_order ) %] |
227 |
[% IF ( loop_order.left_holds_on_order ) %] |
|
Lines 276-297
Link Here
|
| 276 |
[% END %] |
251 |
[% END %] |
| 277 |
</tbody> |
252 |
</tbody> |
| 278 |
</table>[% ELSE %]There are no pending orders.[% END %] |
253 |
</table>[% ELSE %]There are no pending orders.[% END %] |
| 279 |
<div id="resultnumber"> |
|
|
| 280 |
<!-- Row of numbers corresponding to search result pages --> |
| 281 |
[% IF ( displayprev ) %] |
| 282 |
<a href="parcel.pl?invoiceid=[% invoiceid %]&startfrom=[% prevstartfrom %][% IF ( resultsperpage ) %]&resultsperpage=[% resultsperpage %][% END %]#resultnumber"><< Previous</a> |
| 283 |
[% END %] |
| 284 |
[% FOREACH number IN numbers %] |
| 285 |
[% IF ( number.highlight ) %] |
| 286 |
<span class="current">[% number.number %]</span> |
| 287 |
[% ELSE %] |
| 288 |
<a href="parcel.pl?invoiceid=[% invoiceid %]&startfrom=[% number.startfrom %][% IF ( resultsperpage ) %]&resultsperpage=[% resultsperpage %][% END %]#resultnumber">[% number.number %]</a> |
| 289 |
[% END %] |
| 290 |
[% END %] |
| 291 |
[% IF ( displaynext ) %] |
| 292 |
<a href="parcel.pl?invoiceid=[% invoiceid %]&startfrom=[% nextstartfrom %][% IF ( resultsperpage ) %]&resultsperpage=[% resultsperpage %][% END %]#resultnumber">Next >></a> |
| 293 |
[% END %] |
| 294 |
</div> |
| 295 |
</div> |
254 |
</div> |
| 296 |
[% ELSE %] |
255 |
[% ELSE %] |
| 297 |
<p> |
256 |
<p> |
|
Lines 398-404
Link Here
|
| 398 |
</div> |
357 |
</div> |
| 399 |
</div> |
358 |
</div> |
| 400 |
<div class="yui-b"> |
359 |
<div class="yui-b"> |
| 401 |
<form action="/cgi-bin/koha/acqui/parcel.pl" id="filterform" method="post"> |
360 |
<form onsubmit="return filter();"> |
| 402 |
<fieldset class="brief"> |
361 |
<fieldset class="brief"> |
| 403 |
|
362 |
|
| 404 |
<h4>Filter</h4> |
363 |
<h4>Filter</h4> |
|
Lines 432-438
Link Here
|
| 432 |
<input type="hidden" value="[% invoice %]" name="invoice" /> |
391 |
<input type="hidden" value="[% invoice %]" name="invoice" /> |
| 433 |
<input type="hidden" value="[% invoicedatereceived %]" name="datereceived" /> |
392 |
<input type="hidden" value="[% invoicedatereceived %]" name="datereceived" /> |
| 434 |
<input type="submit" value="Filter" /> |
393 |
<input type="submit" value="Filter" /> |
| 435 |
<a href="/cgi-bin/koha/acqui/parcel.pl?booksellerid=[% booksellerid %]&invoice=[% invoice %]&op=new&datereceived=[% formatteddatereceived %]">Clear</a> |
394 |
<a href="#" onclick="clearFilters(); return false;">Clear</a> |
| 436 |
</fieldset> |
395 |
</fieldset> |
| 437 |
|
396 |
|
| 438 |
|
397 |
|