¿Cómo puedo restablecer mediante programación la contraseña de un usuario?

11

Tengo una aplicación móvil nativa que se comunica con mi sitio de drupal 7 a través del módulo de servicios. Me gustaría dar a los usuarios la posibilidad de restablecer su contraseña desde la aplicación. ¿Hay alguna manera de iniciar este proceso mediante programación, por lo que se genera un correo electrónico con un token de uso único que caduca en 24 horas?

Gracias

lkiss80
fuente

Respuestas:

21

Puede usar la _user_mail_notify()función, junto con un objeto de usuario, para invocar el correo electrónico de restablecimiento de contraseña:

// 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);

De forma predeterminada, se incluye una URL de inicio de sesión única con una caducidad de 24 horas con ese correo electrónico en particular.

Clive
fuente
Lo siento. No he probado esto todavía. La función para la que lo iba a usar se retrasó una versión, así que haré esto en algún momento de este mes. Me imagino que funcionará, ya que parece muy sencillo. Gracias.
lkiss80