You are here

function privatemsg_roles_autocomplete in Privatemsg 7.2

Same name and namespace in other branches
  1. 6.2 privatemsg_roles/privatemsg_roles.module \privatemsg_roles_autocomplete()
  2. 7 privatemsg_roles/privatemsg_roles.module \privatemsg_roles_autocomplete()

Provides autocomplete suggestions for roles.

2 string references to 'privatemsg_roles_autocomplete'
hook_privatemsg_recipient_type_info in ./privatemsg.api.php
This hook is used to tell privatemsg about the recipient types defined by a module. Each type consists of an array keyed by the internal recipient type name and the following keys must be defined.
privatemsg_roles_privatemsg_recipient_type_info in privatemsg_roles/privatemsg_roles.module
Implements hook_privatemsg_recipient_type_info().

File

privatemsg_roles/privatemsg_roles.module, line 147
Allows to send messages to all members of a role.

Code

function privatemsg_roles_autocomplete($fragment, $names, $limit, $type) {
  $result = _privatemsg_assemble_query(array(
    'autocomplete_roles',
    'privatemsg_roles',
  ), $fragment, $names)
    ->range(0, $limit)
    ->execute();
  $roles = array();
  foreach ($result as $role) {
    if (user_access('write privatemsg to all roles') || user_access('write privatemsg to role ' . $role->name)) {
      $role->type = 'role';
      $role->recipient = $role->rid;
      $roles[privatemsg_recipient_key($role)] = $role;
    }
  }
  return $roles;
}