PluginProbe
LearnPress – WordPress LMS Plugin for Create and Sell Online Courses / 4.1.7
LearnPress – WordPress LMS Plugin for Create and Sell Online Courses v4.1.7
4.4.8 4.4.7 4.4.6 4.4.5 4.4.4 4.4.3 4.4.2 4.4.1 4.4.0 4.3.9.1 4.3.9 4.3.8 4.3.7 4.1.6.9 4.1.6.9.1 4.1.6.9.2 4.1.6.9.3 4.1.6.9.4 4.1.7 4.1.7.1 4.1.7.2 4.1.7.3 4.1.7.3.1 4.1.7.3.2 4.2.0 All 139 releases
learnpress / templates / profile / tabs / quizzes.php

quizzes.php in LearnPress – WordPress LMS Plugin for Create and Sell Online Courses 4.1.7, at templates/profile/tabs/quizzes.php

121 lines 3.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Template for displaying quizzes tab in user profile page.
4 *
5 * @author ThimPress
6 * @package Learnpress/Templates
7 * @version 4.0.1
8 */
9
10 defined( 'ABSPATH' ) || exit();
11
12 if ( ! LP_Profile::instance()->current_user_can( 'view-tab-quizzes' ) ) {
13 return;
14 }
15
16 global $wp;
17
18 $profile = learn_press_get_profile();
19 $user_profile = learn_press_get_user( $profile->get_user_data( 'id' ) );
20
21 $filter = new LP_User_Items_Filter();
22 $filter->user_id = $user_profile->get_id();
23 $filter->limit = apply_filters( 'learnpress/user/quizzes/limit', 5 );
24 $filter->status = LP_Helper::sanitize_params_submitted( $_GET['filter-status'] ?? '' );
25 $filter->graduation = LP_Helper::sanitize_params_submitted( $_GET['filter-graduation'] ?? '' );
26 $query = $user_profile->get_user_quizzes( $filter );
27
28 $current_filter = '';
29
30 if ( ! empty( $filter->status ) ) {
31 $current_filter = $filter->status;
32 } elseif ( ! empty( $filter->graduation ) ) {
33 $current_filter = $filter->graduation;
34 }
35
36 $filters = $profile->get_quizzes_filters( $current_filter );
37 ?>
38
39 <div class="learn-press-subtab-content">
40 <?php if ( $filters ) : ?>
41 <ul class="learn-press-filters">
42 <?php foreach ( $filters as $class => $link ) : ?>
43 <li class="<?php echo esc_attr( $class ); ?>">
44 <?php echo wp_kses_post( $link ); ?>
45 </li>
46 <?php endforeach; ?>
47 </ul>
48 <?php endif; ?>
49
50 <?php if ( $query['items'] ) : ?>
51 <table class="lp-list-table profile-list-quizzes profile-list-table">
52 <thead>
53 <tr>
54 <th class="column-quiz"><?php esc_html_e( 'Quiz', 'learnpress' ); ?></th>
55 <th class="column-status"><?php esc_html_e( 'Result', 'learnpress' ); ?></th>
56 <th class="column-time-interval"><?php esc_html_e( 'Time spent', 'learnpress' ); ?></th>
57 <th class="column-date"><?php esc_html_e( 'Date', 'learnpress' ); ?></th>
58 </tr>
59 </thead>
60
61 <tbody>
62 <?php
63 /**
64 * @var LP_User_Item_Quiz $user_quiz
65 */
66 foreach ( $query['items'] as $user_quiz ) :
67 $result_quiz = $user_quiz->get_result();
68 $quiz = learn_press_get_quiz( $user_quiz->get_id() );
69 $courses = learn_press_get_item_courses( array( $user_quiz->get_id() ) );
70 ?>
71
72 <tr>
73 <td class="column-quiz column-quiz-<?php echo esc_attr( $user_quiz->get_id() ); ?>">
74 <?php
75 if ( $courses ) {
76 foreach ( $courses as $course ) {
77 $course = LP_Course::get_course( $course->ID );
78 ?>
79 <a href="<?php echo esc_url_raw( $course->get_item_link( $user_quiz->get_id() ) ); ?>">
80 <?php echo esc_html( $quiz->get_title( 'display' ) ); ?>
81 </a>
82 <?php
83 }
84 }
85 ?>
86 </td>
87
88 <td class="column-status">
89 <span class="result-percent"><?php echo wp_kses_post( $user_quiz->get_percent_result() ); ?></span>
90 <span class="lp-label label-<?php echo esc_attr( $user_quiz->get_status() ); ?>">
91 <?php echo wp_kses_post( wp_sprintf( '%s', esc_attr( $user_quiz->get_status_label() ) ) ); ?>
92 </span>
93 </td>
94 <td class="column-time-interval">
95 <?php echo wp_kses_post( $user_quiz->get_time_interval( 'display' ) ); ?>
96 </td>
97 <td class="column-date">
98 <?php echo wp_kses_post( $user_quiz->get_start_time( 'i18n' ) ); ?>
99 </td>
100 </tr>
101
102 <?php endforeach; ?>
103 </tbody>
104
105 <tfoot>
106 <tr class="list-table-nav">
107 <td colspan="2" class="nav-text">
108 <?php echo wp_kses_post( $query->get_offset_text() ); ?>
109 </td>
110 <td colspan="2" class="nav-pages">
111 <?php $query->get_nav_numbers( true ); ?>
112 </td>
113 </tr>
114 </tfoot>
115 </table>
116
117 <?php else : ?>
118 <?php learn_press_display_message( esc_html__( 'No quizzes!', 'learnpress' ) ); ?>
119 <?php endif; ?>
120 </div>
121