2 [% INCLUDE 'doc-head-open.inc' %]
3 <title>Koha › Acquisitions › Order staged MARC records
4 [% IF ( batch_details ) %]
5 › Batch [% import_batch_id %]
10 [% INCLUDE 'greybox.inc' %]
11 <link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
12 [% INCLUDE 'doc-head-close.inc' %]
13 [% INCLUDE 'datatables.inc' %]
14 <script type="text/javascript" src="[% interface %]/lib/jquery/plugins/jquery.checkboxes.min.js"></script>
15 <script type="text/javascript" src="[% themelang %]/js/acq.js"></script>
16 <script type="text/JavaScript">
18 $(document).ready(function() {
19 $("#files").dataTable($.extend(true, {}, dataTablesDefaults, {
21 { "bSortable": false, "bSearchable": false, 'aTargets': [ 'NoSort' ] },
22 { "sType": "anti-the", "aTargets" : [ "anti-the" ] },
23 { "sType": "title-string", "aTargets" : [ "title-string" ] }
25 "sPaginationType": "four_button",
29 // keep copy of the inactive budgets
30 disabledBudgetsCopy = $("select[name='all_budget_id']").html();
31 $("select[name='all_budget_id'] .b_inactive").remove();
32 $("select[name='budget_id'] .b_inactive").remove();
34 $("#showallbudgets").click(function() {
35 if ($(this).is(":checked")) {
36 $("select[name='budget_id']").html(disabledBudgetsCopy)
39 $("select[name='budget_id'] .b_inactive").remove();
43 $("#all_showallbudgets").click(function() {
44 if ($(this).is(":checked")) {
45 $("select[name='all_budget_id']").html(disabledBudgetsCopy);
48 $("select[name='all_budget_id'] .b_inactive").remove();
52 $("select[name='budget_id']").change(function(){
53 var sort1_authcat = $(this).find("option:selected").attr('data-sort1-authcat');
54 var sort2_authcat = $(this).find("option:selected").attr('data-sort2-authcat');
55 var destination_sort1 = $(this).parents('fieldset').find('li.sort1').find('input[name="sort1"]');
56 var sort1 = $(destination_sort1).val() || "";
57 if ( destination_sort1.length < 1 ) {
58 destination_sort1 = $(this).parents('fieldset').find('li.sort1 > select[name="sort1"]');
60 var destination_sort2 = $(this).parents('fieldset').find('li.sort2').find('input[name="sort2"]');
61 var sort2 = $(destination_sort2).val() || "";
62 if ( destination_sort2.length < 1 ) {
63 destination_sort2 = $(this).parents('fieldset').find('li.sort2').find('select[name="sort2"]');
65 getAuthValueDropbox( 'sort1', sort1_authcat, destination_sort1, sort1 );
67 getAuthValueDropbox( 'sort2', sort2_authcat, destination_sort2, sort2 );
70 $("select[name='budget_id']").change();
72 $("select[name='all_budget_id']").change(function(){
73 var sort1_authcat = $(this).find("option:selected").attr('data-sort1-authcat');
74 var sort2_authcat = $(this).find("option:selected").attr('data-sort2-authcat');
75 var destination_sort1 = $(this).parent().siblings('li').find('input[name="all_sort1"]');
76 if ( destination_sort1.length < 1 ) {
77 destination_sort1 = $(this).parent().siblings('li').find('select[name="all_sort1"]');
79 var destination_sort2 = $(this).parent().siblings('li').find('input[name="all_sort2"]');
80 if ( destination_sort2.length < 1 ) {
81 destination_sort2 = $(this).parent().siblings('li').find('select[name="all_sort2"]');
83 getAuthValueDropbox( 'sort1', sort1_authcat, destination_sort1 );
84 getAuthValueDropbox( 'sort2', sort2_authcat, destination_sort2 );
85 $(this).parent().siblings('li').find('select[name="sort1"]').attr('name', 'all_sort1');
86 $(this).parent().siblings('li').find('input[name="sort1"]').attr('name', 'all_sort1');
87 $(this).parent().siblings('li').find('select[name="sort2"]').attr('name', 'all_sort2');
88 $(this).parent().siblings('li').find('input[name="sort2"]').attr('name', 'all_sort2');
91 $("select[name='all_budget_id']").change();
93 $("#records_to_import fieldset.rows ol").hide();
94 $('input:checkbox[name="import_record_id"]').change(function(){
95 var container = $(this).parents("fieldset");
96 if ( $(this).is(':checked') ) {
97 $(container).addClass("selected");
98 $(container).removeClass("unselected");
99 $(container).find("ol").toggle(true);
101 $(container).addClass("unselected");
102 $(container).removeClass("selected");
103 $(container).find("ol").toggle(false);
107 $("input:checkbox").attr("checked", false);
108 $("div.biblio.unselected select").attr("disabled", false);
109 $("div.biblio.unselected input").attr("disabled", false);
111 $("#checkAll").click(function(){
112 $("#Aform").checkCheckboxes();
113 $("input:checkbox[name='import_record_id']").change();
116 $("#unCheckAll").click(function(){
117 $("#Aform").unCheckCheckboxes();
118 $("input:checkbox[name='import_record_id']").change();
122 $("#Aform").on("submit", function(){
123 if ( $("input:checkbox[name='import_record_id']:checked").length < 1 ) {
124 alert(_("There is no record selected"));
129 $("input:checkbox[name='import_record_id']:checked").parents('fieldset').find('input[name="quantity"]').each(function(){
130 if ( $(this).val().length < 1 || isNaN( $(this).val() ) ) {
135 alert(error + " " + _("quantity values are not filled in or are not numbers"));
139 return disableUnchecked($(this));
144 function disableUnchecked(form){
145 $("fieldset.biblio.unselected").each(function(){
153 <body id="acq_addorderiso2709" class="acq">
154 [% INCLUDE 'header.inc' %]
155 [% INCLUDE 'acquisitions-search.inc' %]
156 <div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> › <a href="/cgi-bin/koha/acqui/acqui-home.pl">Acquisitions</a> › <a href="/cgi-bin/koha/acqui/supplier.pl?booksellerid=[% booksellerid %]">[% booksellername %]</a> › <a href="/cgi-bin/koha/acqui/basket.pl?basketno=[% basketno %]">Basket [% basketno %]</a> › Add orders from iso2709 file</div>
157 <div id="doc3" class="yui-t2">
161 [% IF ( batch_details ) %]
162 <h1>Add orders from [% comments %]
163 ([% file_name %] staged on [% upload_timestamp | $KohaDates with_hours => 1 %])
165 <form action="/cgi-bin/koha/acqui/addorderiso2709.pl" method="post" id="Aform">
166 <div id="tabs" class="toptabs">
168 <li><a href="#records_to_import">Select to import</a></li>
169 <li><a href="#items_info" class="items_info">Item information</a></li>
170 <li><a href="#accounting_details">Default accounting details</a></li>
173 <div id="records_to_import">
174 <span class="checkall"><a id="checkAll" href="#">Check all</a></span>
175 <span class="uncheckall"><a id="unCheckAll" href="#">Uncheck all</a></span>
176 <label for="showallbudgets" style="float:none;width:auto;"> Show all funds:</label>
177 <input type="checkbox" id="showallbudgets" />
178 <input type="hidden" name="op" value="import_records"/>
179 <input type="hidden" name="basketno" value="[% basketno %]" />
180 <input type="hidden" name="booksellerid" value="[% booksellerid %]" />
181 <input type="hidden" name="import_batch_id" value="[%import_batch_id %]" />
182 <input type="hidden" name="ordernumber" value="[% ordernumber %]" />
184 [% FOREACH cur IN loop_currencies %]
185 <input type="hidden" name="[% cur.currency %]" value="[% cur.rate %]" />
188 [% FOREACH biblio IN biblio_list %]
189 <fieldset class="biblio unselected rows" style="float:none;">
191 <label for="record_[% biblio.import_record_id %]" style="width:auto;">
192 <input type="checkbox" name="import_record_id" id="record_[% biblio.import_record_id %]" value="[% biblio.import_record_id %]" />
193 <span class="citation">[% biblio.citation %]</span>
195 <span class="links" style="font-weight: normal;">
196 ( <a href="/cgi-bin/koha/catalogue/showmarc.pl?importid=[% biblio.import_record_id %]" title="MARC" rel="gb_page_center[600,500]">MARC</a> | <a href="/cgi-bin/koha/catalogue/showmarc.pl?viewas=card&importid=[% biblio.import_record_id %]" title="Card" rel="gb_page_center[600,500]">Card</a> | <a href="/cgi-bin/koha/acqui/neworderempty.pl?booksellerid=[% booksellerid %]&basketno=[% basketno %]&breedingid=[% biblio.import_record_id %]&import_batch_id=[% biblio.import_batch_id %]&biblionumber=[% biblio.match_biblionumber %]">Add order</a> )
202 [% IF ( biblio_lis.overlay_status == 'no_match' ) %]
204 [% ELSIF ( biblio_lis.overlay_status == 'match_applied' ) %]
206 [% ELSIF ( biblio_lis.overlay_status == 'auto_match' ) %]
209 [% biblio_lis.overlay_status %]
211 [% IF ( biblio.match_biblionumber ) %]
212 Matches biblio [% biblio.match_biblionumber %] (score = [% biblio.match_score %]): <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblio.match_biblionumber %]">[% biblio.match_citation %]</a>
216 <li class="quantity">
217 <label for="quantity_record_[% biblio.import_record_id %]" class="required">Quantity: </label>
218 <input id="quantity_record_[% biblio.import_record_id %]" type="text" value="[% biblio.quantity.length ? biblio.quantity : 1 %]" name="quantity" />
221 <label for="price_record_[% biblio.import_record_id %]">Price: </label>
222 <input id="price_record_[% biblio.import_record_id %]" type="text" value="[% biblio.price %]" name="price" />
224 <li class="discount">
225 <label for="discount_record_[% biblio.import_record_id %]">Discount: </label>
226 <input id="discount_record_[% biblio.import_record_id %]" type="text" value="[% biblio.discount %]" name="discount" size="6" /> %
227 (If empty, discount rate from vendor will be used)
230 <label for="fund_record_[% biblio.import_record_id %]">Fund: </label>
232 <input type="hidden" size="20" name="budget_id" value="[% budget_id %]" />[% Budget_name %]
234 <select id="fund_record_[% biblio.import_record_id %]" size="1" name="budget_id">
235 <option value="">Select a fund</option>
236 [% FOREACH budget IN budget_loop %]
237 [% IF ( budget.b_id == biblio.budget_id ) %]
238 [% IF budget.b_active %]
239 <option value="[% budget.b_id %]" data-sort1-authcat="[% budget.b_sort1_authcat %]" data-sort2-authcat="[% budget.b_sort2_authcat %]" selected="selected">[% budget.b_txt %]</option>
241 <option value="[% budget.b_id %]" data-sort1-authcat="[% budget.b_sort1_authcat %]" data-sort2-authcat="[% budget.b_sort2_authcat %]" selected="selected">[% budget.b_txt %] (inactive)</option>
244 [% IF budget.b_active %]<option value="[% budget.b_id %]" data-sort1-authcat="[% budget.b_sort1_authcat %]" data-sort2-authcat="[% budget.b_sort2_authcat %]">[% budget.b_txt %]</option>
245 [% ELSE %]<option value="[% budget.b_id %]" class="b_inactive" data-sort1-authcat="[% budget.b_sort1_authcat %]" data-sort2-authcat="[% budget.b_sort2_authcat %]">[% budget.b_txt %] (inactive)</option>
253 <label for="sort1_record_[% biblio.import_record_id %]">Statistic 1: </label>
254 <input id="sort1_record_[% biblio.import_record_id %]" type="text" id="sort1" size="20" name="sort1" value="[% biblio.sort1 %]" />
257 <label for="sort2_record_[% biblio.import_record_id %]">Statistic 2: </label>
258 <input id="sort2_record_[% biblio.import_record_id %]" type="text" id="sort2" size="20" name="sort2" value="[% biblio.sort2 %]" />
264 <div id="items_info">
265 <h2>Item information</h2>
266 <p>Import all the checked items in the basket with the following parameters:</p>
269 <fieldset class="rows" style="float:none;">
270 <legend>Item</legend>
271 [% IF ( NoACQframework ) %]
272 <div class="dialog message">No ACQ framework, using default. You should create a framework with code ACQ, the items framework would be used</div>
274 [% FOREACH item IN items %]
275 <div id="outeritemblock">
278 [% FOREACH iteminformatio IN item.iteminformation %]<li style="[% iteminformatio.hidden %];">
279 <div class="subfield_line" id="subfield[% iteminformatio.serialid %][% iteminformatio.countitems %][% iteminformatio.subfield %][% iteminformatio.random %]">
280 [% IF (iteminformatio.mandatory) %]
281 <label class="required">[% iteminformatio.subfield %] - [% iteminformatio.marc_lib %]</label>
283 <label>[% iteminformatio.subfield %] - [% iteminformatio.marc_lib %]</label>
286 [% IF ( iteminformatio.marc_value.type == 'select' ) %]
287 <select name="field_value" size="1">
288 [% FOREACH value IN iteminformatio.marc_value.values %]
289 [% IF ( value == iteminformatio.marc_value.default ) %]
290 <option value="[% value %]" selected="selected">[% iteminformatio.marc_value.labels.$value %]</option>
292 <option value="[% value %]">[% iteminformatio.marc_value.labels.$value %]</option>
297 [% iteminformatio.marc_value %]
299 <input type="hidden" name="itemid" value="1" />
300 <input type="hidden" name="kohafield" value="[% iteminformatio.kohafield %]" />
301 <input type="hidden" name="tag" value="[% iteminformatio.tag %]" />
302 <input type="hidden" name="subfield" value="[% iteminformatio.subfield %]" />
303 <input type="hidden" name="mandatory" value="[% iteminformatio.mandatory %]" />
304 [% IF ( iteminformatio.mandatory ) %] <span class="required">Required</span>[% END %]
308 </div><!-- /iteminformation -->
310 [% END %] <!-- /items -->
312 [% END %] <!-- items -->
314 <div id="accounting_details">
315 <p>Import all the checked items in the basket with the following accounting details (used only if no information is filled for the item):</p>
316 <fieldset class="rows" style="float:none;">
317 <legend>Accounting details</legend>
320 <!-- origquantityrec only here for javascript compatibility (additem.js needs it, useless here, usefull when receiveing an order -->
321 <input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="1" />
325 <span class="label">Fund: </span>
326 <input type="hidden" size="20" name="budget_id" id="budget_id" value="[% budget_id %]" />[% Budget_name %]
329 <label for="all_currency">Currency:</label>
330 <select name="all_currency" id="all_currency">
331 [% FOREACH loop_currencie IN loop_currencies %]
332 [% IF ( loop_currencie.selected ) %]
333 <option value="[% loop_currencie.currcode %]" selected="selected">[% loop_currencie.currcode %]</option>
335 <option value="[% loop_currencie.currcode %]">[% loop_currencie.currcode %]</option>
341 <label for="all_budget_id">Fund: </label>
342 <select id="all_budget_id" size="1" name="all_budget_id">
343 <option value="">Select a fund</option>
344 [% FOREACH budget_loo IN budget_loop %]
345 [% IF ( budget_loo.b_active ) %]<option value="[% budget_loo.b_id %]" data-sort1-authcat="[% budget_loo.b_sort1_authcat %]" data-sort2-authcat="[% budget_loo.b_sort2_authcat %]">[% budget_loo.b_txt %]</option>
346 [% ELSE %]<option value="[% budget_loo.b_id %]" class="b_inactive" data-sort1-authcat="[% budget_loo.b_sort1_authcat %]" data-sort2-authcat="[% budget_loo.b_sort2_authcat %]">[% budget_loo.b_txt %] (inactive)</option>
350 <label for="all_showallbudgets" style="float:none;width:auto;"> Show all:</label>
351 <input type="checkbox" id="all_showallbudgets" />
356 <label for="all_order_internalnote">Internal note: </label>
357 <textarea id="all_order_internalnote" cols="30" rows="3" name="all_order_internalnote"></textarea>
360 <label for="all_order_vendornote">Vendor note: </label>
361 <textarea id="all_order_vendornote" cols="30" rows="3" name="all_order_vendornote"></textarea>
364 <div class="hint">The 2 following fields are available for your own usage. They can be useful for statistical purposes</div>
365 <label for="all_sort1">Statistic 1: </label>
366 <input type="text" id="all_sort1" size="20" name="all_sort1" value="" />
369 <label for="all_sort2">Statistic 2: </label>
370 <input type="text" id="all_sort2" size="20" name="all_sort2" value="" />
377 <fieldset class="action">
378 <input type="submit" value="Save" /><a class="cancel" href="/cgi-bin/koha/acqui/basket.pl?basketno=[% basketno %]">Cancel</a>
383 <h1>Choose the file to add to the basket</h1>
390 <th class="title-string">Staged</th>
392 <th class="NoSort"> </th>
396 [% FOREACH batch_lis IN batch_list %]
398 <td>[% batch_lis.file_name %]</td>
399 <td>[% batch_lis.comments %]</td>
401 [% IF ( batch_lis.import_status == 'cleaned' ) %]
403 [% ELSIF ( batch_lis.import_status == 'imported' ) %]
405 [% ELSIF ( batch_lis.import_status == 'importing' ) %]
407 [% ELSIF ( batch_lis.import_status == 'reverted' ) %]
409 [% ELSIF ( batch_lis.import_status == 'reverting' ) %]
411 [% ELSIF ( batch_lis.import_status == 'staged' ) %]
414 [% batch_lis.import_status %]
417 <td><span title="[% batch_lis.staged_date %]">[% batch_lis.staged_date | $KohaDates with_hours => 1 %]</span></td>
418 <td>[% batch_lis.num_records %]</td>
419 <td><a href="[% batch_lis.scriptname %]?import_batch_id=[% batch_lis.import_batch_id %]&basketno=[% basketno %]&booksellerid=[% booksellerid %]">Add orders</a></td>