LimeSurvey API - Master branch

QuestionOrderingService
in package

Question Ordering Service

Service class for handling the ordering of subquestions, and answer options.

Table of Contents

Properties

$randomizerHelper  : RandomizerHelper
$sortingStrategy  : SortingStrategy

Methods

__construct()  : mixed
Constructor
getOrderedAnswers()  : array<string|int, mixed>
Get ordered answers for a question
getOrderedSubQuestions()  : array<string|int, mixed>
Get ordered subquestions for a question
applyAlphabeticalSorting()  : array<string|int, mixed>
Apply alphabetical sorting to items
applyDefaultSorting()  : array<string|int, mixed>
Apply default sorting by item's own sort order
applySorting()  : array<string|int, mixed>
Apply sorting to items (answers or subquestions) based on specified strategy

Properties

Methods

getOrderedAnswers()

Get ordered answers for a question

public getOrderedAnswers(Question $question[, int|null $scaleId = null ][, string|null $language = null ]) : array<string|int, mixed>
Parameters
$question : Question

The question model

$scaleId : int|null = null

Optional scale ID filter

$language : string|null = null

Language for sorting

Return values
array<string|int, mixed>

Ordered answers

getOrderedSubQuestions()

Get ordered subquestions for a question

public getOrderedSubQuestions(Question $question[, int|null $scaleId = null ][, string|null $language = null ]) : array<string|int, mixed>
Parameters
$question : Question

The question model

$scaleId : int|null = null

Optional scale ID filter

$language : string|null = null

Language for sorting

Return values
array<string|int, mixed>

Ordered subquestions

applyAlphabeticalSorting()

Apply alphabetical sorting to items

private applyAlphabeticalSorting(array<string|int, mixed> $groupedItems, Question $question, string $context[, string|null $language = null ]) : array<string|int, mixed>
Parameters
$groupedItems : array<string|int, mixed>
$question : Question
$context : string

'answers' or 'subquestions'

$language : string|null = null
Return values
array<string|int, mixed>

applyDefaultSorting()

Apply default sorting by item's own sort order

private applyDefaultSorting(array<string|int, mixed> $groupedItems, string $context) : array<string|int, mixed>
Parameters
$groupedItems : array<string|int, mixed>
$context : string

'answers' or 'subquestions'

Return values
array<string|int, mixed>

applySorting()

Apply sorting to items (answers or subquestions) based on specified strategy

private applySorting(array<string|int, mixed> $groupedItems, Question $question, string $context, string $sortStrategy[, string|null $language = null ]) : array<string|int, mixed>
Parameters
$groupedItems : array<string|int, mixed>

Items grouped by scale_id

$question : Question

The question model

$context : string

'answers' or 'subquestions'

$sortStrategy : string

'random', 'alphabetical', or 'normal'

$language : string|null = null

Language for alphabetical sorting

Return values
array<string|int, mixed>

Sorted items


        
On this page

Search results