ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation Class Reference
+ Collaboration diagram for ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation:

Public Member Functions

 __construct (ilTestRandomQuestionSetSourcePoolDefinition $sourcePoolDefinition)
 ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCheck constructor. More...
 
 getSourcePoolDefinition ()
 
 getIntersectionQuantitySharingDefinitionList ()
 
 setIntersectionQuantitySharingDefinitionList ($intersectionQuantitySharingDefinitionList)
 
 getOverallQuestionAmount ()
 
 setOverallQuestionAmount ($overallQuestionAmount)
 
 getExclusiveQuestionAmount ()
 
 setExclusiveQuestionAmount ($exclusiveQuestionAmount)
 
 getAvailableSharedQuestionAmount ()
 
 setAvailableSharedQuestionAmount ($availableSharedQuestionAmount)
 
 isRequiredAmountGuaranteedAvailable ()
 
 getDistributionReport (ilLanguage $lng)
 

Protected Member Functions

 getReservedSharedQuestionAmount ()
 
 getRemainingRequiredQuestionAmount ()
 
 isRequiredQuestionAmountSatisfiedByOverallQuestionQuantity ()
 
 isRequiredQuestionAmountSatisfiedByExclusiveQuestionQuantity ()
 
 isRemainingRequiredQuestionAmountSatisfiedBySharedQuestionQuantity ()
 
 sourcePoolDefinitionIntersectionsExist ()
 
 getRuleSatisfactionResultMessage (ilLanguage $lng)
 
 getConcurrentRuleConflictMessage (ilLanguage $lng)
 
 buildIntersectionQuestionSharingDefinitionsString (ilLanguage $lng)
 

Protected Attributes

 $sourcePoolDefinition
 
 $intersectionQuantitySharingDefinitionList
 
 $overallQuestionAmount
 
 $exclusiveQuestionAmount
 
 $availableSharedQuestionAmount
 

Detailed Description

Constructor & Destructor Documentation

◆ __construct()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::__construct ( ilTestRandomQuestionSetSourcePoolDefinition  $sourcePoolDefinition)

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCheck constructor.

Parameters
ilTestRandomQuestionSetSourcePoolDefinition$sourcePoolDefinition

Definition at line 59 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

References $sourcePoolDefinition.

Member Function Documentation

◆ buildIntersectionQuestionSharingDefinitionsString()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::buildIntersectionQuestionSharingDefinitionsString ( ilLanguage  $lng)
protected
Parameters
ilLanguage$lng
Returns
string

Definition at line 271 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

271 : string
272 {
273 $definitionsString = [];
274
275 foreach ($this->getIntersectionQuantitySharingDefinitionList() as $definition) {
276 $definitionsString[] = sprintf(
277 $lng->txt('tst_msg_rand_quest_set_rule_label'),
278 $definition->getSequencePosition()
279 );
280 }
281
282 $definitionsString = '<ul><li>' . implode('</li><li>', $definitionsString) . '</li></ul>';
283 return $definitionsString;
284 }
global $lng
Definition: privfeed.php:31

References $lng, and getIntersectionQuantitySharingDefinitionList().

Referenced by getConcurrentRuleConflictMessage().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getAvailableSharedQuestionAmount()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::getAvailableSharedQuestionAmount ( )

◆ getConcurrentRuleConflictMessage()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::getConcurrentRuleConflictMessage ( ilLanguage  $lng)
protected

Definition at line 248 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

248 : string
249 {
250 $definitionsString = '<br />' . $this->buildIntersectionQuestionSharingDefinitionsString($lng);
251
253 return sprintf(
254 $lng->txt('tst_msg_rand_quest_set_rule_not_satisfied_reserved_shared'),
255 $this->getAvailableSharedQuestionAmount(),
256 $definitionsString
257 );
258 }
259
260 return sprintf(
261 $lng->txt('tst_msg_rand_quest_set_rule_not_satisfied_missing_shared'),
262 $this->getReservedSharedQuestionAmount(),
263 $definitionsString
264 );
265 }

References $lng, buildIntersectionQuestionSharingDefinitionsString(), and isRequiredQuestionAmountSatisfiedByOverallQuestionQuantity().

Referenced by getDistributionReport().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getDistributionReport()

◆ getExclusiveQuestionAmount()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::getExclusiveQuestionAmount ( )

◆ getIntersectionQuantitySharingDefinitionList()

◆ getOverallQuestionAmount()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::getOverallQuestionAmount ( )

◆ getRemainingRequiredQuestionAmount()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::getRemainingRequiredQuestionAmount ( )
protected

◆ getReservedSharedQuestionAmount()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::getReservedSharedQuestionAmount ( )
protected

◆ getRuleSatisfactionResultMessage()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::getRuleSatisfactionResultMessage ( ilLanguage  $lng)
protected

Definition at line 229 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

229 : string
230 {
232 return sprintf(
233 $lng->txt('tst_msg_rand_quest_set_rule_not_satisfied_reserved'),
234 $this->getSourcePoolDefinition()->getSequencePosition(),
235 $this->getSourcePoolDefinition()->getQuestionAmount(),
236 $this->getOverallQuestionAmount()
237 );
238 }
239
240 return sprintf(
241 $lng->txt('tst_msg_rand_quest_set_rule_not_satisfied_missing'),
242 $this->getSourcePoolDefinition()->getSequencePosition(),
243 $this->getSourcePoolDefinition()->getQuestionAmount(),
244 $this->getOverallQuestionAmount()
245 );
246 }

References $lng, and isRequiredQuestionAmountSatisfiedByOverallQuestionQuantity().

Referenced by getDistributionReport().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getSourcePoolDefinition()

◆ isRemainingRequiredQuestionAmountSatisfiedBySharedQuestionQuantity()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::isRemainingRequiredQuestionAmountSatisfiedBySharedQuestionQuantity ( )
protected
Returns
bool

Definition at line 182 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

References $availableSharedQuestionAmount, getAvailableSharedQuestionAmount(), and getRemainingRequiredQuestionAmount().

Referenced by isRequiredAmountGuaranteedAvailable().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isRequiredAmountGuaranteedAvailable()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::isRequiredAmountGuaranteedAvailable ( )

◆ isRequiredQuestionAmountSatisfiedByExclusiveQuestionQuantity()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::isRequiredQuestionAmountSatisfiedByExclusiveQuestionQuantity ( )
protected
Returns
bool

Definition at line 171 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

171 : bool
172 {
173 $requiredQuestionAmount = $this->getSourcePoolDefinition()->getQuestionAmount();
175
176 return $exclusiveQuestionAmount >= $requiredQuestionAmount;
177 }

References $exclusiveQuestionAmount, getExclusiveQuestionAmount(), and getSourcePoolDefinition().

Referenced by isRequiredAmountGuaranteedAvailable().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isRequiredQuestionAmountSatisfiedByOverallQuestionQuantity()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::isRequiredQuestionAmountSatisfiedByOverallQuestionQuantity ( )
protected
Returns
bool

Definition at line 160 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

160 : bool
161 {
162 $requiredQuestionAmount = $this->getSourcePoolDefinition()->getQuestionAmount();
164
165 return $overallQuestionAmount >= $requiredQuestionAmount;
166 }

References $overallQuestionAmount, getOverallQuestionAmount(), and getSourcePoolDefinition().

Referenced by getConcurrentRuleConflictMessage(), and getRuleSatisfactionResultMessage().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setAvailableSharedQuestionAmount()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::setAvailableSharedQuestionAmount (   $availableSharedQuestionAmount)
Parameters
int$availableSharedQuestionAmount

Definition at line 131 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

132 {
133 $this->availableSharedQuestionAmount = $availableSharedQuestionAmount;
134 }

References $availableSharedQuestionAmount.

◆ setExclusiveQuestionAmount()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::setExclusiveQuestionAmount (   $exclusiveQuestionAmount)
Parameters
int$exclusiveQuestionAmount

Definition at line 115 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

116 {
117 $this->exclusiveQuestionAmount = $exclusiveQuestionAmount;
118 }

References $exclusiveQuestionAmount.

◆ setIntersectionQuantitySharingDefinitionList()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::setIntersectionQuantitySharingDefinitionList (   $intersectionQuantitySharingDefinitionList)
Parameters
ilTestRandomQuestionSetSourcePoolDefinitionList$intersectionQuantitySharingDefinitionList

Definition at line 83 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

84 {
85 $this->intersectionQuantitySharingDefinitionList = $intersectionQuantitySharingDefinitionList;
86 }

References $intersectionQuantitySharingDefinitionList.

◆ setOverallQuestionAmount()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::setOverallQuestionAmount (   $overallQuestionAmount)
Parameters
int$overallQuestionAmount

Definition at line 99 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

100 {
101 $this->overallQuestionAmount = $overallQuestionAmount;
102 }

References $overallQuestionAmount.

◆ sourcePoolDefinitionIntersectionsExist()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::sourcePoolDefinitionIntersectionsExist ( )
protected
Returns
bool

Definition at line 193 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

193 : bool
194 {
195 if ($this->getIntersectionQuantitySharingDefinitionList()->getDefinitionCount() > 0) {
196 return true;
197 }
198
199 return false;
200 }

References getIntersectionQuantitySharingDefinitionList().

Referenced by getDistributionReport().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Field Documentation

◆ $availableSharedQuestionAmount

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::$availableSharedQuestionAmount
protected

◆ $exclusiveQuestionAmount

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::$exclusiveQuestionAmount
protected

◆ $intersectionQuantitySharingDefinitionList

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::$intersectionQuantitySharingDefinitionList
protected

◆ $overallQuestionAmount

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::$overallQuestionAmount
protected

◆ $sourcePoolDefinition

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::$sourcePoolDefinition
protected

The documentation for this class was generated from the following file: