NotificationTarget::getAddressesByGroup PHP Method

getAddressesByGroup() public method

Get targets for all the users of a group
public getAddressesByGroup ( $manager, $group_id )
$manager 0 all users, 1 only supervisors, 2 all users without supervisors
$group_id id of the group
    function getAddressesByGroup($manager, $group_id)
    {
        global $DB;
        // members/managers of the group allowed on object entity
        // filter group with 'is_assign' (attribute can be unset after notification)
        $query = $this->getDistinctUserSql() . "\n               FROM `glpi_groups_users`\n               INNER JOIN `glpi_users` ON (`glpi_groups_users`.`users_id` = `glpi_users`.`id`) " . $this->getProfileJoinSql() . "\n               INNER JOIN `glpi_groups` ON (`glpi_groups_users`.`groups_id` = `glpi_groups`.`id`)\n               WHERE `glpi_groups_users`.`groups_id` = '{$group_id}'\n                     AND `glpi_groups`.`is_notify`";
        if ($manager == 1) {
            $query .= " AND `glpi_groups_users`.`is_manager` ";
        } else {
            if ($manager == 2) {
                $query .= " AND NOT `glpi_groups_users`.`is_manager` ";
            }
        }
        foreach ($DB->request($query) as $data) {
            $this->addToAddressesList($data);
        }
    }