FYI, I have found some solutions browsing around.
1) I like the idea at
ideas.limesurvey.org/ideatorrent/idea/225 as the review/print ability is needed before submission on certain questionnaires. For now I found
www.limesurvey.org/en/forum/future-featu...e-submitting-answers asking what I want so I guess using {INSERTANS} on a boilerplate at the end is the best solution to date, but that's disappointing as you cannot reuse question text with that method.
2) I have found the solution by editing the common_function bCheckQuestionForAnswer as follows for anyone interested:
/**
* Check if a question was (at least partially) answered in the current session.
*
* @param integer $q - Question id
* @param array $aFieldnamesInfoInv - Inverted fieldnamesInfo
*/
function bCheckQuestionForAnswer($q, $aFieldnamesInfoInv)
{
//echo "TYPE=".$_SESSION['fieldmap'][$aFieldnamesInfoInv[$q][0]]['type']."|";
if(@$_SESSION['fieldmap'][$aFieldnamesInfoInv[$q][0]]['type'] != 'M' && @$_SESSION['fieldmap'][$aFieldnamesInfoInv[$q][0]]['type'] != 'O')
{
// all answers required
$bAnsw = true;
foreach($aFieldnamesInfoInv[$q] as $sField)
{
if(!isset($_SESSION[$sField]) || trim($_SESSION[$sField])=='')
{
$bAnsw = false;
break;
}
}
} elseif (@$_SESSION['fieldmap'][$aFieldnamesInfoInv[$q][0]]['type'] == 'O') {
// list with comment, just list is required
//echo "<PRE>"; print_r($aFieldnamesInfoInv[$q]); echo "</PRE>";
$bAnsw = false;
foreach($aFieldnamesInfoInv[$q] as $sField) {
if(!strstr($sField, 'comment') && isset($_SESSION[$sField]) && trim($_SESSION[$sField])!='') {
$bAnsw = true;
break;
}
}
} else {
// multiple choice, just one answer is required
$bAnsw = false;
foreach($aFieldnamesInfoInv[$q] as $sField)
{
if(isset($_SESSION[$sField]) && trim($_SESSION[$sField])!='')
{
$bAnsw = true;
break;
}
}
}
return $bAnsw;
}
Thanks for the help all, and please let me know if anyone finds an easier way to have a review screen
before submission!
Thanks,
Andrew