submitted.php
165 lines
| 1 | <?php |
| 2 | |
| 3 | /** |
| 4 | * @package TutorLMS/Templates |
| 5 | * @version 1.4.3 |
| 6 | */ |
| 7 | |
| 8 | global $wpdb; |
| 9 | |
| 10 | $order_filter = isset( $_GET['order'] ) ? sanitize_text_field( $_GET['order'] ) : 'desc'; |
| 11 | $assignment_id = sanitize_text_field( $_GET['assignment'] ); |
| 12 | $assignments_submitted = $wpdb->get_results( $wpdb->prepare( "SELECT * FROM {$wpdb->comments} WHERE comment_type = 'tutor_assignment' AND comment_post_ID = %d ORDER BY comment_ID $order_filter", $assignment_id ) ); |
| 13 | |
| 14 | $max_mark = tutor_utils()->get_assignment_option( $assignment_id, 'total_mark' ); |
| 15 | $pass_mark = tutor_utils()->get_assignment_option( $assignment_id, 'pass_mark' ); |
| 16 | $format = get_option( 'date_format' ) . ' ' . get_option( 'time_format' ); |
| 17 | $deadline = tutor_utils()->get_assignment_deadline_date( $assignment_id, $format, __( 'No Limit', 'tutor' ) ); |
| 18 | $comment_parent = !empty($assignments_submitted) ? $assignments_submitted[0]->comment_parent:null; |
| 19 | ?> |
| 20 | |
| 21 | <div class="tutor-dashboard-content-inner tutor-dashboard-assignment-submits"> |
| 22 | <div class="tutor-mb-24"> |
| 23 | <a class="tutor-back-btn tutor-color-design-dark" href="<?php echo esc_url( tutor_utils()->get_tutor_dashboard_page_permalink( 'assignments' ) ); ?>"> |
| 24 | <span class="color-text-primary assignment-back-icon tutor-icon-previous-line tutor-icon-30 tutor-mr-12"></span> |
| 25 | <span class="tutor-color-black-60"><?php esc_html_e( 'Back', 'tutor' ); ?></span> |
| 26 | </a> |
| 27 | </div> |
| 28 | |
| 29 | <div class="tutor-assignment-review-header tutor-assignment-submitted-page"> |
| 30 | <div class="tutor-fs-7 tutor-fw-normal tutor-color-black-60"> |
| 31 | <?php |
| 32 | esc_html_e('Course', 'tutor'); ?> : <?php echo get_the_title($comment_parent); ?> |
| 33 | </div> |
| 34 | <div class="tutor-fs-6 tutor-fw-medium tutor-mt-8"> |
| 35 | <?php echo get_the_title($assignment_id); ?> |
| 36 | </div> |
| 37 | <div class="assignment-info tutor-mt-12 tutor-d-flex"> |
| 38 | <div class="tutor-fs-7 tutor-fw-normal tutor-color-black-70"> |
| 39 | <?php esc_html_e('Submission Deadline', 'tutor'); ?>: |
| 40 | <span class="tutor-fs-7 tutor-fw-medium"><?php echo $deadline; ?></span> |
| 41 | </div> |
| 42 | <div class="tutor-fs-7 tutor-fw-normal tutor-color-black-70 tutor-ml-24"> |
| 43 | <?php esc_html_e('Total Points', 'tutor'); ?>: |
| 44 | <span class="tutor-fs-7 tutor-fw-medium"><?php echo $max_mark; ?></span> |
| 45 | </div> |
| 46 | <div class="tutor-fs-7 tutor-fw-normal tutor-color-black-70 tutor-ml-24"> |
| 47 | <?php esc_html_e('Pass Points', 'tutor'); ?>: |
| 48 | <span class="tutor-fs-7 tutor-fw-medium"><?php echo $pass_mark; ?></span> |
| 49 | </div> |
| 50 | </div> |
| 51 | </div> |
| 52 | |
| 53 | <div class="tutor-dashboard-announcement-sorting-wrap submitted-assignments-sorting-wrap"> |
| 54 | <div class="tutor-dashboard-announcement-sorting-input"> |
| 55 | <label class="tutor-fs-7 tutor-fw-normal tutor-color-black-60"><?php esc_html_e( 'Sort By:', 'tutor' ); ?></label> |
| 56 | <select class="tutor-announcement-order-sorting tutor-form-select tutor-form-control tutor-form-control-sm no-tutor-dropdown"> |
| 57 | <option value="desc" <?php selected( $order_filter, 'desc' ); ?>><?php esc_html_e( 'Latest', 'tutor' ); ?></option> |
| 58 | <option value="asc" <?php selected( $order_filter, 'asc' ); ?>><?php esc_html_e( 'Oldest', 'tutor' ); ?></option> |
| 59 | </select> |
| 60 | </div> |
| 61 | </div> |
| 62 | |
| 63 | <div class="tutor-ui-table-wrapper"> |
| 64 | <table class="tutor-ui-table tutor-ui-table-responsive"> |
| 65 | <thead> |
| 66 | <tr> |
| 67 | <th> |
| 68 | <span class="tutor-fs-7 tutor-fw-normal tutor-color-black-60"> |
| 69 | <?php esc_html_e('Date', 'tutor'); ?> |
| 70 | </span> |
| 71 | </th> |
| 72 | <th> |
| 73 | <div class="inline-flex-center tutor-color-black-60"> |
| 74 | <span class="tutor-fs-7 tutor-fw-normal"> |
| 75 | <?php esc_html_e('Student', 'tutor'); ?> |
| 76 | </span> |
| 77 | </div> |
| 78 | </th> |
| 79 | <th> |
| 80 | <div class="inline-flex-center tutor-color-black-60"> |
| 81 | <span class="tutor-fs-7 tutor-fw-normal"> |
| 82 | <?php esc_html_e('Total Points', 'tutor'); ?> |
| 83 | </span> |
| 84 | </div> |
| 85 | </th> |
| 86 | <th> |
| 87 | <div class="inline-flex-center tutor-color-black-60"> |
| 88 | <span class="tutor-fs-7 tutor-fw-normal"> |
| 89 | <?php esc_html_e('Result', 'tutor'); ?> |
| 90 | </span> |
| 91 | </div> |
| 92 | </th> |
| 93 | <th class="tutor-shrink"></th> |
| 94 | </tr> |
| 95 | </thead> |
| 96 | <tbody> |
| 97 | <?php |
| 98 | if (tutor_utils()->count($assignments_submitted)) { |
| 99 | foreach ($assignments_submitted as $assignment) { |
| 100 | $review_url = tutor_utils()->get_tutor_dashboard_page_permalink('assignments/review'); |
| 101 | $comment_author = get_user_by('login', $assignment->comment_author); // login=username |
| 102 | $is_reviewed_by_instructor = get_comment_meta($assignment->comment_ID, 'evaluate_time', true); |
| 103 | $given_mark = get_comment_meta($assignment->comment_ID, 'assignment_mark', true); |
| 104 | $not_evaluated = $given_mark === ''; |
| 105 | $status = 'pending'; |
| 106 | $button_text = __('Evaluate', 'tutor'); |
| 107 | |
| 108 | if (!empty($given_mark) || !$not_evaluated) { |
| 109 | $status = (int)$given_mark >= (int)$pass_mark ? 'pass' : 'fail'; |
| 110 | $button_text = __('Details', 'tutor'); |
| 111 | } |
| 112 | ?> |
| 113 | <tr> |
| 114 | <td data-th="<?php esc_html_e('Date', 'tutor'); ?>"> |
| 115 | <span class="tutor-color-black tutor-fs-7 tutor-fw-medium"> |
| 116 | <?php echo wp_kses_post( date('j M, Y,<\b\r>h:i a', strtotime($assignment->comment_date))); ?> |
| 117 | </span> |
| 118 | </td> |
| 119 | <td data-th="<?php esc_html_e('Student', 'tutor'); ?>"> |
| 120 | <div class="td-avatar"> |
| 121 | <img src="<?php echo get_avatar_url( $comment_author->ID ); ?>" alt=" - Profile Picture"> |
| 122 | <div class="tutor-fs-6 tutor-fw-medium tutor-color-black"> |
| 123 | <?php esc_html_e( $comment_author->display_name ); ?><br/> |
| 124 | <span class="tutor-fs-7 tutor-fw-normal"> |
| 125 | <?php esc_html_e( $comment_author->user_email ); ?> |
| 126 | </span> |
| 127 | </div> |
| 128 | </div> |
| 129 | </td> |
| 130 | <td data-th="<?php esc_html_e('Total Points', 'tutor'); ?>"> |
| 131 | <span class="tutor-color-black tutor-fs-7 tutor-fw-medium"> |
| 132 | <?php echo !empty($given_mark) ? $given_mark . '/' . $max_mark : ' '; ?> |
| 133 | </span> |
| 134 | </td> |
| 135 | <td data-th="<?php esc_html_e('Result', 'tutor'); ?>"> |
| 136 | <?php echo tutor_utils()->translate_dynamic_text($status, true); ?> |
| 137 | </td> |
| 138 | <td data-th="<?php esc_html_e('Details URL', 'tutor'); ?>"> |
| 139 | <div class="inline-flex-center td-action-btns"> |
| 140 | <a href="<?php echo esc_url($review_url . '?view_assignment=' . $assignment->comment_ID) . '&assignment=' . $assignment_id; ?>" class="tutor-btn tutor-btn-disable-outline tutor-btn-outline-fd tutor-btn-sm"> |
| 141 | <?php esc_html_e($button_text); ?> |
| 142 | </a> |
| 143 | </div> |
| 144 | </td> |
| 145 | </tr> |
| 146 | <?php |
| 147 | } |
| 148 | } else { |
| 149 | ?> |
| 150 | <tr> |
| 151 | <td colspan="100%"> |
| 152 | <div class="td-empty-state"> |
| 153 | <?php tutor_utils()->tutor_empty_state( 'No assignment', 'tutor' ); ?> |
| 154 | </div> |
| 155 | </td> |
| 156 | </tr> |
| 157 | <?php |
| 158 | } |
| 159 | ?> |
| 160 | </tbody> |
| 161 | </table> |
| 162 | </div> |
| 163 | |
| 164 | </div> |
| 165 |