Skip to content

Commit 7b25b16

Browse files
committed
TD-6108 Updating ServiceFilter Logic To Exclude Other Areas
1 parent e8073c7 commit 7b25b16

File tree

1 file changed

+36
-33
lines changed

1 file changed

+36
-33
lines changed

DigitalLearningSolutions.Web/ServiceFilter/RequireProcessAgreementFilter .cs

Lines changed: 36 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -24,47 +24,50 @@ public void OnActionExecuted(ActionExecutedContext context) { }
2424

2525
public void OnActionExecuting(ActionExecutingContext context)
2626
{
27-
if (!(context.Controller is Controller controller))
27+
if (context.HttpContext.Request.Path.ToString().Contains("/LearningPortal/SelfAssessment/"))
2828
{
29-
return;
30-
}
29+
if (!(context.Controller is Controller controller))
30+
{
31+
return;
32+
}
3133

32-
if (!context.ActionArguments.ContainsKey("selfAssessmentId"))
33-
{
34-
return;
35-
}
34+
if (!context.ActionArguments.ContainsKey("selfAssessmentId"))
35+
{
36+
return;
37+
}
3638

37-
var selfAssessmentId = int.Parse(context.ActionArguments["selfAssessmentId"].ToString()!);
38-
var delegateUserId = controller.User.GetUserIdKnownNotNull();
39+
var selfAssessmentId = int.Parse(context.ActionArguments["selfAssessmentId"].ToString()!);
40+
var delegateUserId = controller.User.GetUserIdKnownNotNull();
3941

40-
var selfAssessment = selfAssessmentService.GetSelfAssessmentForCandidateById(delegateUserId, selfAssessmentId);
42+
var selfAssessment = selfAssessmentService.GetSelfAssessmentForCandidateById(delegateUserId, selfAssessmentId);
4143

42-
if (selfAssessment == null)
43-
{
44-
logger.LogWarning(
45-
$"Attempt to access self assessment {selfAssessmentId} by user {delegateUserId}, but no such assessment found"
46-
);
47-
context.Result = new RedirectToActionResult("StatusCode", "LearningSolutions", new { code = 403 });
48-
return;
49-
}
44+
if (selfAssessment == null)
45+
{
46+
logger.LogWarning(
47+
$"Attempt to access self assessment {selfAssessmentId} by user {delegateUserId}, but no such assessment found"
48+
);
49+
context.Result = new RedirectToActionResult("StatusCode", "LearningSolutions", new { code = 403 });
50+
return;
51+
}
5052

51-
var actionName = context.RouteData.Values["action"]?.ToString();
52-
if (actionName == "AgreeSelfAssessmentProcess" || actionName == "ProcessAgreed")
53-
{
54-
return;
55-
}
53+
var actionName = context.RouteData.Values["action"]?.ToString();
54+
if (actionName == "AgreeSelfAssessmentProcess" || actionName == "ProcessAgreed")
55+
{
56+
return;
57+
}
5658

57-
if (!selfAssessment.SelfAssessmentProcessAgreed && selfAssessment.IsSupervised)
58-
{
59-
logger.LogInformation(
60-
$"Redirecting user {delegateUserId} to agree process page for self assessment {selfAssessmentId}"
61-
);
59+
if (!selfAssessment.SelfAssessmentProcessAgreed && selfAssessment.IsSupervised)
60+
{
61+
logger.LogInformation(
62+
$"Redirecting user {delegateUserId} to agree process page for self assessment {selfAssessmentId}"
63+
);
6264

63-
context.Result = new RedirectToActionResult(
64-
"AgreeSelfAssessmentProcess",
65-
"LearningPortal",
66-
new { selfAssessmentId }
67-
);
65+
context.Result = new RedirectToActionResult(
66+
"AgreeSelfAssessmentProcess",
67+
"LearningPortal",
68+
new { selfAssessmentId }
69+
);
70+
}
6871
}
6972
}
7073
}

0 commit comments

Comments
 (0)