PluginProbe ʕ •ᴥ•ʔ
Tutor LMS – eLearning and online course solution / 1.0.9
Tutor LMS – eLearning and online course solution v1.0.9
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 Template.php 7 years ago Theme_Compatibility.php 7 years ago Tools.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 WooCommerce.php 7 years ago init.php 7 years ago
Assets.php
137 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
21 /**
22 * Scripts
23 */
24 wp_enqueue_media();
25 wp_enqueue_script('jquery-ui-slider');
26 wp_enqueue_script('tutor-select2', tutor()->url.'assets/packages/select2/select2.min.js', array('jquery'), tutor()->version, true );
27 wp_enqueue_script('tutor-admin', tutor()->url.'assets/js/tutor-admin.js', array('jquery'), tutor()->version, true );
28
29 $tutor_localize_data = array();
30 if ( ! empty($_GET['taxonomy']) && ( $_GET['taxonomy'] === 'course-category' || $_GET['taxonomy'] === 'course-tag') ){
31 $tutor_localize_data['open_tutor_admin_menu'] = true;
32 }
33
34 wp_localize_script('tutor-admin', 'tutor_data', $tutor_localize_data);
35 }
36
37 /**
38 * Load frontend scripts
39 */
40 public function frontend_scripts(){
41 global $post;
42
43 wp_enqueue_editor();
44
45 $options = tutor_utils()->get_option();
46 $localize_data = array(
47 'ajaxurl' => admin_url('admin-ajax.php'),
48 'nonce_key' => tutor()->nonce,
49 tutor()->nonce => wp_create_nonce( tutor()->nonce_action ),
50 'options' => $options,
51 );
52
53 if ( ! empty($post->post_type) && $post->post_type === 'tutor_quiz'){
54 $quiz_options = tutor_utils()->get_quiz_option($post->ID);
55 $localize_data['quiz_options'] = $quiz_options;
56 }
57
58 /**
59 * Enabling Sorting, draggable, droppable...
60 */
61 wp_enqueue_script('jquery-ui-sortable');
62
63 //Plyr
64 wp_enqueue_style( 'tutor-plyr', tutor()->url . 'assets/packages/plyr/plyr.css', array(), tutor()->version );
65 wp_enqueue_script( 'tutor-plyr', tutor()->url . 'assets/packages/plyr/plyr.polyfilled.min.js', array( 'jquery' ), tutor()->version, true );
66
67 //Social Share
68 wp_enqueue_script( 'tutor-social-share', tutor()->url . 'assets/packages/SocialShare/SocialShare.min.js', array( 'jquery' ), tutor()->version, true );
69
70 //Including player assets if video exists
71 if (tutor_utils()->has_video_in_single()) {
72
73 $localize_data['post_id'] = get_the_ID();
74 $localize_data['best_watch_time'] = 0;
75
76 $best_watch_time = tutor_utils()->get_lesson_reading_info(get_the_ID(), 0, 'video_best_watched_time');
77 if ($best_watch_time > 0){
78 $localize_data['best_watch_time'] = $best_watch_time;
79 }
80 }
81
82 $localize_data = apply_filters('tutor_localize_data', $localize_data);
83
84 if (tutor_utils()->get_option('load_tutor_css')){
85 wp_enqueue_style('tutor-frontend', tutor()->url.'assets/css/tutor-front.css', array(), tutor()->version);
86 }
87 if (tutor_utils()->get_option('load_tutor_js')) {
88 wp_enqueue_script( 'tutor-frontend', tutor()->url . 'assets/js/tutor-front.js', array( 'jquery' ), tutor()->version, true );
89 wp_localize_script('tutor-frontend', '_tutorobject', $localize_data);
90 }
91 }
92
93 /**
94 * Add Tinymce button for placing shortcode
95 */
96 function tutor_add_mce_button() {
97 // check user permissions
98 if ( !current_user_can( 'edit_posts' ) && !current_user_can( 'edit_pages' ) ) {
99 return;
100 }
101 // check if WYSIWYG is enabled
102 if ( 'true' == get_user_option( 'rich_editing' ) ) {
103 add_filter( 'mce_external_plugins', array($this, 'tutor_add_tinymce_js') );
104 add_filter( 'mce_buttons', array($this, 'tutor_register_mce_button') );
105 }
106 }
107 // Declare script for new button
108 function tutor_add_tinymce_js( $plugin_array ) {
109 $plugin_array['tutor_button'] = tutor()->url .'assets/js/mce-button.js';
110 return $plugin_array;
111 }
112 // Register new button in the editor
113 function tutor_register_mce_button( $buttons ) {
114 array_push( $buttons, 'tutor_button' );
115 return $buttons;
116 }
117
118 /**
119 * Output generator tag to aid debugging.
120 *
121 * @param string $gen Generator.
122 * @param string $type Type.
123 * @return string
124 */
125 function tutor_generator_tag( $gen, $type ) {
126 switch ( $type ) {
127 case 'html':
128 $gen .= "\n" . '<meta name="generator" content="TutorLMS ' . esc_attr( TUTOR_VERSION ) . '">';
129 break;
130 case 'xhtml':
131 $gen .= "\n" . '<meta name="generator" content="TutorLMS ' . esc_attr( TUTOR_VERSION ) . '" />';
132 break;
133 }
134 return $gen;
135 }
136
137 }