You are here

function apply_for_role_approve_apply in Apply for role 7

Same name and namespace in other branches
  1. 5 apply_for_role.module \apply_for_role_approve_apply()
  2. 6 apply_for_role.module \apply_for_role_approve_apply()
  3. 7.2 apply_for_role.module \apply_for_role_approve_apply()

Approve a role application and put the user into the role.

Parameters

$user: A user object.

$rid: A role id.

Return value

A boolean indicating success.

1 call to apply_for_role_approve_apply()
apply_for_role_approve_form_submit in ./apply_for_role.admin.inc

File

./apply_for_role.module, line 511
Allows users to apply for roles.

Code

function apply_for_role_approve_apply($user, $rid) {
  $uid = $user->uid;
  if ($apply = db_query("SELECT * FROM {users_roles_apply} WHERE uid = :uid AND rid = :rid AND approved <> :approved", array(
    ':uid' => $uid,
    ':rid' => $rid,
    ':approved' => APPLY_FOR_ROLE_APPROVED,
  ))
    ->fetchObject()) {
    apply_for_role_add_role($uid, $rid);
    $apply->approve_date = REQUEST_TIME;
    $apply->approved = APPLY_FOR_ROLE_APPROVED;
    drupal_write_record('users_roles_apply', $apply, array(
      'uid',
      'rid',
    ));
    module_invoke_all('apply_for_role', 'approve', $apply);
    return TRUE;
  }
  return FALSE;
}