showHistoryTable(); $content = ob_get_contents(); ob_end_clean(); return $content; } public function showHistoryTable() { ?> forms as $form) { /* @var $form WpAdvQuiz_Model_Form */ if ($form->isShowInStatistic()) { echo ''; } } ?> historyModel)) { ?> historyModel as $model) { /* @var $model WpAdvQuiz_Model_StatisticHistory */ ?> getFormOverview() as $form) { echo ''; } ?>
' . $form->getFieldname() . '
getUserName()); ?>
|
' . esc_html($form) . 'getFormatTime()); ?> getFormatCorrect()); ?> getFormatIncorrect()); ?> getSolvedCount()) < 0 ? '---' : sprintf(__('%d of %d', 'wp-adv-quiz'), $model->getSolvedCount(), $model->getCorrectCount() + $model->getIncorrectCount()); ?> getPoints()); ?> getResult()); ?>%
showUserTable(); $content = ob_get_contents(); ob_end_clean(); return $content; } public function showUserTable() { ?>

userName)); ?>

avg) { ?>

statisticModel->getMinCreateTime()); ?> - statisticModel->getMaxCreateTime()); ?>

statisticModel->getCreateTime()); ?>

formTable(); ?> userStatistic as $cat) { $cCorrect = $cIncorrect = $cHintCount = $cPoints = $cGPoints = $cTime = $cSolvedCount = 0; ?> avg && $q['statistcAnswerData'] !== null) { ?>
(hh:mm:ss)
:
avg && $q['statistcAnswerData'] !== null) { echo '' . esc_html($q['questionName']) . ''; } else { echo esc_html($q['questionName']); } ?>
showUserAnswer($q['questionAnswerData'], $q['statistcAnswerData'], $q['answerType']); ?>
$v) { $matrix[$k][] = $k; foreach ($qAnswerData as $k2 => $v2) { if ($k != $k2) { if ($v->getAnswer() == $v2->getAnswer()) { $matrix[$k][] = $k2; } else { if ($v->getSortString() == $v2->getSortString()) { $matrix[$k][] = $k2; } } } } } } ?> _assessmetTemp); return $a === null ? '' : $a; } private function fetchAssessment($answerText, $answerData) { preg_match_all('#\{(.*?)\}#im', $answerText, $matches); $this->_assessmetTemp = array(); $data = array(); for ($i = 0, $ci = count($matches[1]); $i < $ci; $i++) { $match = $matches[1][$i]; preg_match_all('#\[([^\|\]]+)(?:\|(\d+))?\]#im', $match, $ms); $a = ''; $checked = isset($answerData[$i]) ? ((int)$answerData[$i]) - 1 : -1; for ($j = 0, $cj = count($ms[1]); $j < $cj; $j++) { $v = $ms[1][$j]; $a .= ''; } $this->_assessmetTemp[] = $a; } $data['replace'] = preg_replace('#\{(.*?)\}#im', '@@wpAdvQuizAssessment@@', $answerText); return $data; } private $_clozeTemp = array(); private function fetchCloze($answer_text, $answerData) { preg_match_all('#\{(.*?)(?:\|(\d+))?(?:[\s]+)?\}#im', $answer_text, $matches, PREG_SET_ORDER); $data = array(); $index = 0; foreach ($matches as $k => $v) { $text = $v[1]; $points = !empty($v[2]) ? (int)$v[2] : 1; $rowText = $multiTextData = array(); $len = array(); if (preg_match_all('#\[(.*?)\]#im', $text, $multiTextMatches)) { foreach ($multiTextMatches[1] as $multiText) { $x = mb_strtolower(trim(html_entity_decode($multiText, ENT_QUOTES))); $len[] = strlen($x); $multiTextData[] = $x; $rowText[] = $multiText; } } else { $x = mb_strtolower(trim(html_entity_decode($text, ENT_QUOTES))); $len[] = strlen($x); $multiTextData[] = $x; $rowText[] = $text; } $correct = 'wpAdvQuiz_answerIncorrect'; if (isset($answerData[$index]) && in_array($answerData[$index], $rowText)) { $correct = 'wpAdvQuiz_answerCorrect'; } // $a = ' '; // $a .= ''; $a = '' . esc_html(isset($answerData[$index]) ? empty($answerData[$index]) ? '---' : $answerData[$index] : '---') . ' '; $a .= '(' . implode(', ', $rowText) . ')'; $data['correct'][] = $multiTextData; $data['points'][] = $points; $data['data'][] = $a; $index++; } $data['replace'] = preg_replace('#\{(.*?)(?:\|(\d+))?(?:[\s]+)?\}#im', '@@wpAdvQuizCloze@@', $answer_text); return $data; } private function clozeCallback($t) { $a = array_shift($this->_clozeTemp); return $a === null ? '' : $a; } private function formTable() { if ($this->forms === null || $this->statisticModel === null) { return; } $formData = $this->statisticModel->getFormData(); if ($formData === null) { return; } ?>

forms as $form) { /* @var $form WpAdvQuiz_Model_Form */ if (!isset($formData[$form->getFormId()])) { continue; } $str = $formData[$form->getFormId()]; ?>
getFieldname()); ?> getType()) { case WpAdvQuiz_Model_Form::FORM_TYPE_TEXT: case WpAdvQuiz_Model_Form::FORM_TYPE_TEXTAREA: case WpAdvQuiz_Model_Form::FORM_TYPE_EMAIL: case WpAdvQuiz_Model_Form::FORM_TYPE_NUMBER: case WpAdvQuiz_Model_Form::FORM_TYPE_RADIO: case WpAdvQuiz_Model_Form::FORM_TYPE_SELECT: echo esc_html($str); break; case WpAdvQuiz_Model_Form::FORM_TYPE_CHECKBOX: echo esc_attr($str) == '1' ? __('ticked', 'wp-adv-quiz') : __('not ticked', 'wp-adv-quiz'); break; case WpAdvQuiz_Model_Form::FORM_TYPE_YES_NO: echo esc_attr($str) == 1 ? __('Yes') : __('No'); break; case WpAdvQuiz_Model_Form::FORM_TYPE_DATE: echo date_format(date_create($str), get_option('date_format')); break; } ?>
showOverviewTable(); $content = ob_get_contents(); ob_end_clean(); return $content; } public function showOverviewTable() { ?> statisticModel)) { ?> statisticModel as $model) { /** @var WpAdvQuiz_Model_StatisticOverview $model * */ $sum = $model->getCorrectCount() + $model->getIncorrectCount(); if (!$model->getUserId()) { $model->setUserName(__('Anonymous', 'wp-adv-quiz')); } if ($sum) { $points = $model->getPoints(); $correct = $model->getCorrectCount() . ' (' . round(100 * $model->getCorrectCount() / $sum, 2) . '%)'; $incorrect = $model->getIncorrectCount() . ' (' . round(100 * $model->getIncorrectCount() / $sum, 2) . '%)'; $hintCount = $model->getHintCount(); $time = WpAdvQuiz_Helper_Until::convertToTimeString($model->getQuestionTime()); $result = round((100 * $points / $model->getGPoints()), 2) . '%'; } else { $result = $time = $hintCount = $incorrect = $correct = $points = '---'; } ?>
(hh:mm:ss)
getUserName()); ?> getUserName()); } ?>
> |