setSearchType($_GET['type'] ?? 'title') ->setSearchText(trim($_GET['search'] ?? '')); // Searching for posts in a specific thread $ThreadID = (int)($_GET['threadid'] ?? 0); if (!$ThreadID) { $Title = " › “" . display_str($search->searchText()) . "”"; } else { $Title = $search->threadTitle($ThreadID); if (is_null($Title)) { // naughty naughty Error403::error(); } $search->setSearchType('body'); $Title = " › $Title"; $search->setThreadId($ThreadID); } $userSearch = trim($_GET['user'] ?? ''); if (!empty($userSearch)) { $search->setAuthor($userSearch); } $threadCreatedBefore = $_GET['thread_created_before'] ?? ''; if (!empty($threadCreatedBefore)) { if (!Time::isValidDate($threadCreatedBefore)) { Error400::error("Incorrect topic created before date"); } $search->setThreadCreatedBefore($threadCreatedBefore); } $threadCreatedAfter = $_GET['thread_created_after'] ?? ''; if (!empty($threadCreatedAfter)) { if (!Time::isValidDate($threadCreatedAfter)) { Error400::error("Incorrect topic created after date"); } $search->setThreadCreatedAfter($threadCreatedAfter); } if ($search->isBodySearch()) { $postCreatedBefore = $_GET['post_created_before'] ?? ''; if (!empty($postCreatedBefore)) { if (!Time::isValidDate($postCreatedBefore)) { Error400::error("Incorrect post created before date"); } $search->setPostCreatedBefore($postCreatedBefore); } $postCreatedAfter = $_GET['post_created_after'] ?? ''; if (!empty($postCreatedAfter)) { if (!Time::isValidDate($postCreatedAfter)) { Error400::error("Incorrect post created after date"); } $search->setPostCreatedAfter($postCreatedAfter); } } // Has the user checked individual forums? if (isset($_GET['forums']) && is_array($_GET['forums'])) { $search->setForumList($_GET['forums']); } $paginator = new Util\Paginator(POSTS_PER_PAGE, (int)($_GET['page'] ?? 1)); $paginator->setTotal($search->totalHits()); View::show_header('Forums › Search', ['js' => 'bbcode,forum_search']); ?>
| Forum | =((!empty($ThreadID)) ? 'Post begins' : 'Topic')?> | Topic creation time | Last post time |
| Nothing found= !empty($_GET['user']) ? ' (unknown username)' : '' ?>! | |||
| =$ForumName?> | = shortenString($Title, 80) ?> =shortenString($Title, 80); ?> isBodySearch()) { ?> (Show) "> | =time_diff($ThreadCreatedTime)?> | =time_diff($LastTime)?> |