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-menu.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
my-quiz-attempts.php
105 lines
| 1 | <?php |
| 2 | /** |
| 3 | * Quiz Attempts, I attempted to courses |
| 4 | * |
| 5 | * @since v.1.1.2 |
| 6 | * |
| 7 | * @author Themeum |
| 8 | * @url https://themeum.com |
| 9 | * |
| 10 | * @package TutorLMS/Templates |
| 11 | * @version 1.6.4 |
| 12 | */ |
| 13 | |
| 14 | |
| 15 | if ( isset( $_GET['view_quiz_attempt_id'] ) && get_tutor_option( 'tutor_quiz_student_attempt_view_in_profile' ) ) { |
| 16 | $_GET['attempt_id'] = tutor_sanitize_data( $_GET['view_quiz_attempt_id'] ); |
| 17 | echo tutor_get_template_html( 'dashboard.my-quiz-attempts.attempts-details' ); |
| 18 | return; |
| 19 | } |
| 20 | |
| 21 | $previous_attempts = tutor_utils()->get_all_quiz_attempts_by_user(); |
| 22 | $attempted_count = is_array( $previous_attempts ) ? count( $previous_attempts ) : 0; |
| 23 | ?> |
| 24 | |
| 25 | <h3><?php _e( 'My Quiz Attempts', 'tutor' ); ?></h3> |
| 26 | <?php |
| 27 | if ( $attempted_count ) { |
| 28 | ?> |
| 29 | <div class="tutor-dashboard-content tutor-quiz-attempt-history "> |
| 30 | <table class="tutor-table"> |
| 31 | <tr> |
| 32 | <th><?php _e( 'Course Info', 'tutor' ); ?></th> |
| 33 | <th><?php _e( 'Correct Answer', 'tutor' ); ?></th> |
| 34 | <th><?php _e( 'Incorrect Answer', 'tutor' ); ?></th> |
| 35 | <th><?php _e( 'Earned Marks', 'tutor' ); ?></th> |
| 36 | <th><?php _e( 'Result', 'tutor' ); ?></th> |
| 37 | <?php do_action( 'tutor_quiz/my_attempts/table/thead/col' ); ?> |
| 38 | </tr> |
| 39 | <?php |
| 40 | foreach ( $previous_attempts as $attempt ) { |
| 41 | $attempt_action = tutor_utils()->get_tutor_dashboard_page_permalink( 'my-quiz-attempts/attempts-details/?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 = (int) 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 count( $answers ); ?></strong></span> |
| 54 | <span><?php _e( 'Total Marks: ', 'tutor' ); ?><strong><?php echo $attempt->total_marks; ?></strong></span> |
| 55 | </div> |
| 56 | </td> |
| 57 | <td> |
| 58 | <?php |
| 59 | $correct = 0; |
| 60 | $incorrect = 0; |
| 61 | if ( is_array( $answers ) && count( $answers ) > 0 ) { |
| 62 | foreach ( $answers as $answer ) { |
| 63 | if ( (bool) isset( $answer->is_correct ) ? $answer->is_correct : '' ) { |
| 64 | $correct++; |
| 65 | } else { |
| 66 | if ( $answer->question_type === 'open_ended' || $answer->question_type === 'short_answer' ) { |
| 67 | } else { |
| 68 | $incorrect++; |
| 69 | } |
| 70 | } |
| 71 | } |
| 72 | } |
| 73 | echo $correct; |
| 74 | ?> |
| 75 | </td> |
| 76 | <td> |
| 77 | <?php echo $incorrect; ?> |
| 78 | </td> |
| 79 | <td> |
| 80 | <?php echo $attempt->earned_marks . ' (' . $earned_percentage . '%)'; ?> |
| 81 | </td> |
| 82 | <td> |
| 83 | <?php |
| 84 | if ( $attempt->attempt_status === 'review_required' ) { |
| 85 | echo '<span class="result-review-required">' . __( 'Under Review', 'tutor' ) . '</span>'; |
| 86 | } else { |
| 87 | echo $earned_percentage >= $passing_grade ? |
| 88 | '<span class="result-pass">' . __( 'Pass', 'tutor' ) . '</span>' : |
| 89 | '<span class="result-fail">' . __( 'Fail', 'tutor' ) . '</span>'; |
| 90 | } |
| 91 | ?> |
| 92 | </td> |
| 93 | <?php do_action( 'tutor_quiz/my_attempts/table/tbody/col', $attempt ); ?> |
| 94 | </tr> |
| 95 | <?php |
| 96 | } |
| 97 | ?> |
| 98 | |
| 99 | </table> |
| 100 | </div> |
| 101 | |
| 102 | <?php } else { |
| 103 | echo __( 'You have not attempted any quiz yet', 'tutor' ); |
| 104 | } ?> |
| 105 |