Bug 9811: Remove useless orderby management
[koha_fer] / opac / opac-authorities-home.pl
index 5656228..5a674ce 100755 (executable)
@@ -22,6 +22,7 @@ use strict;
 use warnings;
 
 use CGI;
+
 use C4::Auth;
 
 use C4::Context;
@@ -29,6 +30,7 @@ use C4::Auth;
 use C4::Output;
 use C4::AuthoritiesMarc;
 use C4::Koha;    # XXX subfield_is_koha_internal_p
+use C4::Search::History;
 
 my $query        = new CGI;
 my $op           = $query->param('op') || '';
@@ -90,7 +92,13 @@ if ( $op eq "do_search" ) {
         $displaynext = 1;
     }
 
-    my @field_data = ( { term => "marclist" , val => $query->param("marclist") || ''} );
+    my @field_data = (
+        { term => "marclist",  val => $marclist[0] },
+        { term => "and_or",    val => $and_or[0] },
+        { term => "excluding", val => $excluding[0] },
+        { term => "operator",  val => $operator[0] },
+        { term => "value",     val => $value[0] },
+    );
 
     my @numbers = ();
 
@@ -123,6 +131,37 @@ if ( $op eq "do_search" ) {
         my @usedauths = grep { $_->{used} > 0 } @$results;
         $results = \@usedauths;
     }
+
+    # Opac search history
+    if (C4::Context->preference('EnableOpacSearchHistory')) {
+        unless ( $startfrom ) {
+            my $path_info = $query->url(-path_info=>1);
+            my $query_cgi_history = $query->url(-query=>1);
+            $query_cgi_history =~ s/^$path_info\?//;
+            $query_cgi_history =~ s/;/&/g;
+
+            unless ( $loggedinuser ) {
+                my $new_search = C4::Search::History::add_to_session({
+                        cgi => $query,
+                        query_desc => $value[0],
+                        query_cgi => $query_cgi_history,
+                        total => $total,
+                        type => "authority",
+                });
+            } else {
+                # To the session (the user is logged in)
+                C4::Search::History::add({
+                    userid => $loggedinuser,
+                    sessionid => $query->cookie("CGISESSID"),
+                    query_desc => $value[0],
+                    query_cgi => $query_cgi_history,
+                    total => $total,
+                    type => "authority",
+                });
+            }
+        }
+    }
+
     $template->param( result => $results ) if $results;
     $template->param( FIELDS => \@fields );
     $template->param( orderby => $orderby );