PluginProbe ʕ •ᴥ•ʔ
Tutor LMS – eLearning and online course solution / 4.0.0
Tutor LMS – eLearning and online course solution v4.0.0
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 / views / pages / students.php
tutor / views / pages Last commit date
ecommerce 1 day ago tools 2 months ago add_new_instructor.php 2 years ago addons.php 1 year ago announcements.php 2 months ago answer.php 3 years ago course-builder.php 1 year ago course-list.php 2 months ago enable_disable_addons.php 11 months ago feature-promotion.php 2 years ago get-pro.php 8 months ago instructors.php 1 day ago question_answer.php 11 months ago quiz_attempts.php 1 day ago students.php 1 day ago tools.php 3 years ago view_attempt.php 1 day ago welcome.php 1 day ago whats-new.php 11 months ago withdraw_requests.php 2 months ago
students.php
210 lines
1 <?php
2 /**
3 * Student List Template.
4 *
5 * @package Tutor\Views
6 * @subpackage Tutor\Students
7 * @author Themeum <support@themeum.com>
8 * @link https://themeum.com
9 * @since 2.0.0
10 */
11
12 if ( ! defined( 'ABSPATH' ) ) {
13 exit;
14 }
15
16 use TUTOR\Input;
17 use Tutor\Models\CourseModel;
18
19 $students = tutor_lms()->student_list;
20
21 //phpcs:disable WordPress.WP.GlobalVariablesOverride.Prohibited
22 $user_id = Input::get( 'user_id', '' );
23 $course_id = Input::get( 'course-id', '' );
24 $order = Input::get( 'order', 'DESC' );
25 $date = Input::has( 'date' ) ? tutor_get_formated_date( 'Y-m-d', Input::get( 'date' ) ) : '';
26 $search = Input::get( 'search', '' );
27
28 /**
29 * Pagination data
30 */
31 $paged = Input::get( 'paged', 1, Input::TYPE_INT );
32 $per_page = tutor_utils()->get_option( 'pagination_per_page', 10 );
33 $offset = ( $per_page * $paged ) - $per_page;
34
35 $students_list = tutor_utils()->get_students( $offset, $per_page, $search, $course_id, $date, $order );
36 $total = tutor_utils()->get_total_students( $search, $course_id, $date );
37 //phpcs:enable
38
39 /**
40 * Navbar data to make nav menu
41 */
42 $navbar_data = array(
43 'page_title' => $students->page_title,
44 );
45
46 /**
47 * Bulk action & filters
48 */
49 $filters = array(
50 'bulk_action' => tutor_utils()->has_user_role( 'administrator' ) ? $students->bulk_action : false,
51 'bulk_actions' => $students->prpare_bulk_actions(),
52 'ajax_action' => 'tutor_student_bulk_action',
53 'filters' => array(
54 array(
55 'label' => __( 'Courses', 'tutor' ),
56 'field_type' => 'select',
57 'field_name' => 'course-id',
58 'options' => CourseModel::get_course_dropdown_options(),
59 'searchable' => true,
60 'value' => Input::get( 'course-id', '' ),
61 ),
62 array(
63 'label' => __( 'Date', 'tutor' ),
64 'field_type' => 'date',
65 'field_name' => 'date',
66 'show_label' => true,
67 'value' => Input::get( 'date', '' ),
68 ),
69 ),
70 );
71
72 ?>
73
74 <div class="tutor-admin-wrap">
75
76 <?php
77 /**
78 * Load Templates with data.
79 */
80 $navbar_template = tutor()->path . 'views/elements/list-navbar.php';
81 $filters_template = tutor()->path . 'views/elements/list-filters.php';
82 tutor_load_template_from_custom_path( $navbar_template, $navbar_data );
83 tutor_load_template_from_custom_path( $filters_template, $filters );
84 ?>
85
86 <div class="tutor-admin-container tutor-admin-container-lg tutor-mt-16">
87 <?php if ( is_array( $students_list ) && count( $students_list ) ) : ?>
88 <div class="tutor-table-responsive tutor-dashboard-list-table">
89 <table class="tutor-table tutor-table-middle tutor-table-with-checkbox">
90 <thead>
91 <tr>
92 <th width="3%">
93 <div class="tutor-d-flex">
94 <input type="checkbox" id="tutor-bulk-checkbox-all" class="tutor-form-check-input" />
95 </div>
96 </th>
97 <th class="tutor-table-rows-sorting">
98 <?php esc_html_e( 'Students', 'tutor' ); ?>
99 <span class="tutor-icon-ordering-a-z a-to-z-sort-icon"></span>
100 </th>
101 <th class="tutor-table-rows-sorting">
102 <?php esc_html_e( 'Email', 'tutor' ); ?>
103 <span class="tutor-icon-order-down up-down-icon"></span>
104 </th>
105 <th class="tutor-table-rows-sorting">
106 <?php esc_html_e( 'Registration Date', 'tutor' ); ?>
107 <span class="tutor-icon-order-down up-down-icon"></span>
108 </th>
109 <th class="tutor-table-rows-sorting">
110 <?php esc_html_e( 'Course Taken', 'tutor' ); ?>
111 <span class="tutor-icon-order-down up-down-icon"></span>
112 </th>
113 <th></th>
114 </tr>
115 </thead>
116
117 <tbody>
118 <?php
119 foreach ( $students_list as $list ) :
120 $reg_date = $list->user_registered;
121 ?>
122 <tr>
123 <td>
124 <div class="tutor-d-flex">
125 <input id="tutor-admin-list-<?php echo esc_attr( $list->ID ); ?>" type="checkbox" class="tutor-form-check-input tutor-bulk-checkbox" name="tutor-bulk-checkbox-all" value="<?php echo esc_attr( $list->ID ); ?>" />
126 </div>
127 </td>
128 <td>
129 <div class="tutor-d-flex tutor-align-center tutor-gap-1">
130 <?php
131 echo wp_kses(
132 tutor_utils()->get_tutor_avatar( $list->ID ),
133 tutor_utils()->allowed_avatar_tags()
134 );
135 ?>
136 <span>
137 <?php echo esc_html( $list->display_name ); ?>
138 </span>
139 <a href="<?php echo esc_url( tutor_utils()->profile_url( $list->ID, false ) ); ?>" class="tutor-iconic-btn" target="_blank" type="button">
140 <span class="tutor-icon-external-link" aria-hidden="true"></span>
141 </a>
142 </div>
143 </td>
144 <td>
145 <div class="tutor-d-flex tutor-align-center" style="gap: 5px;">
146 <span class="tutor-fs-7">
147 <?php echo esc_html( $list->user_email ); ?>
148 </span>
149 <?php do_action( 'tutor_show_email_verified_badge', $list->ID ); ?>
150 </div>
151 </td>
152 <td>
153 <span class="tutor-fs-7">
154 <?php echo esc_html( $reg_date ? tutor_i18n_get_formated_date( tutor_utils()->get_local_time_from_unix( $list->user_registered ) ) : '' ); ?>
155 </span>
156 </td>
157 <td>
158 <?php $course_taken = tutor_utils()->get_enrolled_courses_ids_by_user( $list->ID ); ?>
159 <span class="tutor-fs-7"><?php echo esc_html( is_array( $course_taken ) ? count( $course_taken ) : 0 ); ?></span>
160 </td>
161 <td>
162 <div class="tutor-d-flex tutor-align-center tutor-gap-1 tutor-justify-end">
163 <?php do_action( 'tutor_before_student_details_btn', $list->ID ); ?>
164 <a href="<?php echo esc_url( admin_url( 'admin.php?page=tutor_report&sub_page=students&student_id=' . $list->ID ) ); ?>"
165 class="tutor-btn tutor-btn-tertiary tutor-btn-sm">
166 <?php esc_html_e( 'Details', 'tutor' ); ?>
167 </a>
168 <?php
169 /**
170 * Action to render consent logs button.
171 *
172 * @since 4.0.0
173 *
174 * @param object $list User list item.
175 */
176 do_action( 'tutor_render_consent_logs_button', $list );
177 ?>
178 </div>
179 </td>
180 </tr>
181 <?php endforeach; ?>
182 </tbody>
183 </table>
184 </div>
185 <?php else : ?>
186 <?php tutils()->render_list_empty_state(); ?>
187 <?php endif; ?>
188
189 <div class="tutor-admin-page-pagination-wrapper tutor-mt-32">
190 <?php
191 /**
192 * Prepare pagination data & load template
193 */
194 if ( $total > $per_page ) {
195 $pagination_data = array(
196 'total_items' => $total,
197 'per_page' => $per_page,
198 'paged' => $paged,
199 );
200 $pagination_template = tutor()->path . 'views/elements/pagination.php';
201 tutor_load_template_from_custom_path( $pagination_template, $pagination_data );
202 }
203 ?>
204 </div>
205 </div>
206 </div>
207
208 <?php
209 do_action( 'tutor_render_consent_logs_modal' );
210 ?>