Fix nocaptcha display on login, contact, forgottenpassword and register pages

This commit is contained in:
DariusIII
2018-05-04 13:29:03 +02:00
parent faae421972
commit 8ba86e184a
18 changed files with 40 additions and 27 deletions
@@ -6,6 +6,7 @@ use App\Models\User;
use App\Models\Settings;
use App\Mail\ForgottenPassword;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Mail;
use Illuminate\Foundation\Auth\SendsPasswordResetEmails;
@@ -34,7 +35,7 @@ class ForgotPasswordController extends Controller
$this->middleware('guest');
}
public function showLinkRequestForm()
public function showLinkRequestForm(Request $request)
{
$sent = '';
$email = request()->input('email') ?? '';
@@ -42,6 +43,11 @@ class ForgotPasswordController extends Controller
if (empty($email) && empty($rssToken)) {
app('smarty.view')->assign('error', 'Missing parameter(email and/or apikey to send password reset');
} else {
if (env('NOCAPTCHA_ENABLED') === true && (!empty(env('NOCAPTCHA_SECRET')) && ! empty(env('NOCAPTCHA_SITEKEY')))) {
$this->validate($request, [
'g-recaptcha-response' => 'required|captcha',
]);
}
//
// Check users exists and send an email
//
@@ -58,7 +64,7 @@ class ForgotPasswordController extends Controller
//
// Send the email
//
$resetLink = request()->server('SERVER_NAME').'/forgottenpassword?action=reset&guid='.$guid;
$resetLink = $request->server('SERVER_NAME').'/forgottenpassword?action=reset&guid='.$guid;
Mail::to($ret['email'])->send(new ForgottenPassword($resetLink));
$sent = true;
}