phpbb\notification\type\topic::find_users_for_notification PHP Method

find_users_for_notification() public method

Find the users who want to receive notifications
public find_users_for_notification ( array $topic, array $options = [] ) : array
$topic array Data from the topic
$options array Options for finding users for notification
return array
    public function find_users_for_notification($topic, $options = array())
    {
        $options = array_merge(array('ignore_users' => array()), $options);
        $users = array();
        $sql = 'SELECT user_id
			FROM ' . FORUMS_WATCH_TABLE . '
			WHERE forum_id = ' . (int) $topic['forum_id'] . '
				AND notify_status = ' . NOTIFY_YES . '
				AND user_id <> ' . (int) $topic['poster_id'];
        $result = $this->db->sql_query($sql);
        while ($row = $this->db->sql_fetchrow($result)) {
            $users[] = (int) $row['user_id'];
        }
        $this->db->sql_freeresult($result);
        return $this->get_authorised_recipients($users, $topic['forum_id'], $options);
    }