Como redefinir programaticamente a senha de um usuário

11

Tenho um aplicativo móvel nativo que se comunica com meu site drupal 7 por meio do módulo de serviços. Eu gostaria de dar aos usuários a capacidade de redefinir sua senha no aplicativo. Existe uma maneira de iniciar esse processo programaticamente, para que um email seja gerado com um token de uso único que expire em 24 horas?

obrigado

lkiss80
fonte

Respostas:

21

Você pode usar a _user_mail_notify()função, juntamente com um objeto de usuário, para chamar o email de redefinição de senha:

// Load a user (admin in this case).
$account = user_load(1);

// Invoke the email. It will be queued along with other system mail to be sent during cron
_user_mail_notify('password_reset', $account);

Um URL de login único com validade de 24 horas é incluído por padrão nesse email específico.

Clive
fonte
Desculpe. Ainda não testei isso. O recurso para o qual eu ia usá-lo foi adiado em um lançamento, por isso farei isso ainda este mês. Eu imagino que funcionará, pois parece muito direto. Obrigado.
precisa saber é o seguinte