@@ -, +, @@ --- catalogue/detail.pl | 3 +++ catalogue/search.pl | 8 ++++---- koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt | 7 +++++++ koha-tmpl/intranet-tmpl/prog/js/staff-global.js | 7 +++++++ 4 files changed, 21 insertions(+), 4 deletions(-) --- a/catalogue/detail.pl +++ a/catalogue/detail.pl @@ -21,6 +21,7 @@ use Modern::Perl; use CGI qw ( -utf8 ); use HTML::Entities; use Try::Tiny; +use Encode qw( decode_utf8 ); use C4::Auth; use C4::Context; use C4::Koha; @@ -51,6 +52,8 @@ use Koha::Virtualshelves; use Koha::Plugins; use Koha::SearchEngine::Search; +use URI::Escape; + my $query = CGI->new(); my $analyze = $query->param('analyze'); --- a/catalogue/search.pl +++ a/catalogue/search.pl @@ -557,13 +557,13 @@ for (my $i=0;$i<@servers;$i++) { 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"); + print $cgi->redirect("/cgi-bin/koha/catalogue/ISBDdetail.pl?biblionumber=$biblionumber&found1=1"); } elsif ($defaultview eq 'marc' && $views->{can_view_MARC}) { - print $cgi->redirect("/cgi-bin/koha/catalogue/MARCdetail.pl?biblionumber=$biblionumber"); + 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"); + 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"); + print $cgi->redirect("/cgi-bin/koha/catalogue/detail.pl?biblionumber=$biblionumber&found1=1"); } exit; } --- a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/detail.tt @@ -1305,6 +1305,13 @@ Note that permanent location is a code, and location may be an authval. })); [% END %] }); + + $(document).ready(function() { + var search_index = localStorage.getItem("cat_search_pulldown_selection"); + var search_value = localStorage.getItem("searchbox_value"); + if ( search_index ){ $('.advsearch[name="idx"]').val(search_index)}; + if ( search_value ){ $('#search-form').val(search_value)}; + }); [% END %] [% INCLUDE 'intranet-bottom.inc' %] --- a/koha-tmpl/intranet-tmpl/prog/js/staff-global.js +++ a/koha-tmpl/intranet-tmpl/prog/js/staff-global.js @@ -132,6 +132,7 @@ $.fn.selectTabByID = function (tabID) { /* forms with action leading to search */ $("form[action*='search.pl']").submit(function(){ resetSearchContext(); + saveOrClearSimpleSearchParams(); }); /* any link to launch a search except navigation links */ $("[href*='search.pl?']").not(".nav").not('.searchwithcontext').click(function(){ @@ -324,3 +325,9 @@ function getContextBiblioNumbers() { function resetSearchContext() { setContextBiblioNumbers( new Array() ); } + +function saveOrClearSimpleSearchParams() { + // Simple masthead search - pass value for display on details page + localStorage.setItem('cat_search_pulldown_selection', $("#cat-search-block select.advsearch").val() ); + localStorage.setItem('searchbox_value', $("#cat-search-block #search-form").val() ); +} --