PluginProbe ʕ •ᴥ•ʔ
Tutor LMS – eLearning and online course solution / 4.0.5
Tutor LMS – eLearning and online course solution v4.0.5
4.0.7 4.0.6 4.0.5 4.0.4 4.0.3 4.0.2 4.0.1 4.0.0 3.9.15 3.9.14 3.9.13 3.9.12 3.9.11 trunk 1.0.0 1.0.0-alpha 1.0.1 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.1.0 1.1.1 1.2.0 1.2.1 1.2.11 1.2.12 1.2.13 1.2.20 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.4.8 1.4.9 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.6.9 1.7.0 1.7.1 1.7.2 1.7.3 1.7.4 1.7.5 1.7.6 1.7.7 1.7.8 1.7.9 1.8.0 1.8.1 1.8.10 1.8.2 1.8.3 1.8.4 1.8.5 1.8.6 1.8.7 1.8.8 1.8.9 1.9.0 1.9.1 1.9.10 1.9.11 1.9.12 1.9.13 1.9.14 1.9.15 1.9.16 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0.0 2.0.1 2.0.10 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8 2.0.9 2.1.0 2.1.1 2.1.10 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.3.0 2.4.0 2.5.0 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 2.7.7 3.0.0 3.0.1 3.0.2 3.1.0 3.2.0 3.2.1 3.2.2 3.2.3 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.6.0 3.6.1 3.6.2 3.6.3 3.6.4 3.7.0 3.7.1 3.7.2 3.7.3 3.7.4 3.8.0 3.8.1 3.8.2 3.8.3 3.9.0 3.9.1 3.9.10 3.9.2 3.9.3 3.9.4 3.9.5 3.9.6 3.9.7 3.9.8 3.9.9
tutor / templates / shared / components / quiz / attempt-details / questions / multiple-choice.php
tutor / templates / shared / components / quiz / attempt-details / questions Last commit date
fill-in-the-blank.php 1 week ago multiple-choice.php 1 week ago open-ended.php 1 month ago review-answer-dnd.php 1 week ago true-false.php 1 week ago
multiple-choice.php
75 lines
1 <?php
2 /**
3 * Attempt details Multiple Choice/Single Choice (read-only).
4 *
5 * @package Tutor\Templates
6 * @subpackage LearningArea\Quiz\AttemptDetails
7 * @since 4.0.0
8 */
9
10 defined( 'ABSPATH' ) || exit;
11
12 use TUTOR\Quiz;
13 use Tutor\Models\QuizModel;
14
15 if ( ! isset( $question ) || ! is_object( $question ) ) {
16 return;
17 }
18
19 $question_settings = maybe_unserialize( $question->question_settings );
20 $question_settings = is_array( $question_settings ) ? $question_settings : array();
21 $question_answers = QuizModel::get_answers_by_quiz_question( (int) $question->question_id );
22 $question_answers = is_array( $question_answers ) ? $question_answers : array();
23 $has_multiple_correct_answer = isset( $question_settings['has_multiple_correct_answer'] ) && '1' === (string) $question_settings['has_multiple_correct_answer'];
24
25 $given_ids = array();
26 if ( isset( $question->given_answer ) ) {
27 $given_value = maybe_unserialize( $question->given_answer );
28 $given_ids = is_array( $given_value ) ? array_values( $given_value ) : array( $given_value );
29 }
30 $given_ids = array_map( 'intval', array_filter( $given_ids ) );
31 ?>
32
33 <div class="tutor-quiz-question-options">
34 <?php foreach ( $question_answers as $index => $answer ) : ?>
35 <?php
36 $is_selected = in_array( (int) $answer->answer_id, $given_ids, true );
37 $is_correct = (bool) ( $answer->is_correct ?? false );
38 $option_attr = '';
39 if ( $is_selected && $is_correct ) {
40 $option_attr = 'correct';
41 } elseif ( $is_selected && ! $is_correct ) {
42 $option_attr = 'incorrect';
43 } elseif ( ! $is_selected && $is_correct ) {
44 $option_attr = 'correct';
45 }
46 ?>
47 <div class="tutor-quiz-question-option" data-option="<?php echo esc_attr( $option_attr ); ?>" data-readonly="true">
48 <?php if ( ! empty( $answer->image_id ) ) : ?>
49 <img
50 src="<?php echo esc_url( wp_get_attachment_image_url( $answer->image_id, 'full' ) ); ?>"
51 alt="<?php echo esc_attr( Quiz::sanitize_quiz_content( $answer->answer_title ?? '' ) ); ?>"
52 >
53 <div data-title>
54 <?php echo esc_html( Quiz::sanitize_quiz_content( $answer->answer_title ?? '' ) ); ?>
55 </div>
56 <?php else : ?>
57 <div class="tutor-input-field">
58 <div class="tutor-input-wrapper">
59 <input
60 type="<?php echo esc_attr( $has_multiple_correct_answer ? 'checkbox' : 'radio' ); ?>"
61 class="<?php echo esc_attr( $has_multiple_correct_answer ? 'tutor-checkbox' : 'tutor-radio' ); ?>"
62 id="<?php echo esc_attr( 'attempt-review-' . $question->question_id . '-' . $index ); ?>"
63 <?php checked( $is_selected ); ?>
64 disabled
65 >
66 <label class="tutor-label" for="<?php echo esc_attr( 'attempt-review-' . $question->question_id . '-' . $index ); ?>">
67 <?php echo esc_html( Quiz::sanitize_quiz_content( $answer->answer_title ?? '' ) ); ?>
68 </label>
69 </div>
70 </div>
71 <?php endif; ?>
72 </div>
73 <?php endforeach; ?>
74 </div>
75