@bashy
Hi!
I tried your method:
Accept Invitation:
public function accept($token)
{
// Look up the invite
if (!$invite = Invite::where('token', $token)->first()) {
//if the invite doesn't exist do something more graceful than this
abort(404);
}
// find user
$user = User::where('email', $invite->email)->first();
$reset_token = strtolower(str_random(64));
DB::table('password_resets')->insert([
'email' => $user->email,
'token' => $reset_token,
'created_at' => Carbon::now(),
]);
// delete the invite so it can't be used again
$invite->delete();
//send url on password reset
Mail::to($user->email)->send(new PasswordCreate($reset_token));
// temporary return
return 'Good job! Invite accepted!';
}
My Mail class:
class PasswordCreate extends Mailable
{
use Queueable, SerializesModels;
public $reset_token;
/**
* Create a new message instance.
*
* @return void
*/
public function __construct($reset_token)
{
$this->reset_token = $reset_token;
}
/**
* Build the message.
*
* @return $this
*/
public function build()
{
return $this->from('[email protected]')
->subject('Bchain Shares accout details')
->view('emails.password');
}
}
And view:
<p>Your accound has been created!</p>
<p>Follow the link below to set your password.</p>
<a href="{{ route('password.reset', $reset_token) }}">Click here</a> to set your password!
Everything works good except, that when it return me Password reset form, after enter email + pass+ pass conformation I got "This password reset token is invalid"
Token stored in database:
'token' => `ubqxhqwqtuzbu17dhmfeyq5ne4nhzbc82tba0lugwb7xzjmpm2gddysuvwgjblpt`
Password Reset URL from Email:
http://127.0.0.1:8000/password/reset/ubqxhqwqtuzbu17dhmfeyq5ne4nhzbc82tba0lugwb7xzjmpm2gddysuvwgjblpt
What's the trick here? I guess it says like this, because token encrypted, but how to send correct url to reset password?