Skip to content

Commit aae4c63

Browse files
Merge pull request #1049 from TransactionProcessing/copilot/codacy-issue-d9c3f423d4bb9476d626d1e156475960-redu
Reduce cyclomatic complexity of `OnPost` in Ciba/Consent.cshtml.cs
2 parents 76d1501 + 9b72d31 commit aae4c63

1 file changed

Lines changed: 15 additions & 13 deletions

File tree

SecurityService.UserInterface/Pages/Ciba/Consent.cshtml.cs

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -100,19 +100,7 @@ public async Task<IActionResult> OnPost()
100100
return RedirectToPage("/Home/Error/Index");
101101
}
102102

103-
CompleteBackchannelLoginRequest result = null;
104-
105-
// user clicked 'no' - send back the standard 'access_denied' response
106-
if (Input?.Button == "no") {
107-
result = await HandleNoButtonClicked(request);
108-
}
109-
// user clicked 'yes' - validate the data
110-
else if (Input?.Button == "yes") {
111-
result = await HandleYesButtonClicked(request);
112-
}
113-
else {
114-
ModelState.AddModelError("", ConsentOptions.InvalidSelectionErrorMessage);
115-
}
103+
CompleteBackchannelLoginRequest result = await HandleButtonClickAsync(request);
116104

117105
if (result != null) {
118106
// communicate outcome of consent back to identityserver
@@ -125,6 +113,20 @@ public async Task<IActionResult> OnPost()
125113
return Page();
126114
}
127115

116+
private async Task<CompleteBackchannelLoginRequest> HandleButtonClickAsync(BackchannelUserLoginRequest request)
117+
{
118+
switch (Input?.Button)
119+
{
120+
case "no":
121+
return await HandleNoButtonClicked(request);
122+
case "yes":
123+
return await HandleYesButtonClicked(request);
124+
default:
125+
ModelState.AddModelError("", ConsentOptions.InvalidSelectionErrorMessage);
126+
return null;
127+
}
128+
}
129+
128130
private async Task<ViewModel> BuildViewModelAsync(string id, InputModel model = null)
129131
{
130132
var request = await _interaction.GetLoginRequestByInternalIdAsync(id);

0 commit comments

Comments
 (0)