f6e86dc0ca
This patch makes it possible to add an extra column to Z3950 search results. The system preference AdditionalFieldsInZ3950ResultSearch decides which MARC field/subfields are displayed in the column. Testing: I Apply the patch II Run updatedatabase.pl ACQUISITIONS 0) Enter a field/subfield in the AdditionalFieldsInZ3950ResultSearch 1) Create a new basket or use an existing one 2) In -Add order to basket-, click "From an external source" 3) Select some search targets and enter a subject heading ex. house 4) Click Search bouton 5) Validate "Additional fields" column with the field/subfield value. CATALOGUING 0) Shares same syspref as above 1) Go to cataloguing, click New from z3950 2) Fill to result in a successful search 3) Validate column Addition Fields prove t/db_dependent/Breeding.t Sponsored-by: CCSR (https://ccsr.qc.ca) Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Séverine QUEUNE <severine.queune@bulac.fr> Signed-off-by: Katrin Fischer <katrin.fischer.83@web.de> Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
249 lines
14 KiB
Text
249 lines
14 KiB
Text
[% USE raw %]
|
||
[% USE Asset %]
|
||
[% SET footerjs = 1 %]
|
||
[% INCLUDE 'doc-head-open.inc' %]
|
||
<title>Koha › Acquisitions › [% IF ( opsearch ) %]Order from external source[% ELSE %]Order from external source › Search results[% END %]</title>
|
||
[% Asset.css("css/datatables.css") | $raw %]
|
||
[% INCLUDE 'doc-head-close.inc' %]
|
||
[% INCLUDE 'datatables.inc' %]
|
||
[% USE Koha %]
|
||
|
||
<style type="text/css">
|
||
.linktools { background-color:#FFF;border-top:1px solid #DDD; border-left: 1px solid #DDD; border-right: 1px solid #666; border-bottom:1px solid #666;display: none; white-space: nowrap;}
|
||
.linktools a { font-size : 85%; text-decoration:none; padding:.3em;;background-color:#FFF; display:block;float:left;border-right:1px solid #DDD;}
|
||
.linktools a:hover { background-color:#EEE;color:#CC3300;border-right:1px solid #CCC;}
|
||
tr.selected { background-color : #FFFFCC; } tr.selected td { background-color : transparent !important; } #dataPreview { width : 80%; } @media (max-width: 767px) { #dataPreview { margin: 0; width : auto; } }
|
||
</style>
|
||
</head>
|
||
|
||
<body id="acq_z3950_search" class="acq">
|
||
[% INCLUDE 'header.inc' %]
|
||
[% INCLUDE 'acquisitions-search.inc' %]
|
||
|
||
<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 | uri %]">[% name | html %]</a> › <a href="/cgi-bin/koha/acqui/basket.pl?basketno=[% basketno | uri %]">Basket [% basketno | html %]</a> › [% IF ( opsearch ) %]Order from external source[% ELSE %]<a href="/cgi-bin/koha/acqui/z3950_search.pl?booksellerid=[% booksellerid | uri %]&basketno=[% basketno | uri %]">Order from external source</a> › Search results[% END %]</div>
|
||
|
||
<div class="main container-fluid">
|
||
<form method="post" action="z3950_search.pl" name="f" class="checkboxed">
|
||
<div class="row">
|
||
[% IF ( opsearch ) %]
|
||
<div class="col-sm-6">
|
||
<h2>Order from external source</h2>
|
||
<input type="hidden" name="op" id="op" value="do_search" />
|
||
<fieldset class="rows">
|
||
<ol>
|
||
<li><label for="searchtitle">Title: </label> <input type="text" id="searchtitle" name="title" value="[% title | html %]" class="focus" /></li>
|
||
<li><label for="isbn">ISBN: </label> <input type="text" id="isbn" name="isbn" value="[% isbn | html %]" /></li>
|
||
<li><label for="lccall">LC call number: </label> <input type="text" id="lccall" name="lccall" value="" /></li>
|
||
<li><label for="controlnumber">Control no.: </label> <input type="text" id="controlnumber" name="controlnumber" value="" /></li>
|
||
<li><label for="author">Author: </label> <input type="text" id="author" name="author" value="[% author | html %]" /></li>
|
||
<li><label for="issn">ISSN: </label> <input type="text" id="issn" name="issn" value="[% issn | html %]" /></li>
|
||
<li><label for="subject">Subject heading: </label> <input type="text" id="subject" name="subject" value="" /></li>
|
||
<li><label for="srchany">Keyword (any): </label> <input type="text" id="srchany" name="srchany" value="" /></li>
|
||
<li><label for="dewey">Dewey: </label> <input type="text" id="dewey" name="dewey" value="" /></li>
|
||
<li><label for="stdid">Standard ID: </label> <input type="text" id="stdid" name="stdid" value="" /></li>
|
||
<li><label for="frameworkcode" >Select MARC framework:</label>
|
||
<select id="frameworkcode" name="frameworkcode" >
|
||
<option value="">Default</option>
|
||
[% FOREACH framework IN frameworks %]
|
||
<option value="[% framework.frameworkcode | html %]" >[% framework.frameworktext | html %]</option>
|
||
[% END %]
|
||
</select>
|
||
</li>
|
||
<li><a id="resetZ3950Search" href="#"><i class="fa fa-trash"></i> Clear search form</a></li>
|
||
</ol>
|
||
</fieldset>
|
||
<input type="hidden" name="biblionumber" value="[% biblionumber | html %]" />
|
||
<input type="hidden" name="basketno" value="[% basketno | html %]" />
|
||
<input type="hidden" name="booksellerid" value="[% booksellerid | html %]" />
|
||
</div>
|
||
<div class="col-sm-6">
|
||
<h2>Search targets</h2>
|
||
<div id="z3950_search_targets_acq">
|
||
<span class="z3950checks"><span class="checkall"><a id="CheckAll" href="#"><i class="fa fa-check"></i> Select all</a></span> | <span class="clearall"><a id="CheckNone" href="#"><i class="fa fa-remove"></i> Clear all</a></span></span>
|
||
[% FOREACH serverloo IN serverloop %]
|
||
<p>
|
||
[% IF ( serverloo.checked ) %]
|
||
<input type="checkbox" name="id" id="z3950_[% serverloo.id | html %]" value="[% serverloo.id | html %]" checked="checked" />
|
||
[% ELSE %]
|
||
<input type="checkbox" name="id" id="z3950_[% serverloo.id | html %]" value="[% serverloo.id | html %]" />
|
||
[% END %]
|
||
<label for="z3950_[% serverloo.id | html %]">[% serverloo.servername | html %] [[% serverloo.host | html %]]</label>
|
||
|
||
</p>
|
||
[% END %]
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="row">
|
||
<div class="col-md-12">
|
||
<fieldset class="action"><input type="submit" class="submit" value="Search" /> <a class="cancel" href="/cgi-bin/koha/acqui/basket.pl?booksellerid=[% booksellerid | uri %]&basketno=[% basketno | uri %]">Cancel</a></fieldset>
|
||
</div>
|
||
</form>
|
||
</div>
|
||
|
||
|
||
[% ELSE %]
|
||
<div class="col-md-12">
|
||
<h2>Search results</h2>
|
||
|
||
<p>You searched for:
|
||
[% IF ( title ) %]<em>Title: </em><span class=term>[% title | html %]</span> [% END %]
|
||
[% IF ( author ) %]<em>Author: </em><span class=term>[% author | html %]</span> [% END %]
|
||
[% IF ( isbn ) %]<em>ISBN: </em><span class=term>[% isbn | html %]</span> [% END %]
|
||
[% IF ( issn ) %]<em>ISSN: </em><span class=term>[% issn | html %]</span> [% END %]
|
||
[% IF ( lccall ) %]<em>LC call number: </em><span class=term>[% lccall | html %]</span> [% END %]
|
||
[% IF ( subject ) %]<em>Subject heading: </em><span class=term>[% subject | html %]</span> [% END %]
|
||
[% IF ( controlnumber ) %]<em>Control no: </em><span class=term>[% controlnumber | html %]</span> [% END %]
|
||
[% IF ( dewey ) %]<em>Dewey: </em><span class=term>[% dewey | html %]</span> [%END %]
|
||
</p>
|
||
|
||
[% IF ( breeding_loop ) %]
|
||
<table id="resultst">
|
||
<thead> <tr>
|
||
<th>Server</th>
|
||
<th>Title</th>
|
||
<th>Author</th>
|
||
<th>ISBN</th>
|
||
<th>LCCN</th>
|
||
[% IF Koha.Preference('AdditionalFieldsInZ3950ResultSearch') != '' %]
|
||
<th>Additional fields</th>
|
||
[% END %]
|
||
<th>Preview</th>
|
||
<th> </th>
|
||
</tr></thead>
|
||
<tbody>[% FOREACH breeding_loo IN breeding_loop %]
|
||
[% IF ( breeding_loo.breedingid ) %]
|
||
|
||
<tr>
|
||
<td>[% breeding_loo.server | html %] <div class="linktools"><a href="/cgi-bin/koha/catalogue/showmarc.pl?importid=[% breeding_loo.breedingid | html %]" class="previewData">Preview MARC</a> <a href="/cgi-bin/koha/catalogue/showmarc.pl?viewas=card&importid=[% breeding_loo.breedingid | html %]" class="previewData">Preview card</a> <a href="/cgi-bin/koha/acqui/neworderempty.pl?frameworkcode=[% frameworkcode | uri %]&breedingid=[% breeding_loo.breedingid | html %]&booksellerid=[% booksellerid | uri %]&basketno=[% basketno | uri %]">Order</a> <a href="#" id="closemenu" title="Close this menu"> X </a></div></td>
|
||
<td>[% breeding_loo.title | html %]</td>
|
||
<td>[% breeding_loo.author | html %]</td>
|
||
<td>[% breeding_loo.isbn | html %]</td>
|
||
<td>[% breeding_loo.lccn | html %]</td>
|
||
[% IF Koha.Preference('AdditionalFieldsInZ3950ResultSearch') != '' %]
|
||
<td>
|
||
<dl>
|
||
[% FOREACH addnumberfield IN breeding_loo.addnumberfields %]
|
||
[% FOREACH string IN breeding_loo.$addnumberfield %]
|
||
<dt>[% addnumberfield | html %]:</dt>
|
||
<dd>[% string | html %]</dd>
|
||
[% END %]
|
||
[% END %]
|
||
</dl>
|
||
</td>
|
||
[% END %]
|
||
<td><a href="/cgi-bin/koha/catalogue/showmarc.pl?importid=[% breeding_loo.breedingid | html %]" title="MARC" class="previewData">MARC</a> | <a href="/cgi-bin/koha/catalogue/showmarc.pl?viewas=card&importid=[% breeding_loo.breedingid | html %]" title="Card" class="previewData">Card</a></td>
|
||
<td><a href="/cgi-bin/koha/acqui/neworderempty.pl?frameworkcode=[% frameworkcode | uri %]&breedingid=[% breeding_loo.breedingid | html %]&booksellerid=[% booksellerid | uri %]&basketno=[% basketno | uri %]">Order</a></td>
|
||
|
||
</tr>
|
||
[% END %]
|
||
[% END %]</tbody>
|
||
</table>
|
||
|
||
|
||
<div id="dataPreview" class="modal" tabindex="-1" role="dialog" aria-labelledby="dataPreviewLabel" aria-hidden="true">
|
||
<div class="modal-dialog">
|
||
<div class="modal-content">
|
||
<div class="modal-header">
|
||
<button type="button" class="closebtn" data-dismiss="modal" aria-hidden="true">×</button>
|
||
<h3 id="dataPreviewLabel">MARC preview</h3>
|
||
</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>
|
||
</div>
|
||
</div>
|
||
|
||
<form method="post" action="z3950_search.pl" id="page_form" name="page_form" class="checkboxed">
|
||
<input type="hidden" name="op" id="op" value="do_search" />
|
||
<input type="hidden" name="current_page" id="current_page" value="[% current_page | html %]" />
|
||
<input type="hidden" id="searchtitle" name="title" value="[% title | html %]" />
|
||
<input type="hidden" id="isbn" name="isbn" value="[% isbn | html %]" />
|
||
<input type="hidden" id="lccall" name="lccall" value="[% lccall | html %]" />
|
||
<input type="hidden" id="author" name="author" value="[% author | html %]" />
|
||
<input type="hidden" id="subject" name="subject" value="[% subject | html %]" />
|
||
<input type="hidden" id="dewey" name="dewey" value="[% dewey | html %]" />
|
||
<input type="hidden" name="frameworkcode" value="[% frameworkcode | html %]" />
|
||
<input type="hidden" name="biblionumber" value="[% biblionumber | html %]" />
|
||
<input type="hidden" name="controlnumber" value="[% controlnumber | html %]" />
|
||
<input type="hidden" name="basketno" value="[% basketno | html %]" />
|
||
<input type="hidden" name="booksellerid" value="[% booksellerid | html %]" />
|
||
|
||
[% FOREACH server IN servers %]
|
||
<input type="hidden" name="id" id="z3950_[% server.id | html %]" value="[% server.id | html %]" />
|
||
[% END %]
|
||
|
||
[% IF ( show_prevbutton ) %]
|
||
<input type="button" name="changepage_prev" value="Previous page" data-currentpage="[% current_page | html %]" />
|
||
[% END %]
|
||
Page [% current_page | html %] / [% total_pages | html %]
|
||
[% IF ( show_nextbutton ) %]
|
||
<input type="button" name="changepage_next" value="Next page" data-currentpage="[% current_page | html %]" />
|
||
[% END %]
|
||
<br />Go to page : <input id="goto_page" name="goto_page" value="[% current_page | html %]" size="4" type="text" /> <input type="submit" name="changepage_goto" value="Go" />
|
||
</form>
|
||
|
||
[% ELSE %]
|
||
[% IF ( emptyserverlist ) %]
|
||
<div class="dialog alert">You didn't select any external target.</div>
|
||
[% ELSE %]
|
||
[% IF ( errconn ) %]
|
||
<div class="dialog alert">
|
||
<ul>
|
||
[% FOREACH errcon IN errconn %]
|
||
<li>Connection failed to [% errcon.server | html %]</li>
|
||
[% END %]
|
||
</ul>
|
||
</div>
|
||
[% END %]
|
||
[% END %]
|
||
<div class="dialog message">Nothing found. <a href="javascript: history.back()">Try another search</a>.</div>
|
||
[% END %]
|
||
</div>
|
||
|
||
[% END %]
|
||
|
||
[% IF ( numberpending ) %]<h3 align="center">Still [% numberpending | html %] servers to search</h3>[% END %]
|
||
|
||
[% MACRO jsinclude BLOCK %]
|
||
[% Asset.js("js/acquisitions-menu.js") | $raw %]
|
||
[% INCLUDE 'datatables.inc' %]
|
||
[% Asset.js("lib/jquery/plugins/jquery.checkboxes.min.js") | $raw %]
|
||
<script type="text/javascript">
|
||
$(document).ready(function(){
|
||
var resultst = $("#resultst").dataTable($.extend(true, {}, dataTablesDefaults, {
|
||
"aoColumnDefs": [
|
||
{ "aTargets": [ -1, -2 ], "bSortable": false, "bSearchable": false },
|
||
{ "aTargets": [ 1 ], "sType": "nsb-nse" },
|
||
],
|
||
"aaSorting": [[ 1, "asc" ]],
|
||
"bPaginate": false
|
||
}));
|
||
/* Inline edit/delete links */
|
||
$("td").click(function(event){
|
||
var $tgt = $(event.target);
|
||
var row = $(this).parent();
|
||
$(".linktools").hide();
|
||
$("tr").removeClass("selected");
|
||
row.addClass("selected");
|
||
if($tgt.is("a")||$tgt.is(":nth-child(6)")||$tgt.is(":nth-child(7)")){
|
||
//Don't show inline links for cells containing links of their own.
|
||
} else {
|
||
var position = $(this).offset();
|
||
var top = position.top+5;
|
||
var left = position.left+5;
|
||
$(".linktools",row).show().css("position","absolute").css("top",top).css("left",left);
|
||
}
|
||
});
|
||
});
|
||
</script>
|
||
[% INCLUDE 'z3950_search.inc' %]
|
||
[% Asset.js("js/z3950_search.js") | $raw %]
|
||
[% END %]
|
||
|
||
[% INCLUDE 'intranet-bottom.inc' %]
|