Skip to content

Commit 26e5343

Browse files
committed
Show previous answered question in survey - refs BT#13203
1 parent 467b810 commit 26e5343

File tree

2 files changed

+30
-3
lines changed

2 files changed

+30
-3
lines changed

main/survey/ch_yesno.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ public function render(FormValidator $form, $questionData = array(), $answers =
6262
$name = 'question'.$questionData['question_id'];
6363
$radioAttributes = ['radio-class' => $class, 'label-class' => $class];
6464

65-
if ($questionData['is_required']) {
65+
if (!empty($questionData['is_required'])) {
6666
$radioAttributes['required'] = 'required';
6767
}
6868

@@ -74,7 +74,7 @@ public function render(FormValidator $form, $questionData = array(), $answers =
7474
);
7575

7676
if (!empty($answers)) {
77-
$form->setDefaults([$name => $answers]);
77+
$form->setDefaults([$name => is_array($answers) ? current($answers) : $answers]);
7878
}
7979
}
8080
}

main/survey/fillsurvey.php

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1219,7 +1219,34 @@
12191219
//$form->addHtml('<div class="survey_question_wrapper"><div class="survey_question">');
12201220
$form->addHtml('<h5 class="title">'.$question['sort'].'. '.strip_tags($question['survey_question']).'</h5>');
12211221
//$form->addHtml($question['survey_question']);
1222-
$display->render($form, $question);
1222+
1223+
$userAnswerData = SurveyUtil::get_answers_of_question_by_user($question['survey_id'], $question['question_id']);
1224+
$finalAnswer = null;
1225+
1226+
if (!empty($userAnswerData[$user_id])) {
1227+
$userAnswer = $userAnswerData[$user_id];
1228+
switch ($question['type']) {
1229+
case 'score':
1230+
$finalAnswer = array();
1231+
1232+
foreach ($userAnswer as $userChoice) {
1233+
list($choiceId, $choiceValue) = explode('*', $userChoice);
1234+
1235+
$finalAnswer[$choiceId] = $choiceValue;
1236+
}
1237+
break;
1238+
case 'percentage':
1239+
list($choiceId, $choiceValue) = explode('*', current($userAnswer));
1240+
1241+
$finalAnswer = $choiceId;
1242+
break;
1243+
default:
1244+
$finalAnswer = $userAnswer;
1245+
break;
1246+
}
1247+
}
1248+
1249+
$display->render($form, $question, $finalAnswer);
12231250
$form->addHtml('</div>');
12241251
}
12251252
}

0 commit comments

Comments
 (0)