PluginProbe
LearnPress – WordPress LMS Plugin for Create and Sell Online Courses / 4.3.8
LearnPress – WordPress LMS Plugin for Create and Sell Online Courses v4.3.8
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 / single-course / sidebar / user-progress.php

user-progress.php in LearnPress – WordPress LMS Plugin for Create and Sell Online Courses 4.3.8, at templates/single-course/sidebar/user-progress.php

113 lines 3.9 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 progress of single course.
4 *
5 * @author ThimPress
6 * @package Learnpress/Templates
7 * @version 4.0.3
8 */
9
10 use LearnPress\Models\QuizPostModel;
11 use LearnPress\Models\UserItems\UserCourseModel;
12 use LearnPress\TemplateHooks\UserItem\UserCourseTemplate;
13
14 defined( 'ABSPATH' ) || exit();
15
16 if ( ! isset( $user ) || ! isset( $course ) || ! isset( $course_data ) || ! isset( $course_results ) ) {
17 return;
18 }
19
20 $passing_condition = $course->get_passing_condition();
21 $progress_items_completed_percent = 0;
22 $userCourseModel = UserCourseModel::find( $user->get_id(), $course->get_id(), true );
23 if ( $userCourseModel && $user->get_id() > 0 ) {
24 $courseModel = $userCourseModel->get_course_model();
25 $calculate = $userCourseModel->calculate_course_results();
26 $total_items = $courseModel->count_items();
27 $evaluation_type = $courseModel::get_evaluation_types( $courseModel->get_evaluation_type() );
28 if ( array_key_first( $evaluation_type ) === 'evaluate_final_quiz' ) {
29 $final_quiz = $courseModel->get_final_quiz();
30 if ( $final_quiz ) {
31 $quizModel = QuizPostModel::find( $final_quiz, true );
32 $passing_condition = $quizModel->get_passing_grade();
33 }
34 }
35
36 $progress_items_completed_percent = round(
37 $total_items > 0 ? $calculate['completed_items'] * 100 / $total_items : 0,
38 2
39 );
40 if ( $progress_items_completed_percent > 100 ) {
41 $progress_items_completed_percent = 100;
42 }
43 }
44 ?>
45
46 <div class="course-results-progress">
47 <?php
48 if ( ! empty( $course_results['items'] ) && $course_results['items']['lesson']['total'] ) :
49 ?>
50 <div class="items-progress">
51 <h4 class="items-progress__heading">
52 <?php esc_html_e( 'Lessons completed:', 'learnpress' ); ?>
53 </h4>
54 <span
55 class="number"><?php echo esc_html( sprintf( '%1$d/%2$d', $course_results['items']['lesson']['completed'], $course_results['items']['lesson']['total'] ) ); ?></span>
56 </div>
57 <?php endif; ?>
58
59 <?php
60 if ( ! empty( $course_results['items'] ) && $course_results['items']['quiz']['total'] ) :
61 $quiz_false = $course_results['items']['quiz']['completed'] - $course_results['items']['quiz']['passed'];
62 ?>
63 <div class="items-progress">
64 <h4 class="items-progress__heading">
65 <?php esc_html_e( 'Quizzes finished:', 'learnpress' ); ?>
66 </h4>
67 <span class="number"
68 title="<?php echo esc_attr( sprintf( __( 'Failed %1$d, Passed %2$d', 'learnpress' ), $quiz_false, $course_results['items']['quiz']['passed'] ) ); ?>"><?php printf( __( '%1$d/%2$d', 'learnpress' ), $course_results['items']['quiz']['completed'], $course_results['items']['quiz']['total'] ); ?></span>
69 </div>
70 <?php endif; ?>
71
72 <?php do_action( 'learn-press/user-item-progress', $course_results, $course_data, $user, $course ); ?>
73
74 <div class="course-progress" style="margin-top: 10px;">
75 <h4 class="items-progress__heading">
76 <?php esc_html_e( 'Course progress:', 'learnpress' ); ?>
77 </h4>
78
79 <div class="lp-course-status">
80 <span class="number">
81 <?php echo esc_html( $progress_items_completed_percent ); ?>
82 <span class="percentage-sign">%</span>
83 </span>
84 </div>
85 </div>
86 <?php
87 echo UserCourseTemplate::instance()->html_items_completed_progress_bar( $userCourseModel );
88 ?>
89
90 <div class="course-progress" style="margin-top: 10px">
91 <h4 class="items-progress__heading">
92 <?php
93 esc_html_e( 'Passing grade', 'learnpress' );
94 printf(
95 ' <span class="lp-icon-question-circle" title="%s"></span>',
96 sprintf(
97 '%s. %s',
98 isset( $evaluation_type['label'] ) ? esc_attr( $evaluation_type['label'] ) : '',
99 esc_attr( sprintf( __( 'Passing condition: %s%%', 'learnpress' ), $passing_condition ) )
100 )
101 )
102 ?>
103 </h4>
104
105 <div class="lp-course-status">
106 <span class="number">
107 <?php echo esc_html( $course_results['result'] ); ?>
108 <span class="percentage-sign">%</span>
109 </span>
110 </div>
111 </div>
112 </div>
113