From baf51dd5fd4cf054c9ef27627e345c4a1cb4f520 Mon Sep 17 00:00:00 2001 From: PayBas Date: Sun, 6 Apr 2014 22:05:25 +0200 Subject: [PATCH] [ticket/12366] Add Event core.search_get_posts_data PHPBB3-12366 --- phpBB/search.php | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/phpBB/search.php b/phpBB/search.php index dfb53c6896..2dc65a194d 100644 --- a/phpBB/search.php +++ b/phpBB/search.php @@ -635,11 +635,26 @@ if ($keywords || $author || $author_id || $search_id || $submit) } $db->sql_freeresult($result); - $sql = 'SELECT p.*, f.forum_id, f.forum_name, t.*, u.username, u.username_clean, u.user_sig, u.user_sig_bbcode_uid, u.user_colour - FROM ' . POSTS_TABLE . ' p + $sql_from = POSTS_TABLE . ' p LEFT JOIN ' . TOPICS_TABLE . ' t ON (p.topic_id = t.topic_id) LEFT JOIN ' . FORUMS_TABLE . ' f ON (p.forum_id = f.forum_id) - LEFT JOIN ' . USERS_TABLE . " u ON (p.poster_id = u.user_id) + LEFT JOIN ' . USERS_TABLE . ' u ON (p.poster_id = u.user_id) '; + $sql_select = 'p.*, f.forum_id, f.forum_name, t.*, u.username, u.username_clean, u.user_sig, u.user_sig_bbcode_uid, u.user_colour'; + + /** + * Event to modify the SQL query before the posts data is retrieved + * + * @event core.search_get_posts_data + * @var string sql_select The SQL SELECT string used by search to get posts data + * @var string sql_from The SQL FROM string used by search to get posts data + * @var string sql_where The SQL WHERE string used by search to get posts data + * @since 3.1.0-b3 + */ + $vars = array('sql_select', 'sql_from', 'sql_where'); + extract($phpbb_dispatcher->trigger_event('core.search_get_posts_data', compact($vars))); + + $sql = "SELECT $sql_select + FROM $sql_from WHERE $sql_where"; } else