2 changed files with 514 additions and 0 deletions
@ -0,0 +1,246 @@ |
|||
<html> |
|||
<head> |
|||
<title>KOHA:INTRANET : Biblio Search</title> |
|||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
|||
|
|||
<script language="JavaScript" type="text/javascript"> |
|||
function Help() { |
|||
newin=window.open("/cgi-bin/koha/help.pl","Koha Help",'width=600,height=600,toolbar=false,scrollbars=yes'); |
|||
} |
|||
|
|||
</script> |
|||
|
|||
<link rel="stylesheet" type="text/css" href="<!-- TMPL_VAR name="themelang" -->/includes/common-style.css"> |
|||
<style type="text/css"> |
|||
.catalogue { |
|||
background-color:#ad11ad; |
|||
color:#FFFFFF; |
|||
background-image:none; |
|||
text-decoration: normal; |
|||
} |
|||
a.catalogue:hover { |
|||
background-color: #ad11ad; |
|||
color: #FFFFFF; |
|||
text-decoration: none; |
|||
} |
|||
|
|||
</style> |
|||
</head> |
|||
|
|||
<body> |
|||
<script> |
|||
function report(value2report) { |
|||
if (document.f_pop.result.value.length==0) { |
|||
document.f_pop.result.value = value2report; |
|||
} else { |
|||
document.f_pop.result.value = document.f_pop.result.value+'|'+value2report; |
|||
} |
|||
return true; |
|||
} |
|||
</script> |
|||
<script> |
|||
function finish() { |
|||
opener.document.f.field_value[<!-- TMPL_VAR name="index" -->].value= document.f_pop.result.value; |
|||
self.close(); |
|||
return false; |
|||
} |
|||
</script> |
|||
<!-- MENUS --> |
|||
<!-- TMPL_IF NAME="loggedinusername" --> |
|||
<p align="left">Logged in as: <!-- TMPL_VAR NAME="loggedinusername" --> [<a href="/cgi-bin/koha/mainpage.pl?logout.x=1">Log Out</a>]</p> |
|||
<!-- TMPL_ELSE --> |
|||
<p align="left"><a href="/cgi-bin/koha/opac-user.pl">Log In</a> to Koha</p> |
|||
<!-- /TMPL_IF --></head> |
|||
<div id="mainbloc"> |
|||
<h1 class="catalogue" >KOHA : INTRANET : Catalogue </h1> |
|||
<!--TMPL_IF Name = "Search"--> |
|||
<div id="bloc25"> |
|||
<h2 class="catalogue" > Search On </h2> |
|||
<form name="f" method="post" action="/cgi-bin/koha/plugin_launcher.pl?plugin_name=unimarc_field_4XX.pl"> |
|||
|
|||
<p> |
|||
<input type="hidden" name="plugin_name" value="unimarc_field_4XX.pl"> |
|||
<input type="hidden" name="index" value="<!--TMPL_VAR Name="index" -->"> |
|||
<input type="hidden" name="result" value="unimarc field 4 <!--TMPL_VAR Name="index" -->"> |
|||
<input type="hidden" name="plugin_name" value="unimarc_field_4XX.pl"> |
|||
<input type="hidden" name="op" value="do_search"> |
|||
<label class="label100" for="keyword">Any word</label> |
|||
<input type="hidden" name="marclist" value=""> |
|||
<input type="hidden" name="and_or" value="and"> |
|||
<input type="hidden" name="excluding" value=""> |
|||
<input type="hidden" name="operator" value="contains"> |
|||
<input type="text" name="value" id="keyword" onchange="sql_update()" size="35"> |
|||
</p> |
|||
<p> |
|||
<label class="label100" for="title">Title</label> |
|||
<input type="hidden" name="marclist" value="biblio.title"> |
|||
<input type="hidden" name="and_or" value="and"> |
|||
<input type="hidden" name="excluding" value=""> |
|||
<input type="hidden" name="operator" value="contains"> |
|||
<input type="text" name="value" id="title" onchange="sql_update()" size="35"> |
|||
</p> |
|||
<p> |
|||
<label class="label100" for="author">Author</label> <input type="hidden" name="marclist" value="biblio.author"> |
|||
<input type="hidden" name="and_or" value="and"> |
|||
<input type="hidden" name="excluding" value=""> |
|||
<input type="hidden" name="operator" value="contains"> |
|||
<input type="text" name="value" id="author" onchange="sql_update()" size="35"> |
|||
</p> |
|||
<p> |
|||
<label class="label100" for="itemtype">Item Type</label> |
|||
<input type="hidden" name="marclist" value="biblioitems.itemtype"> |
|||
<input type="hidden" name="and_or" value="and"> |
|||
<input type="hidden" name="excluding" value=""> |
|||
<input type="hidden" name="operator" value="="> |
|||
<!-- TMPL_VAR name="CGIitemtype" --> |
|||
</p> |
|||
<p> |
|||
<label class="label100" for="branch">Branch</label> |
|||
<input type="hidden" name="marclist" value="items.holdingbranch"> |
|||
<input type="hidden" name="and_or" value="and"> |
|||
<input type="hidden" name="excluding" value=""> |
|||
<input type="hidden" name="operator" value="="> |
|||
<!-- TMPL_VAR name="CGIbranch" --> |
|||
</p> |
|||
<h2 class="catalogue">Other options</h2> |
|||
<p> |
|||
<label class="label100" for="callno">Call Number</label> |
|||
<input type="hidden" name="marclist" value="items.itemcallnumber"> |
|||
<input type="hidden" name="and_or" value="and"> |
|||
<input type="hidden" name="excluding" value=""> |
|||
<input type="hidden" name="operator" value="start"> |
|||
<input type="text" name="value" id="callno" onchange="sql_update()"> |
|||
</p> |
|||
<p> |
|||
<label class="label100" for="isbn">ISBN</label> |
|||
<input type="hidden" name="marclist" value="biblioitems.isbn"> |
|||
<input type="hidden" name="and_or" value="and"> |
|||
<input type="hidden" name="excluding" value=""> |
|||
<input type="hidden" name="operator" value="="> |
|||
<input type="text" name="value" id="isbn" onchange="sql_update()"> |
|||
</p> |
|||
<p> |
|||
<label class="label100" for="publisher">Publisher</label> |
|||
<input type="hidden" name="marclist" value="biblioitems.publishercode"> |
|||
<input type="hidden" name="and_or" value="and"> |
|||
<input type="hidden" name="excluding" value=""> |
|||
<input type="hidden" name="operator" value="contains"> |
|||
<input type="text" name="value" id="publisher" onchange="sql_update()"> |
|||
|
|||
</p> |
|||
</div> |
|||
<div class="bloc25"> |
|||
<p><textarea name="sql" rows="3" cols="70" disabled readonly></textarea></p> |
|||
<p>Results per page : |
|||
<select name="resultsperpage" size="1"> |
|||
<option value="20">20</option> |
|||
<option value="50">50</option> |
|||
<option value="100">100</option> |
|||
</select> |
|||
Ordered by |
|||
<select name="orderby" size="1"> |
|||
<option value="biblio.title">Title</option> |
|||
<option value="biblio.author">Author</option> |
|||
<option value="biblioitems.dewey">Dewey</option> |
|||
<option value="biblioitems.publicationyear">Publication Year</option> |
|||
<option value="biblioitems.publishercode">Publisher</option> |
|||
</select> |
|||
<p> |
|||
<p> |
|||
<input type="submit" value="Start search" class="button catalogue"> |
|||
<input type="reset" value="Clear All Fields" class="button catalogue"> |
|||
</p> |
|||
|
|||
<script language="javascript" type="text/javascript"> |
|||
function sql_update() { |
|||
document.f.sql.value=""; |
|||
for (i=0 ; i<document.f.marclist.length ; i++) { |
|||
if (document.f.value[i].value.length>0) { |
|||
document.f.sql.value = document.f.sql.value+ |
|||
document.f.and_or[i].value + ' (' + |
|||
document.f.excluding[i].value + ' ' + |
|||
document.f.marclist[i].value + ' ' + |
|||
document.f.operator[i].value + ' ' + |
|||
'\''+document.f.value[i].value + '\') '; |
|||
} |
|||
} |
|||
} |
|||
</script> |
|||
</div> |
|||
</form> |
|||
|
|||
<!--TMPL_ELSE--> |
|||
<h2 class="catalogue">Search results</h2> |
|||
<div id="resultnumber"> |
|||
<p><!-- TMPL_IF NAME="displayprev" --> <a class="resultnumber" href="/cgi-bin/koha/plugin_launcher.pl?plugin_name=unimarc_field_4XX.pl&index=<!--TMPL_VAR Name="index"-->&startfrom=<!-- TMPL_VAR NAME="startfromprev" -->&<!-- TMPL_LOOP NAME="searchdata" --><!-- TMPL_VAR NAME="term" -->=<!-- TMPL_VAR NAME="val" ESCAPE=URL -->&<!-- /TMPL_LOOP -->resultsperpage=<!-- TMPL_VAR NAME="resultsperpage" -->&type=intranet&op=do_search"><<Previous</a><!-- /TMPL_IF --> |
|||
<!-- TMPL_LOOP NAME="numbers" --><!-- TMPL_IF NAME="highlight" --> <span class="highlight"><!-- TMPL_VAR NAME="number" --></span><!-- TMPL_ELSE --> <a class="resultnumber" href="/cgi-bin/koha/plugin_launcher.pl?plugin_name=unimarc_field_4XX.pl&index=<!--TMPL_VAR Name="index"-->&startfrom=<!-- TMPL_VAR NAME="startfrom" -->&<!-- TMPL_LOOP NAME="searchdata" --><!-- TMPL_VAR NAME="term" -->=<!-- TMPL_VAR NAME="val" ESCAPE=URL -->&<!-- /TMPL_LOOP -->resultsperpage=<!-- TMPL_VAR NAME="resultsperpage" -->&type=intranet&op=do_search"><!-- TMPL_VAR NAME="number" --></a><!-- /TMPL_IF --><!-- /TMPL_LOOP --> <!-- TMPL_IF NAME="displaynext" --><a class="resultnumber" href="/cgi-bin/koha/plugin_launcher.pl?plugin_name=unimarc_field_4XX.pl&index=<!--TMPL_VAR Name="index"-->&startfrom=<!-- TMPL_VAR NAME="startfromnext" -->&<!-- TMPL_LOOP NAME="searchdata" --><!-- TMPL_VAR NAME="term" -->=<!-- TMPL_VAR NAME="val" ESCAPE=URL -->&<!-- /TMPL_LOOP -->&resultsperpage=<!-- TMPL_VAR NAME="resultsperpage" -->&type=intranet&op=do_search">Next>></a><!-- /TMPL_IF --></p> |
|||
<p class="resultcount"><!-- TMPL_IF NAME="total" -->Results <!-- TMPL_VAR NAME="from" --> to <!-- TMPL_VAR NAME="to" --> of <!-- TMPL_VAR NAME="total" --><!-- TMPL_ELSE -->No results found.<!-- /TMPL_IF --></p></div> |
|||
<div id="resultlist"> |
|||
<table> |
|||
<tr> |
|||
<th class="catalogue">Summary</th> |
|||
<th class="catalogue">Item Count</th> |
|||
<th class="catalogue">Location</th> |
|||
<th class="catalogue"> </th> |
|||
</tr> |
|||
<!-- TMPL_LOOP NAME="result" --> |
|||
<tr> |
|||
<td<!-- TMPL_IF NAME="even" --> class="hilighted"<!-- /TMPL_IF -->> |
|||
<!-- TMPL_IF name="MARC_ON" --> |
|||
<a class="transparent resultlist" href="/cgi-bin/koha/MARCdetail.pl?bib=<!-- TMPL_VAR NAME="biblionumber" ESCAPE="URL" -->"><!-- TMPL_VAR NAME="title" --></a> |
|||
<!-- TMPL_ELSE --> |
|||
<a class="transparent resultlist" href="/cgi-bin/koha/detail.pl?bib=<!-- TMPL_VAR NAME="biblionumber" ESCAPE="URL" -->"><!-- TMPL_VAR NAME="title" --></a> <!-- /TMPL_IF --> |
|||
<p><!-- TMPL_VAR NAME="author" --> |
|||
<!-- TMPL_IF NAME="publishercode" -->- <!-- TMPL_VAR NAME="publishercode" --><!-- /TMPL_IF --> |
|||
<!-- TMPL_IF NAME="place" --> ; <!-- TMPL_VAR NAME="place" --><!-- /TMPL_IF --> |
|||
<!-- TMPL_IF NAME="pages" --> - <!-- TMPL_VAR NAME="pages" --><!-- /TMPL_IF --> |
|||
<!-- TMPL_IF NAME="notes" --> : <!-- TMPL_VAR NAME="notes" --><!-- /TMPL_IF --> |
|||
<!-- TMPL_IF NAME="size" --> ; <!-- TMPL_VAR NAME="size" --><!-- /TMPL_IF --> |
|||
</p> |
|||
</td> |
|||
<td align="center" <!-- TMPL_IF NAME="even" --> class="hilighted"<!-- /TMPL_IF -->> |
|||
<!-- TMPL_VAR NAME="totitem" --> |
|||
</td> |
|||
<td <!-- TMPL_IF NAME="even" -->class="hilighted"<!-- /TMPL_IF -->> |
|||
<!-- TMPL_LOOP NAME="CN" --> |
|||
<p> |
|||
<!-- TMPL_VAR NAME="holdingbranch" --> |
|||
<!-- TMPL_IF name="date_due" --> |
|||
On Loan until <!-- TMPL_VAR NAME="date_due" --> |
|||
<!-- TMPL_ELSE --> |
|||
<!-- TMPL_IF NAME="itemcallnumber" --> |
|||
(<!-- TMPL_VAR NAME="itemcallnumber" -->) |
|||
<!-- /TMPL_IF --> |
|||
<!-- /TMPL_IF --> |
|||
<!-- TMPL_IF name="notforloan" --> |
|||
<i>(<!-- TMPL_VAR name="notforloan" -->)</i> |
|||
<!-- /TMPL_IF --> |
|||
</p> |
|||
<!-- /TMPL_LOOP --> |
|||
<!-- TMPL_IF name="onorder" --><p>On order</p><!-- /TMPL_IF --> |
|||
</td> |
|||
<td> |
|||
<a href="javascript:newwin"><img src="<!-- TMPL_VAR NAME="interface" -->/<!-- TMPL_VAR NAME="theme" -->/images/arrow.gif" width="32" hspace="0" vspace="0" border="0"></a> |
|||
</td> |
|||
|
|||
</tr> |
|||
<!-- /TMPL_LOOP --> |
|||
</table> |
|||
</div> |
|||
<div id="resultnumber"> |
|||
<p><!-- TMPL_IF NAME="displayprev" --> <a class="resultnumber" href="/cgi-bin/koha/plugin_launcher.pl?plugin_name=unimarc_field_4XX.pl&index=<!--TMPL_VAR Name="index"-->&startfrom=<!-- TMPL_VAR NAME="startfromprev" -->&<!-- TMPL_LOOP NAME="searchdata" --><!-- TMPL_VAR NAME="term" -->=<!-- TMPL_VAR NAME="val" ESCAPE=URL -->&<!-- /TMPL_LOOP -->resultsperpage=<!-- TMPL_VAR NAME="resultsperpage" -->&type=intranet&op=do_search"><<Previous</a><!-- /TMPL_IF --> |
|||
<!-- TMPL_LOOP NAME="numbers" --><!-- TMPL_IF NAME="highlight" --> <span class="highlight"><!-- TMPL_VAR NAME="number" --></span><!-- TMPL_ELSE --> <a class="resultnumber" href="/cgi-bin/koha/plugin_launcher.pl?plugin_name=unimarc_field_4XX.pl&index=<!--TMPL_VAR Name="index"-->&startfrom=<!-- TMPL_VAR NAME="startfrom" -->&<!-- TMPL_LOOP NAME="searchdata" --><!-- TMPL_VAR NAME="term" -->=<!-- TMPL_VAR NAME="val" ESCAPE=URL -->&<!-- /TMPL_LOOP -->resultsperpage=<!-- TMPL_VAR NAME="resultsperpage" -->&type=intranet&op=do_search"><!-- TMPL_VAR NAME="number" --></a><!-- /TMPL_IF --><!-- /TMPL_LOOP --> <!-- TMPL_IF NAME="displaynext" --><a class="resultnumber" href="/cgi-bin/koha/plugin_launcher.pl?plugin_name=unimarc_field_4XX.pl&index=<!--TMPL_VAR Name="index"-->&startfrom=<!-- TMPL_VAR NAME="startfromnext" -->&<!-- TMPL_LOOP NAME="searchdata" --><!-- TMPL_VAR NAME="term" -->=<!-- TMPL_VAR NAME="val" ESCAPE=URL -->&<!-- /TMPL_LOOP -->&resultsperpage=<!-- TMPL_VAR NAME="resultsperpage" -->&type=intranet&op=do_search">Next>></a><!-- /TMPL_IF --></p> |
|||
</div> |
|||
|
|||
<script language="JavaScript" type="text/javascript"> |
|||
|
|||
function jumpfull(page) |
|||
{ |
|||
window.open(page,'','fullscreen,scrollbars'); |
|||
} |
|||
</script> |
|||
|
|||
<!--/TMPL_IF--> |
|||
</div> |
|||
</body> |
|||
</html> |
@ -0,0 +1,268 @@ |
|||
#!/usr/bin/perl |
|||
|
|||
# Copyright 2000-2002 Katipo Communications |
|||
# |
|||
# This file is part of Koha. |
|||
# |
|||
# Koha is free software; you can redistribute it and/or modify it under the |
|||
# terms of the GNU General Public License as published by the Free Software |
|||
# Foundation; either version 2 of the License, or (at your option) any later |
|||
# version. |
|||
# |
|||
# Koha is distributed in the hope that it will be useful, but WITHOUT ANY |
|||
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR |
|||
# A PARTICULAR PURPOSE. See the GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License along with |
|||
# Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place, |
|||
# Suite 330, Boston, MA 02111-1307 USA |
|||
|
|||
use strict; |
|||
require Exporter; |
|||
use CGI; |
|||
use HTML::Template; |
|||
use C4::Interface::CGI::Output; |
|||
use C4::Context; |
|||
use C4::Search; |
|||
use C4::Auth; |
|||
use C4::Output; |
|||
use C4::Database; |
|||
use C4::Biblio; |
|||
use C4::SearchMarc; |
|||
use C4::Acquisition; |
|||
use C4::Koha; |
|||
|
|||
sub plugin_parameters { |
|||
my ($dbh,$record,$tagslib,$i,$tabloop) = @_; |
|||
return ""; |
|||
} |
|||
|
|||
sub plugin_javascript { |
|||
my ($dbh,$record,$tagslib,$field_number,$tabloop) = @_; |
|||
my $function_name= "4XX".(int(rand(100000))+1); |
|||
my $res=" |
|||
<script> |
|||
function Focus$function_name(subfield_managed) { |
|||
return 1; |
|||
} |
|||
|
|||
function Blur$function_name(subfield_managed) { |
|||
return 1; |
|||
} |
|||
|
|||
function Clic$function_name(i) { |
|||
defaultvalue=document.f.field_value[i].value; |
|||
newin=window.open(\"../plugin_launcher.pl?plugin_name=unimarc_field_4XX.pl&index=\"+i+\"&result=\"+defaultvalue,\"unimarc field 4\"+i+\"\",'width=700,height=700,toolbar=false,scrollbars=yes'); |
|||
|
|||
} |
|||
</script> |
|||
"; |
|||
|
|||
return ($function_name,$res); |
|||
} |
|||
|
|||
sub plugin { |
|||
my ($input) = @_; |
|||
my %env; |
|||
|
|||
|
|||
my $dbh=C4::Context->dbh; |
|||
my $query = new CGI; |
|||
my $op = $query->param('op'); |
|||
my $type=$query->param('type'); |
|||
warn "operation ".$op; |
|||
my $startfrom=$query->param('startfrom'); |
|||
$startfrom=0 if(!defined $startfrom); |
|||
my ($template, $loggedinuser, $cookie); |
|||
my $resultsperpage; |
|||
my $searchdesc; |
|||
|
|||
if ($op eq "do_search") { |
|||
my @marclist = $query->param('marclist'); |
|||
my @and_or = $query->param('and_or'); |
|||
my @excluding = $query->param('excluding'); |
|||
my @operator = $query->param('operator'); |
|||
my @value = $query->param('value'); |
|||
|
|||
for (my $i=0;$i<=$#marclist;$i++) { |
|||
if ($searchdesc) { # don't put the and_or on the 1st search term |
|||
$searchdesc .= $and_or[$i]." ".$excluding[$i]." ".($marclist[$i]?$marclist[$i]:"*")." ".$operator[$i]." ".$value[$i]." " if ($value[$i]); |
|||
} else { |
|||
$searchdesc = $excluding[$i]." ".($marclist[$i]?$marclist[$i]:"*")." ".$operator[$i]." ".$value[$i]." " if ($value[$i]); |
|||
} |
|||
} |
|||
$resultsperpage= $query->param('resultsperpage'); |
|||
$resultsperpage = 19 if(!defined $resultsperpage); |
|||
my $orderby = $query->param('orderby'); |
|||
my $desc_or_asc = $query->param('desc_or_asc'); |
|||
|
|||
# builds tag and subfield arrays |
|||
my @tags; |
|||
foreach my $marc (@marclist) { |
|||
if ($marc) { |
|||
my ($tag,$subfield) = MARCfind_marc_from_kohafield($dbh,$marc,''); |
|||
if ($tag) { |
|||
push @tags,$dbh->quote("$tag$subfield"); |
|||
} else { |
|||
push @tags, $dbh->quote(substr($marc,0,4)); |
|||
} |
|||
} else { |
|||
push @tags, ""; |
|||
} |
|||
} |
|||
|
|||
my ($results,$total) = catalogsearch($dbh, \@tags,\@and_or, |
|||
\@excluding, \@operator, \@value, |
|||
$startfrom*$resultsperpage, $resultsperpage,$orderby, $desc_or_asc); |
|||
warn " biblio count : ".$total; |
|||
warn " biblio count : ".$total; |
|||
|
|||
($template, $loggedinuser, $cookie) |
|||
= get_template_and_user({template_name => "value_builder/unimarc_field_4XX.tmpl", |
|||
query => $query, |
|||
type => 'intranet', |
|||
authnotrequired => 1, |
|||
debug => 1, |
|||
}); |
|||
|
|||
# multi page display gestion |
|||
my $displaynext=0; |
|||
my $displayprev=$startfrom; |
|||
if(($total - (($startfrom+1)*($resultsperpage))) > 0 ){ |
|||
$displaynext = 1; |
|||
} |
|||
|
|||
my @field_data = (); |
|||
|
|||
|
|||
for(my $i = 0 ; $i <= $#marclist ; $i++) |
|||
{ |
|||
push @field_data, { term => "marclist", val=>$marclist[$i] }; |
|||
push @field_data, { term => "and_or", val=>$and_or[$i] }; |
|||
push @field_data, { term => "excluding", val=>$excluding[$i] }; |
|||
push @field_data, { term => "operator", val=>$operator[$i] }; |
|||
push @field_data, { term => "value", val=>$value[$i] }; |
|||
} |
|||
|
|||
my @numbers = (); |
|||
|
|||
if ($total>$resultsperpage) |
|||
{ |
|||
for (my $i=1; $i<$total/$resultsperpage+1; $i++) |
|||
{ |
|||
if ($i<16) |
|||
{ |
|||
my $highlight=0; |
|||
($startfrom==($i-1)) && ($highlight=1); |
|||
push @numbers, { number => $i, |
|||
highlight => $highlight , |
|||
searchdata=> \@field_data, |
|||
startfrom => ($i-1)}; |
|||
} |
|||
} |
|||
} |
|||
|
|||
my $from = $startfrom*$resultsperpage+1; |
|||
my $to; |
|||
|
|||
if($total < (($startfrom+1)*$resultsperpage)) |
|||
{ |
|||
$to = $total; |
|||
} else { |
|||
$to = (($startfrom+1)*$resultsperpage); |
|||
} |
|||
my $defaultview = 'BiblioDefaultView'.C4::Context->preference('BiblioDefaultView'); |
|||
$template->param(result => $results, |
|||
index => $query->param('index')."", |
|||
startfrom=> $startfrom, |
|||
displaynext=> $displaynext, |
|||
displayprev=> $displayprev, |
|||
resultsperpage => $resultsperpage, |
|||
orderby => $orderby, |
|||
startfromnext => $startfrom+1, |
|||
startfromprev => $startfrom-1, |
|||
searchdata=>\@field_data, |
|||
total=>$total, |
|||
from=>$from, |
|||
to=>$to, |
|||
numbers=>\@numbers, |
|||
searchdesc=> $searchdesc, |
|||
$defaultview => 1, |
|||
Search =>0 |
|||
); |
|||
|
|||
} else { |
|||
($template, $loggedinuser, $cookie) |
|||
= get_template_and_user({template_name => "value_builder/unimarc_field_4XX.tmpl", |
|||
query => $query, |
|||
type => "intranet", |
|||
authnotrequired => 1, |
|||
}); |
|||
|
|||
|
|||
my $sth=$dbh->prepare("Select itemtype,description from itemtypes order by description"); |
|||
$sth->execute; |
|||
my @itemtype; |
|||
my %itemtypes; |
|||
push @itemtype, ""; |
|||
$itemtypes{''} = ""; |
|||
while (my ($value,$lib) = $sth->fetchrow_array) { |
|||
push @itemtype, $value; |
|||
$itemtypes{$value}=$lib; |
|||
} |
|||
|
|||
my $CGIitemtype=CGI::scrolling_list( -name => 'value', |
|||
-values => \@itemtype, |
|||
-labels => \%itemtypes, |
|||
-size => 1, |
|||
-multiple => 0 ); |
|||
$sth->finish; |
|||
|
|||
my @branchloop; |
|||
my @select_branch; |
|||
my %select_branches; |
|||
my $branches=getbranches; |
|||
push @select_branch, ""; |
|||
$select_branches{''} = ""; |
|||
foreach my $thisbranch (keys %$branches){ |
|||
push @select_branch, $branches->{$thisbranch}->{'branchcode'}; |
|||
$select_branches{$branches->{$thisbranch}->{'branchcode'}} = $branches->{$thisbranch}->{'branchname'}; |
|||
} |
|||
my $CGIbranch=CGI::scrolling_list( -name => 'value', |
|||
-values => \@select_branch, |
|||
-labels => \%select_branches, |
|||
-size => 1, |
|||
-multiple => 0 ); |
|||
$sth->finish; |
|||
|
|||
my $req = $dbh->prepare("select distinctrow left(publishercode,45) from biblioitems order by publishercode"); |
|||
$req->execute; |
|||
my @select; |
|||
push @select,""; |
|||
while (my ($value) =$req->fetchrow) { |
|||
push @select, $value; |
|||
} |
|||
my $CGIpublisher=CGI::scrolling_list( -name => 'value', |
|||
-id => 'publisher', |
|||
-values => \@select, |
|||
-size => 1, |
|||
-multiple => 0 ); |
|||
|
|||
# my $sth=$dbh->prepare("select description,itemtype from itemtypes order by description"); |
|||
# $sth->execute; |
|||
# while (my ($description,$itemtype) = $sth->fetchrow) { |
|||
# $classlist.="<option value=\"$itemtype\">$description</option>\n"; |
|||
# } |
|||
# $sth->finish; |
|||
|
|||
$template->param(#classlist => $classlist, |
|||
CGIitemtype => $CGIitemtype, |
|||
CGIbranch => $CGIbranch, |
|||
CGIPublisher => $CGIpublisher, |
|||
Search =>1, |
|||
); |
|||
} |
|||
output_html_with_http_headers $query, $cookie, $template->output ; |
|||
} |
|||
|
|||
1; |
Loading…
Reference in new issue