PluginProbe ʕ •ᴥ•ʔ
Tutor LMS – eLearning and online course solution / 1.9.13
Tutor LMS – eLearning and online course solution v1.9.13
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 / dashboard / quiz-attempts.php
tutor / templates / dashboard Last commit date
announcements 4 years ago assignments 4 years ago earning 4 years ago enrolled-courses 4 years ago instructor 4 years ago my-quiz-attempts 4 years ago notifications 4 years ago question-answer 4 years ago quiz-attempts 4 years ago reviews 4 years ago settings 4 years ago withdraw-method-fields 4 years ago announcements.php 4 years ago assignments.php 4 years ago create-course.php 4 years ago dashboard.php 4 years ago earning.php 4 years ago enrolled-courses.php 4 years ago index.php 4 years ago logged-in.php 5 years ago my-courses.php 4 years ago my-profile.php 4 years ago my-quiz-attempts.php 4 years ago purchase_history.php 4 years ago question-answer.php 4 years ago quiz-attempts.php 4 years ago registration.php 4 years ago reviews.php 4 years ago settings.php 4 years ago wishlist.php 4 years ago withdraw.php 4 years ago
quiz-attempts.php
123 lines
1 <?php
2 /**
3 * Students Quiz Attempts Frontend
4 *
5 * @since v.1.4.0
6 *
7 * @author Themeum
8 * @url https://themeum.com
9 *
10 * @package TutorLMS/Templates
11 * @version 1.6.4
12 */
13
14 $per_page = 20;
15 $current_page = max( 1, tutils()->array_get( 'current_page', tutor_sanitize_data($_GET) ) );
16 $offset = ( $current_page - 1 ) * $per_page;
17 ?>
18
19 <h3><?php _e( 'Quiz Attempts', 'tutor' ); ?></h3>
20 <?php
21 $course_id = tutor_utils()->get_assigned_courses_ids_by_instructors();
22 $quiz_attempts = tutor_utils()->get_quiz_attempts_by_course_ids( $offset, $per_page, $course_id );
23 $quiz_attempts_count = tutor_utils()->get_total_quiz_attempts_by_course_ids( $course_id );
24
25 if ( $quiz_attempts_count ) {
26 ?>
27 <div class="tutor-dashboard-content tutor-quiz-attempt-history">
28 <table class="tutor-table">
29 <tr>
30 <th><?php _e( 'Course Info', 'tutor' ); ?></th>
31 <th><?php _e( 'Student', 'tutor' ); ?></th>
32 <th><?php _e( 'Correct Answer', 'tutor' ); ?></th>
33 <th><?php _e( 'Incorrect Answer', 'tutor' ); ?></th>
34 <th><?php _e( 'Earned Mark', 'tutor' ); ?></th>
35 <th><?php _e( 'Result', 'tutor' ); ?></th>
36 <th></th>
37 <?php do_action( 'tutor_quiz/student_attempts/table/thead/col' ); ?>
38 </tr>
39 <?php
40 foreach ( $quiz_attempts as $attempt ) {
41 $attempt_action = tutor_utils()->get_tutor_dashboard_page_permalink( 'quiz-attempts/quiz-reviews/?attempt_id=' . $attempt->attempt_id );
42 $earned_percentage = $attempt->earned_marks > 0 ? ( number_format( ( $attempt->earned_marks * 100 ) / $attempt->total_marks ) ) : 0;
43 $passing_grade = tutor_utils()->get_quiz_option( $attempt->quiz_id, 'passing_grade', 0 );
44 $answers = tutor_utils()->get_quiz_answers_by_attempt_id( $attempt->attempt_id );
45 ?>
46 <tr>
47 <td>
48 <div class="course">
49 <a href="<?php echo esc_url( get_the_permalink( $attempt->course_id ) ); ?>" target="_blank"><?php echo get_the_title( $attempt->course_id ); ?></a>
50 </div>
51 <div class="course-meta">
52 <span><?php echo date_i18n( get_option( 'date_format' ) . ' ' . get_option( 'time_format' ), strtotime( $attempt->attempt_ended_at ) ); ?></span>
53 <span><?php _e( 'Question: ', 'tutor' ); ?><strong><?php echo esc_attr( count( $answers ) ); ?></strong></span>
54 <span><?php _e( 'Total Marks: ', 'tutor' ); ?><strong><?php echo esc_attr( $attempt->total_marks ); ?></strong></span>
55 </div>
56 </td>
57 <td>
58 <div class="student">
59 <?php echo esc_attr( $attempt->display_name ); ?></span>
60 </div>
61 <div class="student-meta">
62 <span><?php echo esc_attr( $attempt->user_email ); ?></span>
63 </div>
64 </td>
65 <td>
66 <?php
67 $correct = 0;
68 $incorrect = 0;
69 if ( is_array( $answers ) && count( $answers ) > 0 ) {
70 foreach ( $answers as $answer ) {
71 if ( (bool) isset( $answer->is_correct ) ? $answer->is_correct : '' ) {
72 $correct++;
73 } else {
74 if ( $answer->question_type === 'open_ended' || $answer->question_type === 'short_answer' ) {
75 } else {
76 $incorrect++;
77 }
78 }
79 }
80 }
81 echo $correct;
82 ?>
83 </td>
84 <td>
85 <?php echo $incorrect; ?>
86 </td>
87 <td>
88 <?php echo $attempt->earned_marks . ' (' . $earned_percentage . '%)'; ?>
89 </td>
90 <td>
91 <?php
92 if ( $attempt->attempt_status === 'review_required' ) {
93 echo '<span class="result-review-required">' . __( 'Under Review', 'tutor' ) . '</span>';
94 } else {
95 echo $earned_percentage >= $passing_grade ?
96 '<span class="result-pass">' . __( 'Pass', 'tutor' ) . '</span>' :
97 '<span class="result-fail">' . __( 'Fail', 'tutor' ) . '</span>';
98 }
99 ?>
100 </td>
101 <td><a href="<?php echo esc_url( $attempt_action ); ?>"><?php _e( 'Details', 'tutor' ); ?></a></td>
102 <?php do_action( 'tutor_quiz/student_attempts/table/tbody/col', $attempt ); ?>
103 </tr>
104 <?php
105 }
106 ?>
107 </table>
108 </div>
109 <div class="tutor-pagination">
110 <?php
111 echo paginate_links(
112 array(
113 'format' => '?current_page=%#%',
114 'current' => $current_page,
115 'total' => ceil( $quiz_attempts_count / $per_page ),
116 )
117 );
118 ?>
119 </div>
120 <?php } else {
121 _e( 'No quiz attempt yet.', 'tutor' );
122 } ?>
123