46 return "u{$this->userId}::q{$this->questionId}";
61 $this->
saveSessionValue(self::SESSION_SUBINDEX_INSTANT_RESPONSE_ACTIVE, $instantResponseActive);
66 return $this->
readSessionValue(self::SESSION_SUBINDEX_INSTANT_RESPONSE_ACTIVE);
71 $this->
saveSessionValue(self::SESSION_SUBINDEX_PARTICIPANT_SOLUTION, $participantSolution);
81 return count($this->
readSessionValue(self::SESSION_SUBINDEX_REQUESTED_HINTS));
86 $requestedHints = $this->
readSessionValue(self::SESSION_SUBINDEX_REQUESTED_HINTS);
87 return isset($requestedHints[$hintId]);
92 $requestedHints = $this->
readSessionValue(self::SESSION_SUBINDEX_REQUESTED_HINTS);
93 $requestedHints[$hintId] = $hintId;
94 $this->
saveSessionValue(self::SESSION_SUBINDEX_REQUESTED_HINTS, $requestedHints);
124 if(!isset(
$_SESSION[self::SESSION_BASEINDEX]) || !is_array(
$_SESSION[self::SESSION_BASEINDEX]))
138 if(!isset($contextSession[self::SESSION_SUBINDEX_INSTANT_RESPONSE_ACTIVE]))
143 if(!isset($contextSession[self::SESSION_SUBINDEX_PARTICIPANT_SOLUTION]))
148 if(!isset($contextSession[self::SESSION_SUBINDEX_RANDOMIZER_SEED]))
const SESSION_SUBINDEX_REQUESTED_HINTS
const SESSION_SUBINDEX_RANDOMIZER_SEED
ensureSessionStructureExists()
__construct($userId, $questionId)
getParticipantsSolution()
addRequestedHint($hintId)
setParticipantsSolution($participantSolution)
saveSessionValue($subIndex, $value)
const SESSION_SUBINDEX_PARTICIPANT_SOLUTION
const SESSION_SUBINDEX_INSTANT_RESPONSE_ACTIVE
isInstantResponseActive()
readSessionValue($subIndex)
setInstantResponseActive($instantResponseActive)