File "Tools.php"
Full Path: /home/dcqnetm/intuns/wp-content/plugins/tutor/classes/Tools.php
File size: 2.41 KB
MIME-type: text/x-php
Charset: utf-8
<?php
namespace TUTOR;
if ( ! defined( 'ABSPATH' ) )
exit;
class Tools {
public function __construct() {
add_action('tutor_action_regenerate_tutor_pages', array($this, 'regenerate_tutor_pages'));
add_action('tutor_option_save_after', array($this, 'tutor_option_save_after'));
add_action('init', array($this, 'check_if_maintenance'));
add_action('admin_init', array($this, 'redirect_to_wizard_page'));
}
/**
* Re-Generate Tutor Missing Pages
* @since v.1.4.3
*/
public function regenerate_tutor_pages(){
tutor_utils()->checking_nonce();
$tutor_pages = tutor_utils()->tutor_pages();
foreach ($tutor_pages as $page){
$visible = tutor_utils()->array_get('page_visible', $page);
$page_title = tutor_utils()->array_get('page_name', $page);
$option_key = tutor_utils()->array_get('option_key', $page);
if ( ! $visible){
$page_arg = array(
'post_title' => $page_title,
'post_content' => '',
'post_type' => 'page',
'post_status' => 'publish',
);
$page_id = wp_insert_post( $page_arg );
update_tutor_option($option_key, $page_id);
}
}
}
public function tutor_option_save_after(){
$maintenance_mode = (bool) get_tutor_option('enable_tutor_maintenance_mode');
if ($maintenance_mode){
tutor_maintenance_mode(true);
}else{
tutor_maintenance_mode();
}
}
public function check_if_maintenance(){
if ( ! is_admin() && ! $this->is_wplogin()) {
$maintenance_mode = (bool) get_tutor_option('enable_tutor_maintenance_mode');
if ( false === $maintenance_mode || current_user_can('administrator') ){
return;
}
header( 'Retry-After: 600' );
include tutor()->path.'views/maintenance.php';
die();
}
}
function is_wplogin(){
$ABSPATH_MY = str_replace(array('\\','/'), DIRECTORY_SEPARATOR, ABSPATH);
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');
}
/**
* Redirect to setup wizard page if any one click on the menu from tools page
* @since v.1.5.7
*/
public function redirect_to_wizard_page(){
if (tutor_utils()->array_get('page', $_GET) === 'tutor-tools' && tutor_utils()->array_get('sub_page', $_GET) === 'tutor-setup' ){
exit(wp_redirect(admin_url('admin.php?page=tutor-setup')));
}
}
}