PluginProbe ʕ •ᴥ•ʔ
Tutor LMS – eLearning and online course solution / 2.1.4
Tutor LMS – eLearning and online course solution v2.1.4
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 / templates / single / lesson / content.php
tutor / templates / single / lesson Last commit date
comment.php 3 years ago comments-loop.php 3 years ago complete_form.php 3 years ago content.php 3 years ago lesson_sidebar.php 3 years ago required-enroll.php 4 years ago sidebar_question_and_answer.php 4 years ago
content.php
167 lines
1 <?php
2 /**
3 * Display the content
4 *
5 * @author themeum
6 * @link https://themeum.com
7 * @package TutorLMS/Templates
8 * @since 1.0.0
9 */
10
11 if ( ! defined( 'ABSPATH' ) ) {
12 exit;
13 }
14
15 global $post;
16 global $previous_id;
17 global $next_id;
18
19 // Get the ID of this content and the corresponding course
20 $course_content_id = get_the_ID();
21 $course_id = tutor_utils()->get_course_id_by_subcontent( $course_content_id );
22
23 $_is_preview = get_post_meta( $course_content_id, '_is_preview', true );
24 $content_id = tutor_utils()->get_post_id( $course_content_id );
25 $contents = tutor_utils()->get_course_prev_next_contents_by_id( $content_id );
26 $previous_id = $contents->previous_id;
27 $next_id = $contents->next_id;
28
29 $prev_is_preview = get_post_meta( $previous_id, '_is_preview', true );
30 $next_is_preview = get_post_meta( $next_id, '_is_preview', true );
31 $is_enrolled = tutor_utils()->is_enrolled( $course_id );
32 $is_public = get_post_meta( $course_id, '_tutor_is_public_course', true );
33
34 $prev_is_locked = ! ( $is_enrolled || $prev_is_preview || $is_public );
35 $next_is_locked = ! ( $is_enrolled || $next_is_preview || $is_public );
36
37 $jsonData = array();
38 $jsonData['post_id'] = get_the_ID();
39 $jsonData['best_watch_time'] = 0;
40 $jsonData['autoload_next_course_content'] = (bool) get_tutor_option( 'autoload_next_course_content' );
41
42 $best_watch_time = tutor_utils()->get_lesson_reading_info( get_the_ID(), 0, 'video_best_watched_time' );
43 if ( $best_watch_time > 0 ) {
44 $jsonData['best_watch_time'] = $best_watch_time;
45 }
46
47 $is_comment_enabled = tutor_utils()->get_option( 'enable_comment_for_lesson' ) && comments_open();
48
49 ?>
50
51 <?php do_action( 'tutor_lesson/single/before/content' ); ?>
52
53 <?php tutor_load_template( 'single.common.header', array( 'course_id' => $course_id, 'mark_as_complete' => true ) ); ?>
54
55 <div class="tutor-course-topic-single-body">
56 <!-- Load Lesson Video -->
57 <?php
58 $video_info = tutor_utils()->get_video_info();
59 $source_key = is_object( $video_info ) && 'html5' !== $video_info->source ? 'source_'.$video_info->source : null;
60 $has_source = ( is_object($video_info) && $video_info->source_video_id) || ( isset( $source_key ) ? $video_info->$source_key : null );
61 ?>
62 <?php if ( $has_source ) : ?>
63 <input type="hidden" id="tutor_video_tracking_information" value="<?php echo esc_attr( json_encode( $jsonData ) ); ?>">
64 <?php endif; ?>
65 <div class="tutor-video-player-wrapper">
66 <?php echo apply_filters( 'tutor_single_lesson_video', tutor_lesson_video( false ), $video_info, $source_key ); ?>
67 </div>
68
69 <?php
70 $referer_url = isset( $_SERVER['HTTP_REFERER'] ) ? $_SERVER['HTTP_REFERER'] : '';
71 $referer_comment_id = explode( '#', $_SERVER['REQUEST_URI'] );
72 $url_components = parse_url( $referer_url );
73 $page_tab = \TUTOR\Input::get( 'page_tab', 'overview' );
74
75 isset( $url_components['query'] ) ? parse_str( $url_components['query'], $output ) : null;
76
77 $has_lesson_content = ! in_array( trim( get_the_content() ), array( null, '', '&nbsp;' ) );
78 $has_lesson_attachment = count( tutor_utils()->get_attachments() ) > 0;
79 $has_lesson_comment = (int) get_comments_number( $course_content_id );
80 ?>
81
82 <style>
83 .tutor-actual-comment.viewing {
84 box-shadow: 0 0 10px #cdcfd5;
85 animation: blinkComment 1s infinite;
86 }
87 @keyframes blinkComment { 50% { box-shadow:0 0 0px #ffffff; } }
88 </style>
89
90 <div class="tutor-course-spotlight-wrapper">
91 <ul class="tutor-nav tutor-course-spotlight-nav tutor-justify-center">
92 <?php if ( $has_lesson_content && ( $has_lesson_attachment || $is_comment_enabled ) ) : ?>
93 <li class="tutor-nav-item">
94 <a href="#" class="tutor-nav-link<?php echo 'overview' == $page_tab ? esc_attr( ' is-active' ) : esc_attr( '' ); ?>" data-tutor-nav-target="tutor-course-spotlight-overview" data-tutor-query-variable="page_tab" data-tutor-query-value="overview">
95 <span class="tutor-icon-document-text tutor-mr-8" area-hidden="true"></span>
96 <span><?php _e( 'Overview', 'tutor' ); ?></span>
97 </a>
98 </li>
99 <?php endif; ?>
100
101 <?php if ( $has_lesson_attachment && ( $has_lesson_content || $is_comment_enabled ) ) : ?>
102 <li class="tutor-nav-item">
103 <a href="#" class="tutor-nav-link<?php echo ( 'files' == $page_tab || false === $has_lesson_content ) ? esc_attr( ' is-active' ) : esc_attr( '' ); ?>" data-tutor-nav-target="tutor-course-spotlight-files" data-tutor-query-variable="page_tab" data-tutor-query-value="files">
104 <span class="tutor-icon-paperclip tutor-mr-8" area-hidden="true"></span>
105 <span><?php _e( 'Exercise Files', 'tutor' ); ?></span>
106 </a>
107 </li>
108 <?php endif; ?>
109
110 <?php if ( $is_comment_enabled && ( $has_lesson_content || $has_lesson_attachment ) ) : ?>
111 <li class="tutor-nav-item">
112 <a href="#" class="tutor-nav-link<?php echo ('comments' == $page_tab || ( false === $has_lesson_content && false === $has_lesson_attachment ) ) ? esc_attr( ' is-active' ) : esc_attr( '' ); ?>" data-tutor-nav-target="tutor-course-spotlight-comments" data-tutor-query-variable="page_tab" data-tutor-query-value="comments">
113 <span class="tutor-icon-comment tutor-mr-8" area-hidden="true"></span>
114 <span><?php _e( 'Comments', 'tutor' ); ?></span>
115 </a>
116 </li>
117 <?php endif; ?>
118 </ul>
119
120 <div class="tutor-tab tutor-course-spotlight-tab">
121 <?php if ( $has_lesson_content ) : ?>
122 <div id="tutor-course-spotlight-overview" class="tutor-tab-item<?php echo 'overview' == $page_tab ? esc_attr( ' is-active' ) : esc_attr( '' ); ?>">
123 <div class="tutor-container">
124 <div class="tutor-row tutor-justify-center">
125 <div class="tutor-col-xl-8">
126 <div class="tutor-fs-5 tutor-fw-medium tutor-color-black tutor-mb-12">
127 <?php _e( 'About Lesson', 'tutor' ); ?>
128 </div>
129 <div class="tutor-fs-6 tutor-color-secondary tutor-lesson-wrapper">
130 <?php the_content(); ?>
131 </div>
132 </div>
133 </div>
134 </div>
135 </div>
136 <?php endif; ?>
137
138 <?php if ( $has_lesson_attachment ) : ?>
139 <div id="tutor-course-spotlight-files" class="tutor-tab-item<?php echo ( 'files' == $page_tab || false === $has_lesson_content ) ? esc_attr( ' is-active' ) : esc_attr( '' ); ?>">
140 <div class="tutor-container">
141 <div class="tutor-row tutor-justify-center">
142 <div class="tutor-col-xl-8">
143 <div class="tutor-fs-5 tutor-fw-medium tutor-color-black"><?php _e( 'Exercise Files', 'tutor' ); ?></div>
144 <?php get_tutor_posts_attachments(); ?>
145 </div>
146 </div>
147 </div>
148 </div>
149 <?php endif; ?>
150
151 <?php if ( $is_comment_enabled ) : ?>
152 <div id="tutor-course-spotlight-comments" class="tutor-tab-item<?php echo ('comments' == $page_tab || ( false === $has_lesson_content && false === $has_lesson_attachment ) ) ? esc_attr( ' is-active' ) : esc_attr( '' ); ?>">
153 <div class="tutor-container">
154 <div class="tutor-course-spotlight-comments">
155 <?php require __DIR__ . '/comment.php'; ?>
156 </div>
157 </div>
158 </div>
159 <?php endif; ?>
160 </div>
161 </div>
162 </div>
163
164 <?php tutor_load_template( 'single.common.footer', array( 'course_id' => $course_id )); ?>
165
166 <?php do_action( 'tutor_lesson/single/after/content' ); ?>
167