function agreement_user_update in Agreement 8.2
Same name and namespace in other branches
- 7.2 agreement.module \agreement_user_update()
- 3.0.x agreement.module \agreement_user_update()
Implements hook_user_update().
File
- ./
agreement.module, line 17 - Agreement module code - agreement.module.
Code
function agreement_user_update(EntityInterface $account) {
/** @var \Drupal\user\Entity\User $account */
if ($account
->getEntityTypeId() === 'user') {
$current_user = \Drupal::currentUser();
$agreements = \Drupal::entityTypeManager()
->getStorage('agreement')
->loadMultiple();
/** @var \Drupal\agreement\Entity\Agreement $agreement */
foreach ($agreements as $agreement) {
// Do not require user to re-accept agreement if they've just changed
// their password.
$settings = $agreement
->getSettings();
if ($settings['frequency'] === 0 && isset($account->original) && $account
->checkExistingPassword($account->original) && $current_user
->id() === $account
->id()) {
\Drupal::service('agreement.handler')
->agree($account, $agreement, 2);
}
}
}
}