На сайте имеется компонент тестирования AriQuiz. Во время тестирования на вопросы можно отвечать, или пропускать(чтобы ответить позже). Но есть один существенный недостаток. Нельзя завершить тестирование, пока не закончится время тестирования. После чего выводится результат тестирования. Хотелось бы также выполнять это действие по кнопке "Закончить тест". Скажите пожалуйста, какие параметры нужно передать в кнопке, чтобы это действие сработало? Прилагаю код
$arisI18N = $processPage->getVar('arisI18N');
$option = $processPage->getVar('option');
$ticketId = $processPage->getVar('ticketId');
$questionVersion = $processPage->getVar('questionVersion');
$questionVersionId = $processPage->getVar('questionVersionId');
$questionTime = $processPage->getVar('questionTime');
$quizInfo = $processPage->getVar('quizInfo');
$statistics = $processPage->getVar('statistics');
$questionData = $processPage->getVar('questionData');
$progressPercent = $processPage->getVar('progressPercent');
$completedCount = $processPage->getVar('completedCount');
$totalTime = $processPage->getVar('totalTime');
$hasSplitter = ($questionTime != null && $totalTime != null);
$itemId = $processPage->getVar('Itemid');
$tmpl = JRequest::getString('tmpl', '');
$doc = JFactory::getDocument();
$doc->addScript(JURI::root(true) . '/administrator/components/' . $option . '/js/yui/yahoo-dom-event.js');
$doc->addScript(JURI::root(true) . '/administrator/components/' . $option . '/js/validators.js');
$doc->addScript(JURI::root(true) . '/administrator/components/' . $option . '/js/ari.dom.js');
?>
<form method="post" action="<?php echo JURI::root(true); ?>/index.php<?php if ($itemId): ?>?Itemid=<?php echo $itemId; ?><?php endif; ?>" name="formQue_<?php echo $questionVersionId; ?>" id="formQue_<?php echo $questionVersionId; ?>" style="margin: 5px 5px 5px 5px;">
<h4><?php AriQuizWebHelper::displayDbValue($quizInfo->QuizName); ?></h4>
<div style="text-align: center; width: 100%">
<!-- Question Time -->
<input type="text" size="<?php echo $questionTime != null ? strlen($questionTime) : '1'; ?>" readonly="readonly" style="display: none;" <?php if ($questionTime != null) { ?>class="ariQuizTime<?php if ($questionTime < 31) echo ' ariQuizTimeEnd'; ?>"<?php } ?> id="tbxAriQuizTime_<?php echo $questionVersionId; ?>" value="<?php echo $questionTime != null ? $questionTime : ''; ?>" />
</div>
<?php
if ($hasSplitter) echo ' / ';
?>
<input type="text" size="<?php echo $totalTime != null ? strlen($totalTime) : '1'; ?>" readonly="readonly" style="display: none;" <?php if ($totalTime != null) { ?>class="ariQuizTime<?php if ($totalTime < 31) echo ' ariQuizTimeEnd'; ?>"<?php } ?> id="tbxAriQuizTotalTime_<?php echo $questionVersionId; ?>" value="<?php echo $totalTime != null ? $totalTime : ''; ?>" />
<!-- Question ProgressBar -->
<?php printf(AriQuizWebHelper::getResValue('Label.QuestionInfo'), $statistics->QuestionIndex + 1, $quizInfo->QuestionCount); ?>
<div class="ariQuizProgressWrap" title="<?php echo $completedCount . ' / ' . $quizInfo->QuestionCount; ?>">
<div class="ariQuizProgress" style="width: <?php echo $progressPercent; ?>%;"><?php echo JHTML::image('components/' . $option . '/images/x.gif', '', array('border' => 0, 'width' => 1, 'height' => 7)); ?></div>
</div>
<!-- Question start -->
<div class="ariWrap">
<div class="ariQuizQuestionRight"><?php AriQuizWebHelper::displayDbValue($questionVersion->Question, false); ?></div>
<?php
$path = AriQuizFrontHelper::getQuestionTemplatePath($questionVersion);
if (!empty($path)) require_once($path);
?>
<!-- Question end -->
<input type="submit" class="btn btn-primary" value="Далее" name="ariEvent[save]" disabledAfterSubmit="true" onclick="return aris.validators.alertSummaryValidators.validate();" />
<?php
if ($quizInfo->CanSkip)
{
?>
<input type="submit" class="button" value="<?php AriQuizWebHelper::displayResValue('Label.Skip'); ?>" name="ariEvent[skip]" disabledAfterSubmit="true" />
<input type="submit" class="button" value="Закончить тест" disabledAfterSubmit="true">
<?php
}
?>
</div>
<?php if ($tmpl): ?>
<input type="hidden" name="tmpl" value="<?php echo $tmpl; ?>" />
<?php endif; ?>
<input type="hidden" name="option" value="<?php echo $option; ?>" />
<input type="hidden" name="task" id="task" value="question" />
<input type="hidden" name="ticketId" value="<?php echo $ticketId; ?>" />
<input type="hidden" name="qid" value="<?php echo $questionVersion->QuestionId; ?>" />
<input type="hidden" name="timeOver" id="timeOver" value="false" />
</form>
<script type="text/javascript">
var frm = document.forms['formQue_<?php echo $questionVersionId; ?>'];
frm.onsubmit = function()
{
var frm = document.forms['formQue_<?php echo $questionVersionId; ?>'];
var elements = aris.DOM.getChildElementsByAttribute(frm, 'disabledAfterSubmit');
if (elements)
{
for (var i = 0; i < elements.length; i++)
{
var el = elements[i];
if (typeof(el.disabled) != 'undefined')
{
var cloneEl = el.cloneNode(true);
cloneEl.disabled = true;
el.parentNode.insertBefore(cloneEl, el);
el.style.display = 'none';
}
}
}
}
</script>
<?php
if ($questionTime != null || $totalTime != null)
{
?>
<script type="text/javascript">
var ariQuestionTime = <?php echo is_null($questionTime) ? 'null' : $questionTime; ?>;
var ariTotalTime = <?php echo is_null($totalTime) ? 'null' : $totalTime; ?>;
var ariStartDate = (new Date()).getTime();
var timeUpdateTimer = YAHOO.util.Lang.later(
999,
null,
function()
{
var curDate = (new Date()).getTime();
var subSeconds = Math.round((curDate - ariStartDate) / 1000);
if (ariQuestionTime != null) ariQuestionTime -= subSeconds;
if (ariTotalTime != null) ariTotalTime -= subSeconds;
ariStartDate = curDate;
if ((ariQuestionTime != null && ariQuestionTime <= 0) ||
(ariTotalTime != null && ariTotalTime <= 0))
{
ariQuestionTime = 0;
ariTotalTime = 0;
timeUpdateTimer.cancel();
var frm = document.forms['formQue_<?php echo $questionVersionId; ?>'];
if (frm)
{
var timeOver = YAHOO.util.Dom.get('timeOver');
if (timeOver) timeOver.value = 'true';
frm.submit();
return ;
}
}
if (ariQuestionTime != null)
{
var tbxAriQuizTime = YAHOO.util.Dom.get('tbxAriQuizTime_<?php echo $questionVersionId; ?>');
if (ariQuestionTime < 31) YAHOO.util.Dom.addClass(tbxAriQuizTime, 'ariQuizTimeEnd');
tbxAriQuizTime.value = ariQuestionTime;
}
if (ariTotalTime != null)
{
var tbxAriQuizTotalTime = YAHOO.util.Dom.get('tbxAriQuizTotalTime_<?php echo $questionVersionId; ?>');
if (ariTotalTime < 31) YAHOO.util.Dom.addClass(tbxAriQuizTotalTime, 'ariQuizTimeEnd');
tbxAriQuizTotalTime.value = ariTotalTime;
}
},
null, true);
</script>
<?php
}
?>
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Виртуальный выделенный сервер (VDS) становится отличным выбором
Есть два Инет-провайдеракоторые "отваливаются" с непредсказуемой периодичностью
Как к элементу массива UserName, присвоить данные с input type="text"?
Ребят, приветствуюНа сайте случалась ситуация, что один из пользователей смог обойти проверку и украсть средства
Дан список студентов, необходимо сделать выборку и вывести список студентов которые проживают в общежитии и получают стипендиюКак искать...