-sub ParseSearchHistorySession {
- my $cgi = shift;
- my $sessionID = $cgi->cookie('CGISESSID');
- return () unless $sessionID;
- my $session = get_session($sessionID);
- return () unless $session and $session->param('search_history');
- my $obj = eval { decode_json(uri_unescape($session->param('search_history'))) };
- return () unless defined $obj;
- return () unless ref $obj eq 'ARRAY';
- return @{ $obj };
-}
-
-sub SetSearchHistorySession {
- my ($cgi, $search_history) = @_;
- my $sessionID = $cgi->cookie('CGISESSID');
- return () unless $sessionID;
- my $session = get_session($sessionID);
- return () unless $session;
- $session->param('search_history', uri_escape(encode_json($search_history)));
-}
-