1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-06-04 21:44:57 +02:00

[ticket/13592] Allow full override of get_visibility_sql()

PHPBB3-13592
This commit is contained in:
brunoais 2015-02-09 10:44:12 +00:00
parent 8a4df90dac
commit bb7d294190

View File

@ -145,6 +145,7 @@ class content_visibility
{
$where_sql = '';
$get_visibility_sql_overwrite = false;
/**
* Allow changing the result of calling get_visibility_sql
*
@ -153,6 +154,9 @@ class content_visibility
* @var string mode Either "topic" or "post" depending on the query this is being used in
* @var array forum_id The forum id in which the search is made.
* @var string table_alias Table alias to prefix in SQL queries
* @var mixed get_visibility_sql_overwrite If a string, forces the function to return get_forums_visibility_sql_overwrite after executing the event
* If false, get_visibility_sql continues normally
* It must be either boolean or string
* @since 3.1.4-RC1
*/
$vars = array(
@ -160,9 +164,15 @@ class content_visibility
'mode',
'forum_id',
'table_alias',
'get_visibility_sql_overwrite',
);
extract($this->phpbb_dispatcher->trigger_event('core.phpbb_content_get_visibility_sql_visibility_before', compact($vars)));
if ($get_visibility_sql_overwrite !== false)
{
return $get_visibility_sql_overwrite;
}
if ($this->auth->acl_get('m_approve', $forum_id))
{
return $where_sql . '1 = 1';