RandomizerHelper
in package
Helper class for randomization operations
Table of Contents
Methods
- applyRandomSorting() : array<string|int, mixed>
- Apply random sorting to items
- applyRandomSortingToSubquestions() : array<string|int, mixed>
- Apply random sorting to subquestions
- extractExcludedSubquestion() : array<string|int, mixed>
- Extract excluded subquestion from the grouped subquestions
- initialize() : void
- Initialize the randomizer with a seed based on survey ID
- applyRandomSortingToAnswers() : array<string|int, mixed>
- Apply random sorting to grouped answers, respecting keep_codes_order.
- applyRandomSortingToSubquestionGroups() : array<string|int, mixed>
- Apply random sorting to grouped subquestions, respecting keep_codes_order.
- getKeepCodes() : array<string|int, string>
- Extract and normalize keep_codes_order for a question.
Methods
applyRandomSorting()
Apply random sorting to items
public
applyRandomSorting(array<string|int, mixed> $groupedItems, Question $question, string $context) : array<string|int, mixed>
Parameters
- $groupedItems : array<string|int, mixed>
- $question : Question
- $context : string
-
'answers' or 'subquestions'
Return values
array<string|int, mixed>applyRandomSortingToSubquestions()
Apply random sorting to subquestions
public
applyRandomSortingToSubquestions(array<string|int, mixed> $groupedSubquestions, Question $question[, null|Survey $survey = null ]) : array<string|int, mixed>
Parameters
Return values
array<string|int, mixed>extractExcludedSubquestion()
Extract excluded subquestion from the grouped subquestions
public
extractExcludedSubquestion(array<string|int, mixed> $groupedSubquestions, string $excludeAllOthers) : array<string|int, mixed>
Parameters
- $groupedSubquestions : array<string|int, mixed>
-
Subquestions grouped by scale_id
- $excludeAllOthers : string
-
The code of the excluded subquestion
Return values
array<string|int, mixed> —[excludedSubquestion, updatedGroupedSubquestions]
initialize()
Initialize the randomizer with a seed based on survey ID
public
initialize(int $surveyId[, Survey|null $survey = null ]) : void
Parameters
- $surveyId : int
-
The survey ID to use for seeding
- $survey : Survey|null = null
-
The survey object to use for seeding
applyRandomSortingToAnswers()
Apply random sorting to grouped answers, respecting keep_codes_order.
private
applyRandomSortingToAnswers(array<string|int, mixed> $groupedItems, array<string|int, string> $keepCodes) : array<string|int, mixed>
Parameters
- $groupedItems : array<string|int, mixed>
- $keepCodes : array<string|int, string>
Return values
array<string|int, mixed>applyRandomSortingToSubquestionGroups()
Apply random sorting to grouped subquestions, respecting keep_codes_order.
private
applyRandomSortingToSubquestionGroups(array<string|int, mixed> $groupedSubquestions, array<string|int, string> $keepCodes) : array<string|int, mixed>
Parameters
- $groupedSubquestions : array<string|int, mixed>
- $keepCodes : array<string|int, string>
Return values
array<string|int, mixed>getKeepCodes()
Extract and normalize keep_codes_order for a question.
private
getKeepCodes(Question $question) : array<string|int, string>
Parameters
- $question : Question