mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-28 06:08:52 +00:00
[ticket/11188] add result count query for author search
PHPBB3-11188
This commit is contained in:
parent
979edc4113
commit
763f2929ba
1 changed files with 33 additions and 1 deletions
|
@ -656,6 +656,8 @@ class phpbb_search_fulltext_postgres extends phpbb_search_base
|
|||
$field = 'topic_id';
|
||||
}
|
||||
|
||||
$this->db->sql_transaction('begin');
|
||||
|
||||
// Only read one block of posts from the db and then cache it
|
||||
$result = $this->db->sql_query_limit($sql, $this->config['search_block_size'], $start);
|
||||
|
||||
|
@ -668,7 +670,35 @@ class phpbb_search_fulltext_postgres extends phpbb_search_base
|
|||
// retrieve the total result count if needed
|
||||
if (!$result_count)
|
||||
{
|
||||
$result_count = sizeof ($id_ary);
|
||||
if ($type == 'posts')
|
||||
{
|
||||
$sql_count = "SELECT COUNT(*) as result_count
|
||||
FROM " . $sql_sort_table . POSTS_TABLE . ' p' . (($firstpost_only) ? ', ' . TOPICS_TABLE . ' t ' : ' ') . "
|
||||
WHERE $sql_author
|
||||
$sql_topic_id
|
||||
$sql_firstpost
|
||||
$m_approve_fid_sql
|
||||
$sql_fora
|
||||
$sql_sort_join
|
||||
$sql_time";
|
||||
}
|
||||
else
|
||||
{
|
||||
$sql_count = "SELECT COUNT(*) as result_count
|
||||
FROM " . $sql_sort_table . TOPICS_TABLE . ' t, ' . POSTS_TABLE . " p
|
||||
WHERE $sql_author
|
||||
$sql_topic_id
|
||||
$sql_firstpost
|
||||
$m_approve_fid_sql
|
||||
$sql_fora
|
||||
AND t.topic_id = p.topic_id
|
||||
$sql_sort_join
|
||||
$sql_time
|
||||
GROUP BY t.topic_id, $sort_by_sql[$sort_key]";
|
||||
}
|
||||
|
||||
$result = $this->db->sql_query($sql_count);
|
||||
$result_count = (int) $this->db->sql_fetchfield('result_count');
|
||||
|
||||
if (!$result_count)
|
||||
{
|
||||
|
@ -676,6 +706,8 @@ class phpbb_search_fulltext_postgres extends phpbb_search_base
|
|||
}
|
||||
}
|
||||
|
||||
$this->db->sql_transaction('commit');
|
||||
|
||||
if (sizeof($id_ary))
|
||||
{
|
||||
$this->save_ids($search_key, '', $author_ary, $result_count, $id_ary, $start, $sort_dir);
|
||||
|
|
Loading…
Add table
Reference in a new issue