PluginProbe ʕ •ᴥ•ʔ
Tutor LMS – eLearning and online course solution / 4.0.1
Tutor LMS – eLearning and online course solution v4.0.1
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 / learning-area / quiz / content.php
tutor / templates / learning-area / quiz Last commit date
modals 4 days ago questions 4 days ago attempt-details.php 4 days ago attempt.php 4 days ago content.php 4 days ago nav-item.php 4 days ago progress-bar.php 4 days ago question-header.php 4 days ago question.php 4 days ago
content.php
82 lines
1 <?php
2 /**
3 * Tutor learning area quiz.
4 *
5 * @package Tutor\Templates
6 * @subpackage LearningArea
7 * @author Themeum <support@themeum.com>
8 * @link https://themeum.com
9 * @since 4.0.0
10 */
11
12 defined( 'ABSPATH' ) || exit;
13
14 use Tutor\Helpers\UrlHelper;
15 use TUTOR\Quiz;
16 use TUTOR\Models\QuizModel;
17
18 global $tutor_current_post, $tutor_course_id;
19
20 $quiz = $quiz ?? null;
21 if ( ! $quiz || ! is_a( $quiz, 'WP_Post' ) ) {
22 return;
23 }
24
25 $quiz_id = $quiz->ID;
26 $total_questions = (int) tutor_utils()->total_questions_for_student_by_quiz( $quiz_id );
27 $quiz_options = tutor_utils()->get_quiz_option( $quiz_id );
28 $total_marks = Quiz::get_quiz_total_marks( $quiz_id );
29 $passing_grade = (int) ( $quiz_options['passing_grade'] ?? 0 );
30 $quiz_time = $quiz_options['time_limit'] ?? null;
31 $has_time_limit = is_array( $quiz_time ) && ! empty( $quiz_time['time_value'] ) && (int) $quiz_time['time_value'] > 0;
32 $time_units = Quiz::quiz_time_units();
33 $quiz_item_readable = $has_time_limit ? $quiz_time['time_value'] . ' ' . $time_units[ $quiz_time['time_type'] ] : null;
34 $quiz_attempt = ( new QuizModel() )->get_quiz_attempt( $quiz_id, $user_id ?? get_current_user_id() );
35 $earned_marks = 0;
36
37 if ( $quiz_attempt && $total_marks > 0 ) {
38 $earned_marks = (float) $quiz_attempt->earned_marks;
39 $total = (float) $total_marks;
40 $earned_marks = number_format( ( $earned_marks / $total_marks ) * 100, 2 );
41 }
42 $limit_attempts = (int) $quiz_options['limit_attempts_allowed'] ?? 0;
43 $allowed_attempts = $limit_attempts ? $quiz_options['attempts_allowed'] ?? '' : '1';
44 ?>
45 <div class="tutor-quiz">
46 <?php ob_start(); ?>
47 <div class="tutor-quiz-intro">
48 <div class="tutor-quiz-intro-overview">
49 <!-- Quiz Icon -->
50 <div class="tutor-quiz-intro-icon">
51 <?php tutor_utils()->render_themed_svg( 'images/illustrations/quiz-intro.svg' ); ?>
52 </div>
53
54 <!-- Quiz Title -->
55 <h3 class="tutor-quiz-intro-title">
56 <?php echo esc_html( $quiz->post_title ); ?>
57 </h3>
58
59 <?php if ( $quiz->post_content ) : ?>
60 <!-- Quiz Description -->
61 <p class="tutor-quiz-intro-description">
62 <?php echo wp_kses_post( $quiz->post_content ); ?>
63 </p>
64 <?php endif; ?>
65 </div>
66
67 <!-- Quiz Parameters Table -->
68 <div class="tutor-table-wrapper tutor-table-bordered tutor-table-column-borders tutor-quiz-intro-params tutor-mb-8 tutor-sm-mb-5">
69 <?php
70 Quiz::render_quiz_summary( $total_questions, $quiz_item_readable, $total_marks, $passing_grade, $earned_marks, (int) $allowed_attempts );
71 ?>
72 </div>
73
74 <!-- Past Attempts Section -->
75 <?php Quiz::render_quiz_attempts( $quiz_id ); ?>
76
77 <!-- Action Buttons -->
78 <?php Quiz::render_quiz_actions( $quiz_id ); ?>
79 </div>
80 <?php echo apply_filters( 'tutor_learning_area_content', ob_get_clean() ); //phpcs:ignore --already escaped ?>
81 </div>
82