PluginProbe
Tutor LMS – eLearning and online course solution / 1.5.7
Tutor LMS – eLearning and online course solution v1.5.7
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 | classes/Tools.php +68 -104 trunk1.5.7 View file →
@@ -1,146 +1,110 @@
1 1 <?php
2 -/**
3 - * Options for TutorLMS
4 - *
5 - * @package Tutor\Tools
6 - * @author Themeum <support@themeum.com>
7 - * @link https://themeum.com
8 - * @since 1.0.0
9 - */
10 2
11 3 namespace TUTOR;
12 4
13 -if ( ! defined( 'ABSPATH' ) ) {
5 +if ( ! defined( 'ABSPATH' ) )
14 6 exit;
15 -}
16 7
17 -use TUTOR\Input;
18 8
19 -/**
20 - * Tools class
21 - *
22 - * @since 1.0.0
23 - */
24 9 class Tools {
25 10
26 - /**
27 - * Register hooks
28 - *
29 - * @since 1.0.0
30 - */
31 11 public function __construct() {
32 - add_action( 'tutor_action_regenerate_tutor_pages', array( $this, 'regenerate_tutor_pages' ) );
12 + //add_action('tutor_once_in_day_run_schedule', array($this, 'delete_auto_draft_posts'));
13 + add_action('tutor_action_regenerate_tutor_pages', array($this, 'regenerate_tutor_pages'));
33 14
34 - add_action( 'tutor_option_save_after', array( $this, 'tutor_option_save_after' ) );
35 - add_action( 'init', array( $this, 'check_if_maintenance' ) );
36 15
37 - add_action( 'admin_init', array( $this, 'redirect_to_wizard_page' ) );
16 + add_action('tutor_option_save_after', array($this, 'tutor_option_save_after'));
17 + add_action('init', array($this, 'check_if_maintenance'));
18 +
19 + /**
20 + * Add setup wizard link in the tools menu
21 + * @since v.1.5.7
22 + */
23 + add_filter('tutor_tool_pages', array($this, 'tutor_tool_pages_add_wizard'));
24 + add_action('admin_init', array($this, 'redirect_to_wizard_page'));
38 25 }
39 26
40 27 /**
41 28 * Re-Generate Tutor Missing Pages
42 - *
43 - * @since 1.4.3
29 + * @since v.1.4.3
44 30 */
45 - public function regenerate_tutor_pages() {
46 - tutor_utils()->checking_nonce();
31 + public function regenerate_tutor_pages(){
32 + tutils()->checking_nonce();
47 33
48 - $tutor_pages = tutor_utils()->tutor_pages();
34 + $tutor_pages = tutils()->tutor_pages();
35 +
36 + foreach ($tutor_pages as $page){
37 + $visible = tutils()->array_get('page_visible', $page);
38 + $page_title = tutils()->array_get('page_name', $page);
39 + $option_key = tutils()->array_get('option_key', $page);
49 40
50 - foreach ( $tutor_pages as $page ) {
51 - $visible = tutor_utils()->array_get( 'page_visible', $page );
52 - $page_title = tutor_utils()->array_get( 'page_name', $page );
53 - $option_key = tutor_utils()->array_get( 'option_key', $page );
54 - $page_id = tutor_utils()->array_get( 'page_id', $page );
55 -
56 - $page_content = '';
57 - if ( 'tutor_login_page' === $option_key ) {
58 - $page_content = '[tutor_login]';
59 - }
60 -
61 - if ( 'membership_pricing_page_id' === $option_key ) {
62 - $page_content = '[tutor_membership_pricing]';
63 - }
64 -
65 - if ( ! $visible ) {
41 + if ( ! $visible){
66 42 $page_arg = array(
67 - 'ID' => $page_id,
68 - 'post_title' => $page_title,
69 - 'post_content' => $page_content,
70 - 'post_type' => 'page',
71 - 'post_status' => 'publish',
43 + 'post_title' => $page_title,
44 + 'post_content' => '',
45 + 'post_type' => 'page',
46 + 'post_status' => 'publish',
72 47 );
73 - $page_id = wp_insert_post( $page_arg );
74 - update_tutor_option( $option_key, $page_id );
48 + $page_id = wp_insert_post( $page_arg );
49 + update_tutor_option($option_key, $page_id);
75 50 }
76 51 }
77 52 }
78 53
79 54 /**
80 - * Handler after tutor option save
81 - *
82 - * @since 1.0.0
83 - *
84 - * @return void
55 + * Enable Maintenance Mode
85 56 */
86 - public function tutor_option_save_after() {
87 - $maintenance_mode = (bool) get_tutor_option( 'enable_tutor_maintenance_mode' );
88 - if ( $maintenance_mode ) {
89 - tutor_maintenance_mode( true );
90 - } else {
57 +
58 + public function tutor_option_save_after(){
59 + $maintenance_mode = (bool) get_tutor_option('enable_tutor_maintenance_mode');
60 + if ($maintenance_mode){
61 + tutor_maintenance_mode(true);
62 + }else{
91 63 tutor_maintenance_mode();
92 64 }
93 65 }
94 66
95 - /**
96 - * Check if maintenance mode
97 - *
98 - * @since 1.0.0
99 - *
100 - * @return void
101 - */
102 - public function check_if_maintenance() {
103 - if ( ! is_admin() && ! $this->is_wplogin() ) {
67 + public function check_if_maintenance(){
68 + if ( ! is_admin() && ! $this->is_wplogin()) {
104 69 $maintenance_mode = (bool) get_tutor_option( 'enable_tutor_maintenance_mode' );
105 - if ( false === $maintenance_mode || current_user_can( 'administrator' ) ) {
70 + if ( ! $maintenance_mode){
106 71 return;
107 72 }
73 +
108 74 header( 'Retry-After: 600' );
109 - include tutor()->path . 'views/maintenance.php';
75 + include tutor()->path.'views/maintenance.php';
110 76 die();
111 77 }
112 78 }
113 79
114 - /**
115 - * Check if wp_login
116 - *
117 - * @since 1.0.0
118 - *
119 - * @return boolean
120 - */
121 - public function is_wplogin() {
122 - $abs_path = str_replace( array( '\\', '/' ), DIRECTORY_SEPARATOR, ABSPATH );
123 - return (
124 - ( in_array( $abs_path . 'wp-login.php', get_included_files() ) || in_array( $abs_path . 'wp-register.php', get_included_files() ) )
125 - ||
126 - ( isset( $GLOBALS['pagenow'] ) && 'wp-login.php' === $GLOBALS['pagenow'] )
127 - ||
128 - ( isset( $_SERVER['PHP_SELF'] ) && '/wp-login.php' === $_SERVER['PHP_SELF'] )
129 - );
80 + function is_wplogin(){
81 + $ABSPATH_MY = str_replace(array('\\','/'), DIRECTORY_SEPARATOR, ABSPATH);
82 + return ((in_array($ABSPATH_MY.'wp-login.php', get_included_files()) || in_array($ABSPATH_MY.'wp-register.php', get_included_files()) ) || (isset($_GLOBALS['pagenow']) && $GLOBALS['pagenow'] === 'wp-login.php') || $_SERVER['PHP_SELF']== '/wp-login.php');
130 83 }
131 84
132 - /**
133 - * Redirect to setup wizard page if any one click on the menu from tools page
134 - *
135 - * @since 1.5.7
136 - *
137 - * @return void
138 - */
139 - public function redirect_to_wizard_page() {
140 - if ( Input::get( 'page' ) === 'tutor-tools' && Input::get( 'sub_page' ) === 'tutor-setup' ) {
141 - wp_safe_redirect( admin_url( 'admin.php?page=tutor-setup' ) );
142 - exit();
143 - }
144 - }
85 + /**
86 + * @param $pages
87 + * @return mixed
88 + *
89 + * Add Setup wizard menu
90 + *
91 + * @since v.1.5.7
92 + */
145 93
146 -}
94 + public function tutor_tool_pages_add_wizard($pages){
95 + $pages['tutor-setup'] = __('Setup Wizard', 'tutor');
96 + return $pages;
97 + }
98 +
99 + /**
100 + * Redirect to setup wizard page if any one click on the menu from tools page
101 + * @since v.1.5.7
102 + */
103 + public function redirect_to_wizard_page(){
104 + if (tutils()->array_get('page', $_GET) === 'tutor-tools' && tutils()->array_get('sub_page', $_GET) === 'tutor-setup' ){
105 + exit(wp_redirect(admin_url('admin.php?page=tutor-setup')));
106 + }
107 + }
108 +
109 +
110 +}