use HomeOrHoldingBranch to determine if a return is valid or not
[koha.git] / catalogue / search.pl
index 16dbbaa..01dd3fb 100755 (executable)
@@ -144,7 +144,7 @@ use C4::Context;
 use C4::Output;
 use C4::Auth;
 use C4::Search;
-use C4::Languages; # getAllLanguages
+use C4::Languages qw(getAllLanguages);
 use C4::Koha;
 use POSIX qw(ceil floor);
 use C4::Branch; # GetBranches
@@ -221,7 +221,7 @@ my $itemtypes = GetItemTypes;
 my @itemtypesloop;
 my $selected=1;
 my $cnt;
-my $imgdir = getitemtypeimagesrc();
+my $imgdir = getitemtypeimagesrc('intranet');
 foreach my $thisitemtype ( sort {$itemtypes->{$a}->{'description'} cmp $itemtypes->{$b}->{'description'} } keys %$itemtypes ) {
     my %row =(  number=>$cnt++,
                 imageurl=> $itemtypes->{$thisitemtype}->{'imageurl'}?($imgdir."/".$itemtypes->{$thisitemtype}->{'imageurl'}):"",
@@ -239,9 +239,6 @@ $template->param(itemtypeloop => \@itemtypesloop);
 # my ($ccodecount,@ccode_loop) = GetCcodes();
 # $template->param(ccodeloop=>\@ccode_loop,);
 
-# load the languages ( for switching from one template to another )
-$template->param(languages_loop => getTranslatedLanguages('intranet','prog'));
-
 # The following should only be loaded if we're bringing up the advanced search template
 if ( $template_type eq 'advsearch' ) {
 
@@ -492,6 +489,12 @@ for (my $i=0;$i<@servers;$i++) {
         my $page = $cgi->param('page') || 0;
         my @newresults = searchResults( $query_desc,$hits,$results_per_page,$offset,@{$results_hashref->{$server}->{"RECORDS"}});
         $total = $total + $results_hashref->{$server}->{"hits"};
+        ## If there's just one result, redirect to the detail page
+        if ($total == 1) {         
+            my $biblionumber=@newresults[0]->{biblionumber};
+            print $cgi->redirect("/cgi-bin/koha/catalogue/detail.pl?biblionumber=$biblionumber");
+            exit;
+        }
         if ($hits) {
             $template->param(total => $hits);
             my $limit_cgi_not_availablity = $limit_cgi;