Bristol SU Support Package
CompletionConditionTester.php
Go to the documentation of this file.
1 <?php
2 
3 
5 
6 
11 
16 {
22  private $repository;
23 
28  {
29  $this->repository = $repository;
30  }
31 
40  public function evaluate(ActivityInstance $activityInstance, CompletionConditionInstance $completionConditionInstance): bool
41  {
42  $completionCondition = $this->repository->getByAlias($completionConditionInstance->moduleInstance->alias(), $completionConditionInstance->alias());
43  return $completionCondition->isComplete(
44  $completionConditionInstance->settings(),
45  $activityInstance,
46  $completionConditionInstance->moduleInstance
47  );
48  }
49 
58  public function evaluatePercentage(ActivityInstance $activityInstance, CompletionConditionInstance $completionConditionInstance): int
59  {
60  $completionCondition = $this->repository->getByAlias($completionConditionInstance->moduleInstance->alias(), $completionConditionInstance->alias());
61  return $completionCondition->percentage(
62  $completionConditionInstance->settings(),
63  $activityInstance,
64  $completionConditionInstance->moduleInstance
65  );
66  }
67 }
evaluate(ActivityInstance $activityInstance, CompletionConditionInstance $completionConditionInstance)
__construct(CompletionConditionRepository $repository)
evaluatePercentage(ActivityInstance $activityInstance, CompletionConditionInstance $completionConditionInstance)