From 51d3f3b603bc3f47e45c4d892db908c693c11e3e Mon Sep 17 00:00:00 2001 From: Retro_Guy Date: Wed, 17 Mar 2021 02:43:31 -0700 Subject: [PATCH] Add snippets to all search results --- Rocksolid_Light/rocksolid/search.php | 32 ++++++++++++++++++---------- 1 file changed, 21 insertions(+), 11 deletions(-) diff --git a/Rocksolid_Light/rocksolid/search.php b/Rocksolid_Light/rocksolid/search.php index 0b9321e..228b51b 100644 --- a/Rocksolid_Light/rocksolid/search.php +++ b/Rocksolid_Light/rocksolid/search.php @@ -37,11 +37,11 @@ echo ''; echo '
'; echo ''; echo ''; - echo ''; + echo ''; echo ''; echo ''; echo ''; - echo ''; echo ''; if($results++ > ($maxdisplay - 2)) break; @@ -295,13 +298,20 @@ function get_body_search($group, $terms) { } function get_header_search($group, $terms) { - GLOBAL $CONFIG, $spooldir; + GLOBAL $CONFIG, $config_name, $spooldir, $snippet_size; $searchterms = "%".$terms."%"; - # Prepare search database - $database = $spooldir.'/articles-overview.db3'; - $table = 'overview'; - $dbh = rslight_db_open($database, $table); - if($dbh) { + if(isset($_POST['group']) && $_POST['searchpoint'] != 'Message-ID') { + $grouplist[0] = $_POST['group']; + } else { + $local_groupfile=$spooldir."/".$config_name."/local_groups.txt"; + $grouplist = file($local_groupfile, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); + } + foreach($grouplist as $thisgroup) { + $name = explode(':', $thisgroup); + $group=$name[0]; + $database = $spooldir.'/'.$group.'-articles.db3'; + $table = 'articles'; + $dbh = article_db_open($database); if(is_multibyte($_POST['terms'])) { $stmt = $dbh->query("SELECT * FROM $table"); while($row = $stmt->fetch()) { @@ -317,8 +327,8 @@ function get_header_search($group, $terms) { $overview[] = $found; } } - $dbh = null; - } + $dbh=null; + } return $overview; }
Search recent messages
(Body searches '.$searching.' - Subject, Poster, Message-ID search entire site)
Searching '.$searching.'
Search Terms: '; + echo 'Search Terms: '; echo '
'; @@ -238,8 +238,11 @@ $results=0; echo '

Posted: '.$newdate.' by: '.create_name_link(mb_decode_mimeheader(mb_decode_mimeheader($poster_name))).'

'; if($_POST['searchpoint'] == 'body') { $snip = strip_tags(mb_decode_mimeheader($overviewline['snippet']), ''); - echo $snip; + } else { + $snip = strip_tags(mb_decode_mimeheader($overviewline['search_snippet']), ''); + $snip = substr($snip, 0, $snippet_size); } + echo $snip; echo '