PluginProbe
Tutor LMS – eLearning and online course solution / 1.8.10
Tutor LMS – eLearning and online course solution v1.8.10
4.0.7 4.0.6 4.0.5 4.0.4 4.0.3 4.0.2 4.0.1 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 All 191 releases
← All changes | tutor.php +92 -38 trunk1.8.10 View file →
@@ -1,63 +1,117 @@
1 1 <?php
2 +/*
3 +Plugin Name: Tutor LMS
4 +Plugin URI: https://www.themeum.com/product/tutor-lms/
5 +Description: Tutor is a complete solution for creating a Learning Management System in WordPress way. It can help you to create small to large scale online education site very conveniently. Power features like report, certificate, course preview, private file sharing make Tutor a robust plugin for any educational institutes.
6 +Author: Themeum
7 +Version: 1.8.10
8 +Author URI: https://themeum.com
9 +Requires at least: 4.5
10 +Tested up to: 5.7
11 +License: GPLv2 or later
12 +Text Domain: tutor
13 +*/
14 +if ( ! defined( 'ABSPATH' ) )
15 + exit;
16 +
2 17 /**
3 - * Plugin Name: Tutor LMS
4 - * Plugin URI: https://tutorlms.com
5 - * Description: Build and manage professional online courses with unlimited lessons, a flexible quiz engine, and a complete student learning experience. No coding needed.
6 - * Author: Themeum
7 - * Version: 4.0.7
8 - * Author URI: https://themeum.com
9 - * Requires PHP: 7.4
10 - * Requires at least: 5.3
11 - * Tested up to: 7.0
12 - * License: GPLv2 or later
13 - * Text Domain: tutor
18 + * Defined the tutor main file
19 + */
20 +define( 'TUTOR_VERSION', '1.8.10' );
21 +define( 'TUTOR_FILE', __FILE__ );
22 +
23 +/**
24 + * Load tutor text domain for translation
25 + */
26 +add_action( 'init', 'tutor_language_load' );
27 +function tutor_language_load() {
28 + load_plugin_textdomain( 'tutor', false, basename( dirname( __FILE__ ) ) . '/languages' );
29 +}
30 +
31 +/**
32 + * Tutor Helper function
14 33 *
15 - * @package Tutor
34 + * @since v.1.0.0
16 35 */
17 36
18 -use TUTOR\Tutor;
37 +if ( ! function_exists('tutor') ) {
38 + function tutor() {
39 + $path = plugin_dir_path( TUTOR_FILE );
40 + $hasPro = defined('TUTOR_PRO_VERSION');
19 41
20 -defined( 'ABSPATH' ) || exit;
42 + $info = array(
43 + 'path' => $path,
44 + 'url' => plugin_dir_url( TUTOR_FILE ),
45 + 'basename' => plugin_basename( TUTOR_FILE ),
46 + 'version' => TUTOR_VERSION,
47 + 'nonce_action' => 'tutor_nonce_action',
48 + 'nonce' => '_tutor_nonce',
49 + 'course_post_type' => apply_filters( 'tutor_course_post_type', 'courses' ),
50 + 'lesson_post_type' => apply_filters( 'tutor_lesson_post_type', 'lesson' ),
51 + 'instructor_role' => apply_filters( 'tutor_instructor_role', 'tutor_instructor' ),
52 + 'instructor_role_name' => apply_filters( 'tutor_instructor_role_name', __( 'Tutor Instructor', 'tutor' ) ),
53 + 'template_path' => apply_filters( 'tutor_template_path', 'tutor/' ),
54 + 'has_pro' => apply_filters( 'tutor_has_pro', $hasPro),
55 + );
21 56
22 -require_once __DIR__ . '/vendor/autoload.php';
57 + return (object) $info;
58 + }
59 +}
23 60
61 +if ( ! class_exists('Tutor') ) {
62 + include_once 'classes/Tutor.php';
63 +}
64 +
24 65 /**
25 - * Constants for tutor plugin.
66 + * @return \TUTOR\Utils
26 67 *
27 - * @since 1.0.0
68 + * Get all helper functions/methods
69 + *
28 70 */
29 -define( 'TUTOR_VERSION', '4.0.7' );
30 -define( 'TUTOR_FILE', __FILE__ );
31 -define( 'TUTOR_ENV', 'PROD' ); // DEV || PROD.
32 71
72 +if ( ! class_exists('\TUTOR\Utils') ) {
73 + include_once 'classes/Utils.php';
74 +}
75 +
76 +if ( ! function_exists('tutor_utils') ) {
77 + function tutor_utils() {
78 + return new \TUTOR\Utils();
79 + }
80 +}
81 +
33 82 /**
34 - * Load text domain for translations.
83 + * @return \TUTOR\Utils
35 84 *
36 - * @since 1.0.0
85 + * alis of tutor_utils()
86 + *
87 + * @since v.1.3.4
37 88 */
38 -add_action( 'init', fn () => load_plugin_textdomain( 'tutor', false, basename( __DIR__ ) . '/languages' ) );
39 89
90 +if ( ! function_exists('tutils') ) {
91 + function tutils() {
92 + return tutor_utils();
93 + }
94 +}
95 +
40 96 /**
41 97 * Do some task during activation
98 + * @moved here from Tutor Class
99 + * @since v.1.5.2
100 + */
101 +register_activation_hook( TUTOR_FILE, array('\TUTOR\Tutor', 'tutor_activate') );
102 +register_deactivation_hook( TUTOR_FILE, array('\TUTOR\Tutor', 'tutor_deactivation') );
103 +
104 +/**
105 + * @return null|\TUTOR\Tutor
106 + * Run main instance of the Tutor
42 107 *
43 - * @since 1.5.2
44 - * @since 2.6.2 Uninstall hook registered
108 + * @since v.1.2.0
45 109 */
46 -register_activation_hook( TUTOR_FILE, array( Tutor::class, 'tutor_activate' ) );
47 -register_deactivation_hook( TUTOR_FILE, array( Tutor::class, 'tutor_deactivation' ) );
48 -register_uninstall_hook( TUTOR_FILE, array( Tutor::class, 'tutor_uninstall' ) );
49 -
50 -if ( ! function_exists( 'tutor_lms' ) ) {
51 - /**
52 - * Run main instance of the Tutor
53 - *
54 - * @since 1.2.0
55 - *
56 - * @return Tutor
57 - */
110 +if ( ! function_exists('tutor_lms') ) {
58 111 function tutor_lms() {
59 - return Tutor::get_instance();
112 + return \TUTOR\Tutor::instance();
60 113 }
61 114 }
62 115
116 +//add_action('plugins_loaded', 'tutor_lms');
63 117 $GLOBALS['tutor'] = tutor_lms();