*/
protected function checkRegistrationAllowed()
{
- if (!setting('registration-enabled')) {
+ if (!setting('registration-enabled') || config('auth.method') === 'ldap') {
throw new UserRegistrationException(trans('auth.registrations_disabled'), '/login');
}
}
{
$this->checkRegistrationAllowed();
$socialDrivers = $this->socialAuthService->getActiveDrivers();
- return view('auth.register', ['socialDrivers' => $socialDrivers]);
+ $samlEnabled = (config('saml2.enabled') === true) && (config('saml2.auto_register') === true);
+ return view('auth.register', [
+ 'socialDrivers' => $socialDrivers,
+ 'samlEnabled' => $samlEnabled,
+ ]);
}
/**
try {
$this->emailConfirmationService->sendConfirmation($newUser);
} catch (Exception $e) {
- session()->flash('error', trans('auth.email_confirm_send_error'));
+ $this->showErrorNotification(trans('auth.email_confirm_send_error'));
}
return redirect('/register/confirm');
}
auth()->login($newUser);
- session()->flash('success', trans('auth.register_success'));
+ $this->showSuccessNotification(trans('auth.register_success'));
return redirect($this->redirectPath());
}
/**
* The callback for social login services.
- * @param $socialDriver
* @param Request $request
+ * @param string $socialDriver
* @return RedirectResponse|Redirector
* @throws SocialSignInException
* @throws UserRegistrationException
* @throws SocialDriverNotConfigured
*/
- public function socialCallback($socialDriver, Request $request)
+ public function socialCallback(Request $request, string $socialDriver)
{
if (!session()->has('social-callback')) {
throw new SocialSignInException(trans('errors.social_no_action_defined'), '/login');