1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-05-14 11:35:33 +02:00

Merge pull request #5871 from dark-1/ticket/16383

[ticket/16383] Add core events to modify friends list
This commit is contained in:
Marc Alexander 2020-03-02 20:46:50 +01:00
commit adf10ef492
No known key found for this signature in database
GPG Key ID: 50E0D2423696F995

View File

@ -356,6 +356,19 @@ if ($module->is_active('zebra', 'friends'))
'ORDER_BY' => 'u.username_clean ASC', 'ORDER_BY' => 'u.username_clean ASC',
); );
/**
* Event to modify the SQL query before listing of friends
*
* @event core.ucp_modify_friends_sql
* @var array sql_ary SQL query array for listing of friends
*
* @since 3.2.10-RC1
*/
$vars = [
'sql_ary',
];
extract($phpbb_dispatcher->trigger_event('core.ucp_modify_friends_sql', compact($vars)));
$sql = $db->sql_build_query('SELECT_DISTINCT', $sql_ary); $sql = $db->sql_build_query('SELECT_DISTINCT', $sql_ary);
$result = $db->sql_query($sql); $result = $db->sql_query($sql);
@ -363,14 +376,32 @@ if ($module->is_active('zebra', 'friends'))
{ {
$which = (time() - $update_time < $row['online_time'] && ($row['viewonline'] || $auth->acl_get('u_viewonline'))) ? 'online' : 'offline'; $which = (time() - $update_time < $row['online_time'] && ($row['viewonline'] || $auth->acl_get('u_viewonline'))) ? 'online' : 'offline';
$template->assign_block_vars("friends_{$which}", array( $tpl_ary = [
'USER_ID' => $row['user_id'], 'USER_ID' => $row['user_id'],
'U_PROFILE' => get_username_string('profile', $row['user_id'], $row['username'], $row['user_colour']), 'U_PROFILE' => get_username_string('profile', $row['user_id'], $row['username'], $row['user_colour']),
'USER_COLOUR' => get_username_string('colour', $row['user_id'], $row['username'], $row['user_colour']), 'USER_COLOUR' => get_username_string('colour', $row['user_id'], $row['username'], $row['user_colour']),
'USERNAME' => get_username_string('username', $row['user_id'], $row['username'], $row['user_colour']), 'USERNAME' => get_username_string('username', $row['user_id'], $row['username'], $row['user_colour']),
'USERNAME_FULL' => get_username_string('full', $row['user_id'], $row['username'], $row['user_colour'])) 'USERNAME_FULL' => get_username_string('full', $row['user_id'], $row['username'], $row['user_colour'])
); ];
/**
* Event to modify the template before listing of friends
*
* @event core.ucp_modify_friends_template_vars
* @var array row friend user row
* @var array tpl_ary friend template array
* @var string which friend is 'online' or 'offline'
*
* @since 3.2.10-RC1
*/
$vars = [
'row',
'tpl_ary',
'which',
];
extract($phpbb_dispatcher->trigger_event('core.ucp_modify_friends_template_vars', compact($vars)));
$template->assign_block_vars("friends_{$which}", $tpl_ary);
} }
$db->sql_freeresult($result); $db->sql_freeresult($result);
} }