+ my $email_conf_path = Blerg::Database::configuration->{data_path} . "/$username/email";
+ my $email;
+ if (!open EMAIL, $email_conf_path) {
+ say '{"status": "success"}';
+ next REQUEST;
+ }
+ $email = <EMAIL>;
+ close EMAIL;
+
+ if ($q->param('email') ne $email) {
+ say '{"status": "success"}';
+ next REQUEST;
+ }
+
+ my $url = generate_reset_url($username, 900);
+ Mail::Message->build(
+ From => Mail::Address->new('BlergBot', 'noreply@blerg.cc'),
+ To => $email,
+ Subject => 'Blërg Password Recovery',
+ Mail::Message::Field->new('Content-Type', 'text/plain', 'charset="utf8"'),
+ data => <<EMAIL
+Here's a 15-minute recovery link to reset your password.
+
+$url
+
+If you didn't request a password reset, please ignore this email.
+
+- Blërg!
+EMAIL
+ )->send;
+
+ say '{"status": "success"}';