d8f1d4837e
Test plan : To test : 1- In Acquisitions, create a basket 2- Add an order from a new (empty) record --> Note that when you enter the "vendor price", it is copied in the "replacement cost" field 3- Add an order from a new file --> Note that when you enter the "price", the "replacement price" field stays empty 4- Apply the batch 5- Redo step 3 and notice that when you change the 'price', the 'replacement price' syncs with it Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com> Signed-off-by: Lucas Gass <lucas@bywatersolutions.com> Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de> (cherry picked from commitbed0563e56
) Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com> (cherry picked from commitcf64df296c
) Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
582 lines
54 KiB
Text
582 lines
54 KiB
Text
[% USE raw %]
|
|
[% USE Asset %]
|
|
[% USE KohaDates %]
|
|
[% USE Branches %]
|
|
[% USE Price %]
|
|
[% INCLUDE 'doc-head-open.inc' %]
|
|
<title>
|
|
[% IF ( batch_details ) %]
|
|
Batch [% import_batch_id | html %]
|
|
[% ELSE %]
|
|
Batch list
|
|
[% END %] › Order staged MARC records › Acquisitions › Koha
|
|
</title>
|
|
<style>
|
|
.biblio {
|
|
padding: 0 .5em;
|
|
margin:0;
|
|
}
|
|
.order_details {
|
|
display: flex;
|
|
justify-content: space-between;
|
|
}
|
|
.biblio .actions {
|
|
float: right;
|
|
}
|
|
@media (max-width: 992px) {
|
|
.order_details {
|
|
display: block;
|
|
}
|
|
}
|
|
@media (max-width: 767px) {
|
|
#dataPreview {
|
|
margin: 0;
|
|
width : auto;
|
|
}
|
|
}
|
|
</style>
|
|
[% INCLUDE 'doc-head-close.inc' %]
|
|
[% Asset.css("css/addbiblio.css") | $raw %]
|
|
[%# As long as cataloging plugins rely on 'script' tags added inline, JS must be in the header %]
|
|
<script>
|
|
const template_path = "[% interface | html %]/[% theme | html %]";
|
|
</script>
|
|
[% Asset.js("js/acquisitions-menu.js") | $raw %]
|
|
[% INCLUDE 'datatables.inc' %]
|
|
[% Asset.js("js/acq.js") | $raw %]
|
|
[% Asset.js("js/funds_sorts.js") | $raw %]
|
|
[% Asset.js("js/cataloging.js") | $raw %]
|
|
[% Asset.js("js/addorderiso2709.js") | $raw %]
|
|
[% INCLUDE 'calendar.inc' %]
|
|
</head>
|
|
|
|
<body id="acq_addorderiso2709" class="acq">
|
|
[% WRAPPER 'header.inc' %]
|
|
[% INCLUDE 'acquisitions-search.inc' %]
|
|
[% END %]
|
|
|
|
[% WRAPPER 'sub-header.inc' %]
|
|
[% WRAPPER breadcrumbs %]
|
|
[% WRAPPER breadcrumb_item %]
|
|
<a href="/cgi-bin/koha/acqui/acqui-home.pl">Acquisitions</a>
|
|
[% END %]
|
|
[% WRAPPER breadcrumb_item %]
|
|
<a href="/cgi-bin/koha/acqui/supplier.pl?booksellerid=[% booksellerid | uri %]">[% booksellername | html %]</a>
|
|
[% END %]
|
|
[% WRAPPER breadcrumb_item %]
|
|
<a href="/cgi-bin/koha/acqui/basket.pl?basketno=[% basketno | uri %]">Basket [% basketno | html %]</a>
|
|
[% END %]
|
|
[% WRAPPER breadcrumb_item bc_active= 1 %]
|
|
<span>Add orders from MARC file</span>
|
|
[% END %]
|
|
[% END #/ WRAPPER breadcrumbs %]
|
|
[% END #/ WRAPPER sub-header.inc %]
|
|
|
|
<div class="container-fluid">
|
|
<div class="row">
|
|
<div class="col-md-10 col-md-offset-1">
|
|
[% IF ( allmatch ) %]
|
|
<div class="dialog alert">
|
|
<h4>No records imported</h4>
|
|
No records have been imported because they all match existing records in your catalog.<br />You'll have to treat them individually.
|
|
</div>
|
|
[% END %]
|
|
|
|
[% IF ( batch_details ) %]
|
|
<h1>
|
|
Add orders from [% comments | html %]
|
|
([% file_name | html %] staged on [% upload_timestamp | $KohaDates with_hours => 1 %])
|
|
</h1>
|
|
<form action="/cgi-bin/koha/acqui/addorderiso2709.pl" method="post" id="Aform" class="validated">
|
|
[% WRAPPER tabs id= "tabs" %]
|
|
[% WRAPPER tabs_nav %]
|
|
[% WRAPPER tab_item tabname= "records_to_import" bt_active= 1 %] <span>Select to import</span> [% END %]
|
|
[% IF items %]
|
|
[% WRAPPER tab_item tabname= "items_info" %] <span>Item information</span> [% END %]
|
|
[% END %]
|
|
[% WRAPPER tab_item tabname= "accounting_details" %] <span>Default accounting details</span> [% END %]
|
|
[% END %]
|
|
|
|
[% WRAPPER tab_panels %]
|
|
[% WRAPPER tab_panel tabname= "records_to_import" bt_active= 1 %]
|
|
<div id="searchheader" class="searchheader">
|
|
<div>
|
|
<span class="checkall"><a id="checkAll" href="#">Select all</a></span>
|
|
|
|
|
<span class="uncheckall"><a id="unCheckAll" href="#">Clear all</a></span>
|
|
|
|
|
<span>
|
|
<label for="matcher_id">Matching:</label>
|
|
<select name="matcher_id" id="matcher_id">
|
|
<option value="_TITLE_AUTHOR_">Title and author</option>
|
|
<option value="">Do not look for matching records</option>
|
|
[% FOREACH available_matcher IN available_matchers %]
|
|
[% IF ( available_matcher.code == current_matcher_code ) %]
|
|
<option value="[% available_matcher.matcher_id | html %]" selected="selected">
|
|
[% available_matcher.code | html %] ([% available_matcher.description | html %])
|
|
</option>
|
|
[% ELSE %]
|
|
<option value="[% available_matcher.matcher_id | html %]">
|
|
[% available_matcher.code | html %] ([% available_matcher.description | html %])
|
|
</option>
|
|
[% END %]
|
|
[% END %]
|
|
</select>
|
|
</span>
|
|
|
|
|
<span>
|
|
<label for="showallbudgets" style="float:none;width:auto;"> Show inactive funds:</label>
|
|
<input type="checkbox" id="showallbudgets" />
|
|
</span>
|
|
</div>
|
|
</div> <!-- /#searchheader -->
|
|
|
|
<input type="hidden" name="op" value="import_records"/>
|
|
<input type="hidden" name="basketno" value="[% basketno | html %]" />
|
|
<input type="hidden" name="booksellerid" value="[% booksellerid | html %]" />
|
|
<input type="hidden" name="import_batch_id" value="[% import_batch_id | html %]" />
|
|
<input type="hidden" name="ordernumber" value="[% ordernumber | html %]" />
|
|
|
|
<table class="biblio unselected dataTable">
|
|
<tbody>
|
|
[% FOREACH biblio IN import_biblio_list %]
|
|
<tr>
|
|
<td>
|
|
<input type="checkbox" name="import_record_id" id="record_[% biblio.import_record_id | html %]" value="[% biblio.import_record_id | html %]" />
|
|
</td>
|
|
<td>
|
|
<label for="record_[% biblio.import_record_id | html %]">
|
|
<span class="title citation">
|
|
[%- biblio.import_biblio.title | html -%]
|
|
[% biblio.import_biblio.author | html -%]
|
|
[% IF (biblio.import_biblio.isbn || biblio.import_biblio.issn) -%]
|
|
([%- biblio.import_biblio.isbn | html -%]
|
|
[%- IF (biblio.import_biblio.isbn && biblio.import_biblio.issn ) %] & [%- END -%]
|
|
[%- biblio.import_biblio.issn | html %])
|
|
[%- END -%]
|
|
</span>
|
|
</label>
|
|
<span class="actions">
|
|
<a href="/cgi-bin/koha/catalogue/showmarc.pl?importid=[% biblio.import_record_id | uri %]" class="previewData btn btn-default btn-xs">MARC</a>
|
|
<a href="/cgi-bin/koha/catalogue/showmarc.pl?viewas=card&importid=[% biblio.import_record_id | uri %]" class="previewData btn btn-default btn-xs">Card</a>
|
|
<a href="/cgi-bin/koha/acqui/neworderempty.pl?booksellerid=[% booksellerid | uri %]&basketno=[% basketno | uri %]&breedingid=[% biblio.import_record_id | uri %]&import_batch_id=[% biblio.import_batch_id | uri %]&biblionumber=[% biblio.match_biblionumber | uri %]" class="btn btn-default btn-xs">Add order</a>
|
|
</span>
|
|
<fieldset class="rows order_details">
|
|
<ol>
|
|
<li class="status">
|
|
<span class="label">Match:</span>
|
|
<span class="match">
|
|
[% IF ( biblio_lis.overlay_status == 'no_match' ) %]
|
|
<span>No match</span>
|
|
[% ELSIF ( biblio_lis.overlay_status == 'match_applied' ) %]
|
|
<span>Match applied</span>
|
|
[% ELSIF ( biblio_lis.overlay_status == 'auto_match' ) %]
|
|
<span>Match found</span>
|
|
[% ELSE %]
|
|
[% biblio_lis.overlay_status | html %]
|
|
[% END %]
|
|
[% IF ( biblio.match_biblionumber ) %]
|
|
<span>Matches biblio [% biblio.match_biblionumber | uri %]</span> (score = [% biblio.match_score | html %]): <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblio.match_biblionumber | uri %]">[% biblio.match_citation | html %]</a>
|
|
[% END %]
|
|
</span>
|
|
</li>
|
|
<li class="quantity">
|
|
<label for="quantity_record_[% biblio.import_record_id | html %]" class="required">Quantity: </label>
|
|
<input id="quantity_record_[% biblio.import_record_id | html %]" type="text" pattern="[0-9]+" value="[% biblio.quantity.length ? biblio.quantity : 1 | html %]" name="quantity_[% biblio.import_record_id | html %]" />
|
|
<span class="required">Required</span>
|
|
</li>
|
|
<li class="price">
|
|
<label for="price_record_[% biblio.import_record_id | html %]">Price: </label>
|
|
<input id="price_record_[% biblio.import_record_id | html %]" class="decimal" type="text" value="[% biblio.price | $Price on_editing => 1 %]" name="price_[% biblio.import_record_id | html %]" onchange="syncReplacementPrice('price_record_[% biblio.import_record_id | html %]', 'replacementprice_record_[% biblio.import_record_id | html %]')" />
|
|
</li>
|
|
<li class="replacementprice">
|
|
<label for="replacementprice_record_[% biblio.import_record_id | html %]">Replacement price: </label>
|
|
<input id="replacementprice_record_[% biblio.import_record_id | html %]" class="decimal" type="text" value="[% biblio.replacementprice | $Price on_editing => 1 %]" name="replacementprice_[% biblio.import_record_id | html %]" />
|
|
</li>
|
|
<li class="discount">
|
|
<label for="discount_record_[% biblio.import_record_id | html %]">Discount: </label>
|
|
<input id="discount_record_[% biblio.import_record_id | html %]" type="text" value="[% biblio.discount | html %]" name="discount_[% biblio.import_record_id | html %]" size="6" /> %
|
|
<div class="hint">If empty, discount rate from vendor will be used</div>
|
|
</li>
|
|
<li class="fund">
|
|
[% IF ( close ) %]
|
|
<label for="fund_record_[% biblio.import_record_id | html %]">Fund: </label>
|
|
<input type="hidden" size="20" name="budget_id" value="[% budget_id | html %]" />[% Budget_name | html %]
|
|
[% ELSE %]
|
|
<label for="fund_record_[% biblio.import_record_id | html %]">Fund: </label>
|
|
<select id="fund_record_[% biblio.import_record_id | html %]" name="budget_id_[% biblio.import_record_id | html %]">
|
|
<option value="">Select a fund (will use default if set)</option>
|
|
[% FOREACH budget IN budget_loop %]
|
|
[% IF ( budget.b_id == biblio.budget_id ) %]
|
|
[% IF budget.b_active %]
|
|
<option value="[% budget.b_id | html %]" data-sort1-authcat="[% budget.b_sort1_authcat | html %]" data-sort2-authcat="[% budget.b_sort2_authcat | html %]" selected="selected">[% budget.b_txt | html %]</option>
|
|
[% ELSE %]
|
|
<option value="[% budget.b_id | html %]" data-sort1-authcat="[% budget.b_sort1_authcat | html %]" data-sort2-authcat="[% budget.b_sort2_authcat | html %]" selected="selected">[% budget.b_txt | html %] (inactive)</option>
|
|
[% END %]
|
|
[% ELSE %]
|
|
[% IF budget.b_active %]<option value="[% budget.b_id | html %]" data-sort1-authcat="[% budget.b_sort1_authcat | html %]" data-sort2-authcat="[% budget.b_sort2_authcat | html %]">[% budget.b_txt | html %]</option>
|
|
[% ELSE %]<option value="[% budget.b_id | html %]" class="b_inactive" data-sort1-authcat="[% budget.b_sort1_authcat | html %]" data-sort2-authcat="[% budget.b_sort2_authcat | html %]">[% budget.b_txt | html %] (inactive)</option>
|
|
[% END %]
|
|
[% END %]
|
|
[% END %]
|
|
</select>
|
|
<span class="required" style="display:none">Required</span>
|
|
[% END %]
|
|
</li>
|
|
<li class="sort1">
|
|
<label for="sort1_record_[% biblio.import_record_id | html %]">Statistic 1: </label>
|
|
<input id="sort1_record_[% biblio.import_record_id | html %]" type="text" size="20" name="sort1_[% biblio.import_record_id | html %]" value="[% biblio.sort1 | html %]" />
|
|
</li>
|
|
<li class="sort2">
|
|
<label for="sort2_record_[% biblio.import_record_id | html %]">Statistic 2: </label>
|
|
<input id="sort2_record_[% biblio.import_record_id | html %]" type="text" size="20" name="sort2_[% biblio.import_record_id | html %]" value="[% biblio.sort2 | html %]" />
|
|
</li>
|
|
</ol>
|
|
[% IF ( biblio.iteminfos.size ) %]
|
|
<div class="item_edit_form">
|
|
[% IF biblio.item_error %]Item records could not be processed because the number of item fields was uneven.[% END %]
|
|
[% FOREACH item IN biblio.iteminfos %]
|
|
<fieldset class="rows">
|
|
<legend>Item record [% item.item_id | html %]</legend>
|
|
<ol>
|
|
<li>
|
|
<label for="homebranch_item_[% item.item_id | html %]">homebranch</label>
|
|
<select id="homebranch_item_[% item.item_id | html %]" name="homebranch_[% biblio.import_record_id | html %]">
|
|
[% FOREACH l IN libraries %]
|
|
[% IF l.branchcode == item.homebranch %]
|
|
<option value="[% l.branchcode | html %]" selected="selected">[% l.branchname | html %]</option>
|
|
[% ELSE %]
|
|
<option value="[% l.branchcode | html %]">[% l.branchname | html %]</option>
|
|
[% END %]
|
|
[% END %]
|
|
</select>
|
|
</li>
|
|
|
|
<li>
|
|
<label for="holdingbranch_item_[% item.item_id | html %]">holdingbranch</label>
|
|
<select id="holdingbranch_item_[% item.item_id | html %]" name="holdingbranch_[% biblio.import_record_id | html %]">
|
|
[% FOREACH l IN libraries %]
|
|
[% IF l.branchcode == item.holdingbranch %]
|
|
<option value="[% l.branchcode | html %]" selected="selected">[% l.branchname | html %]</option>
|
|
[% ELSE %]
|
|
<option value="[% l.branchcode | html %]">[% l.branchname | html %]</option>
|
|
[% END %]
|
|
[% END %]
|
|
</select>
|
|
</li>
|
|
<li>
|
|
<label for="itype_item_[% item.item_id | html %]">itype</label>
|
|
<select id="itype_item_[% item.item_id | html %]" name="itype_[% biblio.import_record_id | html %]">
|
|
[% FOREACH itemtype IN itemtypes %]
|
|
[% IF itemtype.itemtype == item.itype %]
|
|
<option value="[% itemtype.itemtype | html %]" selected="selected">[% itemtype.description | html %]</option>
|
|
[% ELSE %]
|
|
<option value="[% itemtype.itemtype | html %]">[% itemtype.description | html %]</option>
|
|
[% END %]
|
|
[% END %]
|
|
</select>
|
|
</li>
|
|
|
|
<li>
|
|
<label for="nonpublic_note_item_[% item.item_id | html %]">nonpublic_note</label>
|
|
<input type="text" id="nonpublic_note_item_[% item.item_id | html %]" name="nonpublic_note_[% biblio.import_record_id | html %]" value="[% item.nonpublic_note | html %]">
|
|
</li>
|
|
<li>
|
|
<label for="public_note_item_[% item.item_id | html %]">public_note</label>
|
|
<input type="text" id="public_note_item_[% item.item_id | html %]" name="public_note_[% biblio.import_record_id | html %]" value="[% item.public_note | html %]">
|
|
</li>
|
|
<li>
|
|
<label for="loc_item_[% item.item_id | html %]">loc</label>
|
|
<select id="loc_item_[% item.item_id | html %]" name="loc_[% biblio.import_record_id | html %]">
|
|
<option value=""> </option>
|
|
[% FOREACH locationloo IN locationloop %]
|
|
[% IF ( locationloo.code ) == (item.location) %]
|
|
<option value="[% locationloo.code | html %]" selected="selected">[% locationloo.description | html %]</option>
|
|
[% ELSE %]
|
|
<option value="[% locationloo.code | html %]">[% locationloo.description | html %]</option>
|
|
[% END %]
|
|
[% END %]
|
|
</select>
|
|
</li>
|
|
|
|
<li>
|
|
<label for="ccode_item_[% item.item_id | html %]">ccode</label>
|
|
<select id="ccode_item_[% item.item_id | html %]" name="ccode_[% biblio.import_record_id | html %]">
|
|
<option value=""> </option>
|
|
[% FOREACH ccodeloo IN ccodeloop %]
|
|
[% IF ( ccodeloo.code ) == (item.ccode) %]
|
|
<option value="[% ccodeloo.code | html %]" selected="selected">[% ccodeloo.description | html %]</option>
|
|
[% ELSE %]
|
|
<option value="[% ccodeloo.code | html %]">[% ccodeloo.description | html %]</option>
|
|
[% END %]
|
|
[% END %]
|
|
</select>
|
|
</li>
|
|
|
|
<li>
|
|
<label for="notforloan_item_[% item.item_id | html %]">notforloan</label>
|
|
<select id="notforloan_item_[% item.item_id | html %]" name="notforloan_[% biblio.import_record_id | html %]">
|
|
<option value=""> </option>
|
|
[% FOREACH n IN notforloanloop %]
|
|
[% IF n.code == item.notforloan %]
|
|
<option value="[% n.code | html %]" selected="selected">[% n.description | html %]</option>
|
|
[% ELSE %]
|
|
<option value="[% n.code | html %]">[% n.description | html %]</option>
|
|
[% END %]
|
|
[% END %]
|
|
</select>
|
|
</li>
|
|
<li>
|
|
<label for="uri_item_[% item.item_id | html %]">uri</label>
|
|
<input type="text" id="uri_item_[% item.item_id | html %]" name="uri_[% biblio.import_record_id | html %]" value="[% item.uri | html %]">
|
|
</li>
|
|
<li>
|
|
<label for="copyno_item_[% item.item_id | html %]">copyno</label>
|
|
<input type="text" id="copyno_item_[% item.item_id | html %]" name="copyno_[% biblio.import_record_id | html %]" value="[% item.copyno | html %]">
|
|
</li>
|
|
<li>
|
|
<label for="budget_code_item_[% item.item_id | html %]">budget_code</label>
|
|
<select class="budget_code_item bci_all" id="budget_code_item_[% item.item_id | html %]" name="budget_code_[% biblio.import_record_id | html %]" hidden="hidden" disabled="disabled">
|
|
<option value="">Select a fund (will use default if set)</option>
|
|
[% FOREACH budget_loo IN budget_loop %]
|
|
[% IF ( budget_loo.b_active ) %]
|
|
[% IF ( budget_loo.b_id ) == ( item.budget_id ) %]
|
|
<option value="[% budget_loo.b_id | html %]" selected="selected">[% budget_loo.b_txt | html %]</option>
|
|
[% ELSE %]
|
|
<option value="[% budget_loo.b_id | html %]">[% budget_loo.b_txt | html %]</option>
|
|
[% END %]
|
|
[% ELSE %]
|
|
[% IF ( budget_loo.b_id ) == ( item.budget_id ) %]
|
|
<option value="[% budget_loo.b_id | html %]" class="buget_item_inactive" selected="selected">[% budget_loo.b_txt | html %] (inactive)</option>
|
|
[% ELSE %]
|
|
<option value="[% budget_loo.b_id | html %]" class="budget_item_inactive">[% budget_loo.b_txt | html %] (inactive)</option>
|
|
[% END %]
|
|
[% END %]
|
|
[% END %]
|
|
</select>
|
|
<span class="item_fund required">Required</span>
|
|
</li>
|
|
<li>
|
|
<label for="price_item_[% item.item_id | html %]">price</label>
|
|
<input type="text" id="price_item_[% item.item_id | html %]" class="decimal" name="itemprice_[% biblio.import_record_id | html %]" value="[% item.itemprice | $Price on_editing => 1 %]">
|
|
</li>
|
|
<li>
|
|
<label for="replacementprice_item_[% item.item_id | html %]">replacement price</label>
|
|
<input type="text" id="replacementprice_item_[% item.item_id | html %]" class="decimal" name="itemreplacementprice_[% biblio.import_record_id | html %]" value="[% item.replacementprice | $Price on_editing => 1 %]">
|
|
</li>
|
|
<li>
|
|
<label for="callnumber_item_[% item.item_id | html %]">callnumber</label>
|
|
<input type="text" id="callnumber_item_[% item.item_id | html %]" name="itemcallnumber_[% biblio.import_record_id | html %]" value="[% item.itemcallnumber | html %]">
|
|
</li>
|
|
</ol>
|
|
</fieldset>
|
|
[% END # /FOREACH item %]
|
|
</div> <!-- /.item_edit_form -->
|
|
[% END %]
|
|
</fieldset> <!-- /.rows.order_details -->
|
|
</td>
|
|
</tr>
|
|
[% END # /FOREACH biblio %]
|
|
</tbody>
|
|
</table> <!-- .biblio.unselected.rows -->
|
|
|
|
<div class="modal" id="dataPreview" tabindex="-1" role="dialog" aria-labelledby="dataPreviewLabel">
|
|
<div class="modal-dialog modal-lg" role="document">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<button type="button" class="closebtn" data-dismiss="modal" aria-label="Close"><span
|
|
aria-hidden="true">×</span></button>
|
|
<h4 id="dataPreviewLabel">MARC preview</h4>
|
|
</div>
|
|
<div class="modal-body">
|
|
<div id="loading"> <img src="[% interface | html %]/[% theme | html %]/img/spinner-small.gif" alt="" /> Loading </div>
|
|
</div>
|
|
<div class="modal-footer">
|
|
<button class="btn btn-default" data-dismiss="modal" aria-hidden="true">Close</button>
|
|
</div>
|
|
</div> <!-- /.modal-content -->
|
|
</div> <!-- /.modal-dialog -->
|
|
</div> <!-- /#dataPreview -->
|
|
[% END # /#records_to_import %]
|
|
|
|
[% IF ( items ) %]
|
|
[% WRAPPER tab_panel tabname= "items_info" %]
|
|
<h2>Item information</h2>
|
|
<p>Import all the checked items in the basket with the following parameters:</p>
|
|
|
|
<fieldset class="rows" style="float:none;">
|
|
<legend>Item</legend>
|
|
[% IF ( NoACQframework ) %]
|
|
<div class="dialog message">No ACQ framework, using default. You should create a framework with code ACQ, the items framework would be used</div>
|
|
[% END %]
|
|
<div class="item_edit_form">
|
|
[% FOREACH item IN items %]
|
|
<div id="outeritemblock">
|
|
<div id="itemblock">
|
|
<ol>
|
|
[% FOREACH iteminformatio IN item.iteminformation %]
|
|
<li style="[% iteminformatio.hidden | html %];">
|
|
<div class="subfield_line" id="subfield[% iteminformatio.serialid | html %][% iteminformatio.countitems | html %][% iteminformatio.subfield | html %][% iteminformatio.random | html %]">
|
|
[% IF (iteminformatio.mandatory) %]
|
|
<label class="required">[% iteminformatio.subfield | html %] - [% iteminformatio.marc_lib | $raw %]</label>
|
|
[% ELSE %]
|
|
<label>[% iteminformatio.subfield | html %] - [% iteminformatio.marc_lib | $raw %]</label>
|
|
[% END %]
|
|
|
|
[% IF ( iteminformatio.marc_value.type == 'select' ) %]
|
|
<select name="field_value" class="input_marceditor">
|
|
[% FOREACH value IN iteminformatio.marc_value.values %]
|
|
[% IF ( value == iteminformatio.marc_value.default ) %]
|
|
<option value="[% value | html %]" selected="selected">[% iteminformatio.marc_value.labels.$value | html %]</option>
|
|
[% ELSE %]
|
|
<option value="[% value | html %]">[% iteminformatio.marc_value.labels.$value | html %]</option>
|
|
[% END %]
|
|
[% END %]
|
|
</select>
|
|
[% ELSE %]
|
|
[% iteminformatio.marc_value | $raw %]
|
|
[% END %]
|
|
<input type="hidden" name="itemid" value="1" />
|
|
<input type="hidden" name="kohafield" value="[% iteminformatio.kohafield | html %]" />
|
|
<input type="hidden" name="tag" value="[% iteminformatio.tag | html %]" />
|
|
<input type="hidden" name="subfield" value="[% iteminformatio.subfield | html %]" />
|
|
<input type="hidden" name="mandatory" value="[% iteminformatio.mandatory | html %]" />
|
|
[% IF ( iteminformatio.mandatory ) %]
|
|
<span class="required">Required</span>
|
|
[% END %]
|
|
</div>
|
|
</li>
|
|
[% END %]
|
|
</ol>
|
|
</div><!-- /#itemblock -->
|
|
</div> <!-- /#outeritemblock -->
|
|
[% END #/FOREACH item %]
|
|
</div> <!-- /.item_edit_form -->
|
|
</fieldset>
|
|
[% END # /#items_info %]
|
|
[% END # /IF items %]
|
|
|
|
[% WRAPPER tab_panel tabname= "accounting_details" %]
|
|
<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>
|
|
<fieldset class="rows" style="float:none;">
|
|
<legend>Accounting details</legend>
|
|
<ol>
|
|
<li>
|
|
<!-- origquantityrec only here for javascript compatibility (additem.js needs it, useless here, useful when receiveing an order -->
|
|
<input id="origquantityrec" readonly="readonly" type="hidden" name="origquantityrec" value="1" />
|
|
</li>
|
|
[% IF ( close ) %]
|
|
<li>
|
|
<span class="label">Fund: </span>
|
|
<input type="hidden" size="20" name="budget_id" id="budget_id" value="[% budget_id | html %]" />[% Budget_name | html %]
|
|
</li>
|
|
[% ELSE %]
|
|
<li>
|
|
<label for="all_currency">Currency:</label>
|
|
<select name="all_currency" id="all_currency">
|
|
[% FOREACH currency IN currencies %]
|
|
[% IF currency.currency == bookseller.listprice %]
|
|
<option value="[% currency.currency | html %]" selected="selected">[% currency.currency | html %]</option>
|
|
[% ELSIF not currency.archived %]
|
|
<option value="[% currency.currency | html %]">[% currency.currency | html %]</option>
|
|
[% END %]
|
|
[% END %]
|
|
</select>
|
|
</li>
|
|
<li>
|
|
<label for="all_budget_id">Fund: </label>
|
|
<select id="all_budget_id" name="all_budget_id">
|
|
<option value="">Select a fund (will populate orders/items if set)</option>
|
|
[% FOREACH budget_loo IN budget_loop %]
|
|
[% IF ( budget_loo.b_active ) %]
|
|
<option value="[% budget_loo.b_id | html %]" data-sort1-authcat="[% budget_loo.b_sort1_authcat | html %]" data-sort2-authcat="[% budget_loo.b_sort2_authcat | html %]">[% budget_loo.b_txt | html %]</option>
|
|
[% ELSE %]
|
|
<option value="[% budget_loo.b_id | html %]" class="b_inactive" data-sort1-authcat="[% budget_loo.b_sort1_authcat | html %]" data-sort2-authcat="[% budget_loo.b_sort2_authcat | html %]">[% budget_loo.b_txt | html %] (inactive)</option>
|
|
[% END %]
|
|
[% END %]
|
|
</select>
|
|
<label for="all_showallbudgets" style="float:none;width:auto;"> Show inactive:</label>
|
|
<input type="checkbox" id="all_showallbudgets" />
|
|
</li>
|
|
[% END #/IF close %]
|
|
<li>
|
|
<label for="all_order_internalnote">Internal note: </label>
|
|
<textarea id="all_order_internalnote" cols="30" rows="3" name="all_order_internalnote"></textarea>
|
|
</li>
|
|
<li>
|
|
<label for="all_order_vendornote">Vendor note: </label>
|
|
<textarea id="all_order_vendornote" cols="30" rows="3" name="all_order_vendornote"></textarea>
|
|
</li>
|
|
<li>
|
|
<div class="hint">The 2 following fields are available for your own usage. They can be useful for statistical purposes</div>
|
|
</li>
|
|
<li>
|
|
<label for="all_sort1">Statistic 1: </label>
|
|
<input type="text" id="all_sort1" size="20" name="all_sort1" value="" />
|
|
</li>
|
|
<li>
|
|
<label for="all_sort2">Statistic 2: </label>
|
|
<input type="text" id="all_sort2" size="20" name="all_sort2" value="" />
|
|
</li>
|
|
</ol>
|
|
</fieldset> <!-- /.rows -->
|
|
[% END # /#accounting_details %]
|
|
[% END #/WRAPPER tab_panels %]
|
|
[% END # /WRAPPER tabs %]
|
|
<fieldset class="action">
|
|
<input type="submit" id="add_order" class="btn btn-primary" value="Save" /><a class="cancel" href="/cgi-bin/koha/acqui/basket.pl?basketno=[% basketno | html %]">Cancel</a>
|
|
</fieldset>
|
|
</form> <!-- /#Aform -->
|
|
[% ELSE # IF ( batch_details ) %]
|
|
<div>
|
|
<h1>Choose the file to add to the basket</h1>
|
|
<table id="files">
|
|
<thead>
|
|
<tr>
|
|
<th>File name</th>
|
|
<th>Comments</th>
|
|
<th>Status</th>
|
|
<th>Staged</th>
|
|
<th># Bibliographic records</th>
|
|
<th class="NoSort"> </th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
[% FOREACH batch_lis IN batch_list %]
|
|
<tr>
|
|
<td>[% batch_lis.file_name | html %]</td>
|
|
<td>[% batch_lis.comments | html %]</td>
|
|
<td>
|
|
[% IF ( batch_lis.import_status == 'cleaned' ) %]
|
|
<span>Cleaned</span>
|
|
[% ELSIF ( batch_lis.import_status == 'imported' ) %]
|
|
<span>Imported</span>
|
|
[% ELSIF ( batch_lis.import_status == 'importing' ) %]
|
|
<span>Importing</span>
|
|
[% ELSIF ( batch_lis.import_status == 'reverted' ) %]
|
|
<span>Reverted</span>
|
|
[% ELSIF ( batch_lis.import_status == 'reverting' ) %]
|
|
<span>Reverting</span>
|
|
[% ELSIF ( batch_lis.import_status == 'staged' ) %]
|
|
<span>Staged</span>
|
|
[% ELSE %]
|
|
[% batch_lis.import_status | html %]
|
|
[% END %]
|
|
</td>
|
|
<td data-order="[% batch_lis.staged_date | html %]">
|
|
[% batch_lis.staged_date | $KohaDates with_hours => 1 %]
|
|
</td>
|
|
<td>[% batch_lis.num_records | html %]</td>
|
|
<td class="actions">
|
|
<a href="[% batch_lis.scriptname | url %]?import_batch_id=[% batch_lis.import_batch_id | uri %]&basketno=[% basketno | uri %]&booksellerid=[% booksellerid | uri %]" class="btn btn-default btn-xs"><i class="fa fa-plus"></i> Add orders</a>
|
|
</td>
|
|
</tr>
|
|
[% END # /FOREACH batch_lis %]
|
|
</tbody>
|
|
</table> <!-- /#files -->
|
|
</div>
|
|
[% END # /IF ( batch_details ) %]
|
|
</div> [% # /div.col-sm-6 %]
|
|
</div> [% # /div.row %]
|
|
|
|
[% INCLUDE 'intranet-bottom.inc' %]
|