@@ -381,11 +381,15 @@ public async Task<IActionResult> ExternalLoginCallback(string returnUrl = null,
381
381
}
382
382
383
383
// If the user does not have an account, then ask the user to create an account.
384
- ViewData [ "ReturnUrl" ] = returnUrl ;
385
- ViewData [ "LoginProvider" ] = info . LoginProvider ;
386
- var email = info . Principal . FindFirstValue ( ClaimTypes . Email ) ;
384
+ if ( _registerConfiguration . Enabled )
385
+ {
386
+ ViewData [ "ReturnUrl" ] = returnUrl ;
387
+ ViewData [ "LoginProvider" ] = info . LoginProvider ;
388
+ var email = info . Principal . FindFirstValue ( ClaimTypes . Email ) ;
387
389
388
- return View ( "ExternalLoginConfirmation" , new ExternalLoginConfirmationViewModel { Email = email } ) ;
390
+ return View ( "ExternalLoginConfirmation" , new ExternalLoginConfirmationViewModel { Email = email } ) ;
391
+ }
392
+ return RedirectToLocal ( returnUrl ) ;
389
393
}
390
394
391
395
[ HttpPost ]
@@ -422,19 +426,22 @@ public async Task<IActionResult> ExternalLoginConfirmation(ExternalLoginConfirma
422
426
Email = model . Email
423
427
} ;
424
428
425
- var result = await _userManager . CreateAsync ( user ) ;
426
- if ( result . Succeeded )
429
+ if ( _registerConfiguration . Enabled )
427
430
{
428
- result = await _userManager . AddLoginAsync ( user , info ) ;
431
+ var result = await _userManager . CreateAsync ( user ) ;
429
432
if ( result . Succeeded )
430
433
{
431
- await _signInManager . SignInAsync ( user , isPersistent : false ) ;
434
+ result = await _userManager . AddLoginAsync ( user , info ) ;
435
+ if ( result . Succeeded )
436
+ {
437
+ await _signInManager . SignInAsync ( user , isPersistent : false ) ;
432
438
433
- return RedirectToLocal ( returnUrl ) ;
439
+ return RedirectToLocal ( returnUrl ) ;
440
+ }
434
441
}
435
- }
436
442
437
- AddErrors ( result ) ;
443
+ AddErrors ( result ) ;
444
+ }
438
445
}
439
446
440
447
ViewData [ "LoginProvider" ] = info . LoginProvider ;
0 commit comments