diff --git a/catalogue/search.pl b/catalogue/search.pl index 6228389717..c6ba6c52fe 100755 --- a/catalogue/search.pl +++ b/catalogue/search.pl @@ -610,19 +610,20 @@ for (my $i=0;$i<@servers;$i++) { } ## If there's just one result, redirect to the detail page unless doing an index scan - if ($total == 1 && !$scan) { + if ( $total == 1 && !$scan && C4::Context->preference('RedirectToSoleResult') ) { my $biblionumber = $newresults[0]->{biblionumber}; - my $defaultview = C4::Context->preference('IntranetBiblioDefaultView'); - my $views = { C4::Search::enabled_staff_search_views }; - if ($defaultview eq 'isbd' && $views->{can_view_ISBD}) { + my $defaultview = C4::Context->preference('IntranetBiblioDefaultView'); + my $views = {C4::Search::enabled_staff_search_views}; + if ( $defaultview eq 'isbd' && $views->{can_view_ISBD} ) { print $cgi->redirect("/cgi-bin/koha/catalogue/ISBDdetail.pl?biblionumber=$biblionumber&found1=1"); - } elsif ($defaultview eq 'marc' && $views->{can_view_MARC}) { + } elsif ( $defaultview eq 'marc' && $views->{can_view_MARC} ) { print $cgi->redirect("/cgi-bin/koha/catalogue/MARCdetail.pl?biblionumber=$biblionumber&found1=1"); - } elsif ($defaultview eq 'labeled_marc' && $views->{can_view_labeledMARC}) { - print $cgi->redirect("/cgi-bin/koha/catalogue/labeledMARCdetail.pl?biblionumber=$biblionumber&found1=1"); + } elsif ( $defaultview eq 'labeled_marc' && $views->{can_view_labeledMARC} ) { + print $cgi->redirect( + "/cgi-bin/koha/catalogue/labeledMARCdetail.pl?biblionumber=$biblionumber&found1=1"); } else { print $cgi->redirect("/cgi-bin/koha/catalogue/detail.pl?biblionumber=$biblionumber&found1=1"); - } + } exit; } diff --git a/opac/opac-search.pl b/opac/opac-search.pl index 16b69332ff..e255e6fd10 100755 --- a/opac/opac-search.pl +++ b/opac/opac-search.pl @@ -746,16 +746,20 @@ for (my $i=0;$i<@servers;$i++) { } ## If there's just one result, redirect to the detail page - if ($total == 1 && $format ne 'rss' - && $format ne 'opensearchdescription' && $format ne 'atom') { - my $biblionumber=$newresults[0]->{biblionumber}; - if (C4::Context->preference('BiblioDefaultView') eq 'isbd') { + if ( $total == 1 + && $format ne 'rss' + && $format ne 'opensearchdescription' + && $format ne 'atom' + && C4::Context->preference('RedirectToSoleResult') ) + { + my $biblionumber = $newresults[0]->{biblionumber}; + if ( C4::Context->preference('BiblioDefaultView') eq 'isbd' ) { print $cgi->redirect("/cgi-bin/koha/opac-ISBDdetail.pl?biblionumber=$biblionumber"); - } elsif (C4::Context->preference('BiblioDefaultView') eq 'marc') { + } elsif ( C4::Context->preference('BiblioDefaultView') eq 'marc' ) { print $cgi->redirect("/cgi-bin/koha/opac-MARCdetail.pl?biblionumber=$biblionumber"); } else { print $cgi->redirect("/cgi-bin/koha/opac-detail.pl?biblionumber=$biblionumber"); - } + } exit; } if ($hits) {