AfterSurveyQuestionAssessment
From LimeSurvey Manual
Hint: This features is available starting in version 2.63.0
NB: Version 2.60.0 is not the same version as 2.6. 2.6 is the new name for 2.06.
When
This event is fired after the assessement value for a question has been calculated.
Input
The event receives the following information:
Name | Type | Description |
---|---|---|
surveyId | int | surveyId for the assessed survey. |
lang | str | language currently being used. |
gid | int | the id of the current group. |
qid | int | the id of the current question. |
sqid | int | the id of the current subquestion (if any). |
aid | string | answer Id (sqga). |
assessmentValue | int | assessment value calculated by default (if any). |
response | int or string | response given by participant |
Possible output
The following information can be set in the event:
Name | Type | Description |
---|---|---|
assessmentValue | int | The new assessment value, overriding the default one |
Example
One of the use cases could be on open text questions where it could be assessed if a response matches a specific "answer".
public function afterSurveyQuestionAssessment()
{
// Get Event
$event = $this->event;
// Fetch Parameters
$surveyId = $event->get('surveyId');
$lang = $event->get('lang');
$qid = $event->get('qid');
$response = $event->get('response');
if ( strtolower($response) == 'limesurvey')
{
$event->set('assessmentValue', 2);
}
}