ILIAS  release_8 Revision v8.24
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 57 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

References $sourcePoolDefinition.

Member Function Documentation

◆ buildIntersectionQuestionSharingDefinitionsString()

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

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

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

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 246 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

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

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 227 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

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

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 180 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 169 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

169 : bool
170 {
171 $requiredQuestionAmount = $this->getSourcePoolDefinition()->getQuestionAmount();
173
174 return $exclusiveQuestionAmount >= $requiredQuestionAmount;
175 }

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 158 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

158 : bool
159 {
160 $requiredQuestionAmount = $this->getSourcePoolDefinition()->getQuestionAmount();
162
163 return $overallQuestionAmount >= $requiredQuestionAmount;
164 }

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 129 of file class.ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation.php.

130 {
131 $this->availableSharedQuestionAmount = $availableSharedQuestionAmount;
132 }

References $availableSharedQuestionAmount.

◆ setExclusiveQuestionAmount()

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

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

114 {
115 $this->exclusiveQuestionAmount = $exclusiveQuestionAmount;
116 }

References $exclusiveQuestionAmount.

◆ setIntersectionQuantitySharingDefinitionList()

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

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

82 {
83 $this->intersectionQuantitySharingDefinitionList = $intersectionQuantitySharingDefinitionList;
84 }

References $intersectionQuantitySharingDefinitionList.

◆ setOverallQuestionAmount()

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

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

98 {
99 $this->overallQuestionAmount = $overallQuestionAmount;
100 }

References $overallQuestionAmount.

◆ sourcePoolDefinitionIntersectionsExist()

ilTestRandomQuestionsSrcPoolDefinitionQuantitiesCalculation::sourcePoolDefinitionIntersectionsExist ( )
protected
Returns
bool

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

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

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: