PluginProbe ʕ •ᴥ•ʔ
Tutor LMS – eLearning and online course solution / 1.2.20
Tutor LMS – eLearning and online course solution v1.2.20
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 / classes / Assets.php
tutor / classes Last commit date
Addons.php 7 years ago Admin.php 7 years ago Ajax.php 7 years ago Assets.php 7 years ago Course.php 7 years ago Gutenberg.php 7 years ago Instructor.php 7 years ago Instructors_List.php 7 years ago Lesson.php 7 years ago Options.php 7 years ago Post_types.php 7 years ago Q_and_A.php 7 years ago Question.php 7 years ago Question_Answers_List.php 7 years ago Quiz.php 7 years ago Quiz_Attempts_List.php 7 years ago Rewrite_Rules.php 7 years ago Shortcode.php 7 years ago Student.php 7 years ago Students_List.php 7 years ago Taxonomies.php 7 years ago Template.php 7 years ago Theme_Compatibility.php 7 years ago Tools.php 7 years ago Tutor.php 7 years ago TutorEDD.php 7 years ago Tutor_Base.php 7 years ago Tutor_List_Table.php 7 years ago User.php 7 years ago Utils.php 7 years ago Video_Stream.php 7 years ago Withdraw.php 7 years ago Withdraw_Requests_List.php 7 years ago WooCommerce.php 7 years ago
Assets.php
153 lines
1 <?php
2 namespace TUTOR;
3
4 if ( ! defined( 'ABSPATH' ) )
5 exit;
6
7 class Assets{
8
9 public function __construct() {
10 add_action('admin_enqueue_scripts', array($this, 'admin_scripts'));
11 add_action('wp_enqueue_scripts', array($this, 'frontend_scripts'));
12 add_action( 'admin_head', array($this, 'tutor_add_mce_button'));
13 add_filter( 'get_the_generator_html', array($this, 'tutor_generator_tag'), 10, 2 );
14 add_filter( 'get_the_generator_xhtml', array($this, 'tutor_generator_tag'), 10, 2 );
15 }
16
17 public function admin_scripts(){
18 wp_enqueue_style('tutor-select2', tutor()->url.'assets/packages/select2/select2.min.css', array(), tutor()->version);
19 wp_enqueue_style('tutor-admin', tutor()->url.'assets/css/tutor-admin.css', array(), tutor()->version);
20 wp_enqueue_style('tutor-icon', tutor()->url.'assets/icons/css/tutor-icon.css', array(), tutor()->version);
21
22 /**
23 * Scripts
24 */
25 wp_enqueue_media();
26 wp_enqueue_script('jquery-ui-slider');
27 wp_enqueue_script('tutor-select2', tutor()->url.'assets/packages/select2/select2.min.js', array('jquery'), tutor()->version, true );
28 wp_enqueue_script('tutor-admin', tutor()->url.'assets/js/tutor-admin.js', array('jquery'), tutor()->version, true );
29
30 $tutor_localize_data = array();
31 if ( ! empty($_GET['taxonomy']) && ( $_GET['taxonomy'] === 'course-category' || $_GET['taxonomy'] === 'course-tag') ){
32 $tutor_localize_data['open_tutor_admin_menu'] = true;
33 }
34
35 wp_localize_script('tutor-admin', 'tutor_data', $tutor_localize_data);
36 }
37
38 /**
39 * Load frontend scripts
40 */
41 public function frontend_scripts(){
42 global $post, $wp_query;
43
44 wp_enqueue_editor();
45
46 $tutor_dashboard_page_id = (int) tutor_utils()->get_option('tutor_dashboard_page_id');
47 if ($tutor_dashboard_page_id === get_the_ID()){
48 wp_enqueue_media();
49 }
50
51 $options = tutor_utils()->get_option();
52 $localize_data = array(
53 'ajaxurl' => admin_url('admin-ajax.php'),
54 'nonce_key' => tutor()->nonce,
55 tutor()->nonce => wp_create_nonce( tutor()->nonce_action ),
56 'options' => $options,
57 'placeholder_img_src' => tutor_placeholder_img_src(),
58 );
59
60 if ( ! empty($post->post_type) && $post->post_type === 'tutor_quiz'){
61 $quiz_options = tutor_utils()->get_quiz_option($post->ID);
62 $localize_data['quiz_options'] = $quiz_options;
63 }
64
65 /**
66 * Enabling Sorting, draggable, droppable...
67 */
68 wp_enqueue_script('jquery-ui-sortable');
69
70 //Plyr
71 wp_enqueue_style( 'tutor-plyr', tutor()->url . 'assets/packages/plyr/plyr.css', array(), tutor()->version );
72 wp_enqueue_script( 'tutor-plyr', tutor()->url . 'assets/packages/plyr/plyr.polyfilled.min.js', array( 'jquery' ), tutor()->version, true );
73
74 //Social Share
75 wp_enqueue_script( 'tutor-social-share', tutor()->url . 'assets/packages/SocialShare/SocialShare.min.js', array( 'jquery' ), tutor()->version, true );
76
77 //Including player assets if video exists
78 if (tutor_utils()->has_video_in_single()) {
79
80 $localize_data['post_id'] = get_the_ID();
81 $localize_data['best_watch_time'] = 0;
82
83 $best_watch_time = tutor_utils()->get_lesson_reading_info(get_the_ID(), 0, 'video_best_watched_time');
84 if ($best_watch_time > 0){
85 $localize_data['best_watch_time'] = $best_watch_time;
86 }
87 }
88
89 /**
90 * Chart Data
91 */
92 if ( ! empty($wp_query->query_vars['tutor_dashboard_page']) && $wp_query->query_vars['tutor_dashboard_page'] === 'earning') {
93 wp_enqueue_script( 'tutor-front-chart-js', tutor()->url . 'assets/js/Chart.bundle.min.js', array(), tutor()->version );
94 wp_enqueue_script( 'jquery-ui-datepicker' );
95 }
96 //End: chart data
97
98 $localize_data = apply_filters('tutor_localize_data', $localize_data);
99
100 if (tutor_utils()->get_option('load_tutor_css')){
101 wp_enqueue_style('tutor-frontend', tutor()->url.'assets/css/tutor-front.css', array(), tutor()->version);
102 }
103 if (tutor_utils()->get_option('load_tutor_js')) {
104 wp_enqueue_script( 'tutor-frontend', tutor()->url . 'assets/js/tutor-front.js', array( 'jquery' ), tutor()->version, true );
105 wp_localize_script('tutor-frontend', '_tutorobject', $localize_data);
106 }
107 }
108
109 /**
110 * Add Tinymce button for placing shortcode
111 */
112 function tutor_add_mce_button() {
113 // check user permissions
114 if ( !current_user_can( 'edit_posts' ) && !current_user_can( 'edit_pages' ) ) {
115 return;
116 }
117 // check if WYSIWYG is enabled
118 if ( 'true' == get_user_option( 'rich_editing' ) ) {
119 add_filter( 'mce_external_plugins', array($this, 'tutor_add_tinymce_js') );
120 add_filter( 'mce_buttons', array($this, 'tutor_register_mce_button') );
121 }
122 }
123 // Declare script for new button
124 function tutor_add_tinymce_js( $plugin_array ) {
125 $plugin_array['tutor_button'] = tutor()->url .'assets/js/mce-button.js';
126 return $plugin_array;
127 }
128 // Register new button in the editor
129 function tutor_register_mce_button( $buttons ) {
130 array_push( $buttons, 'tutor_button' );
131 return $buttons;
132 }
133
134 /**
135 * Output generator tag to aid debugging.
136 *
137 * @param string $gen Generator.
138 * @param string $type Type.
139 * @return string
140 */
141 function tutor_generator_tag( $gen, $type ) {
142 switch ( $type ) {
143 case 'html':
144 $gen .= "\n" . '<meta name="generator" content="TutorLMS ' . esc_attr( TUTOR_VERSION ) . '">';
145 break;
146 case 'xhtml':
147 $gen .= "\n" . '<meta name="generator" content="TutorLMS ' . esc_attr( TUTOR_VERSION ) . '" />';
148 break;
149 }
150 return $gen;
151 }
152
153 }