File: /home/ic3/public_html/wp-content/plugins/foxtool/main/debug.php
<?php
if ( ! defined( 'ABSPATH' ) ) { exit; }
function foxtool_debug_options_page() {
global $foxtool_debug_options;
ob_start();
?>
<div class="wrap ft-wrap">
<div class="ft-wrap-top">
<?php include( FOXTOOL_DIR . 'main/page/ft-aff-top.php'); ?>
</div>
<div class="ft-wrap2">
<div class="ft-box">
<div class="ft-menu">
<div class="ft-logo ft-logoquay">
<a class="ft-logoquaya" href="https://foxtheme.net" target="_blank">
<span><?php foxtool_logo(); ?></span>
</a>
</div>
<button class="sotab sotab-select" onclick="fttab(event, 'tab1')"><i class="fa-regular fa-square-terminal"></i> <?php _e('DEBUG', 'foxtool'); ?></button>
</div>
<div class="ft-main">
<?php
if( isset($_GET['settings-updated']) ) {
require_once( FOXTOOL_DIR . 'main/completed.php');
}
?>
<form method="post" action="options.php">
<?php settings_fields('foxtool_debug_settings_group'); ?>
<!-- DEBUG -->
<div class="sotab-box ftbox" id="tab1">
<h2><?php _e('DEBUG', 'foxtool'); ?></h2>
<div class="ft-card">
<h3><i class="fa-regular fa-ban-bug"></i> <?php _e('Debug settings', 'foxtool') ?></h3>
<p>
<label class="nut-switch">
<input type="checkbox" name="foxtool_debug_settings[debug1]" value="1" <?php if ( isset($foxtool_debug_options['debug1']) && 1 == $foxtool_debug_options['debug1'] ) echo 'checked="checked"'; ?> />
<span class="slider"></span></label>
<label class="ft-label-right"><?php _e('Enable WP_DEBUG', 'foxtool'); ?></label>
</p>
<p>
<label class="nut-switch">
<input type="checkbox" name="foxtool_debug_settings[debug2]" value="1" <?php if ( isset($foxtool_debug_options['debug2']) && 1 == $foxtool_debug_options['debug2'] ) echo 'checked="checked"'; ?> />
<span class="slider"></span></label>
<label class="ft-label-right"><?php _e('Enable WP_DEBUG_LOG', 'foxtool'); ?></label>
</p>
<p>
<label class="nut-switch">
<input type="checkbox" name="foxtool_debug_settings[debug3]" value="1" <?php if ( isset($foxtool_debug_options['debug3']) && 1 == $foxtool_debug_options['debug3'] ) echo 'checked="checked"'; ?> />
<span class="slider"></span></label>
<label class="ft-label-right"><?php _e('Enable WP_DEBUG_DISPLAY', 'foxtool'); ?></label>
</p>
<?php
if (defined('WP_DEBUG_LOG') && WP_DEBUG_LOG) {
$debug_log_path = WP_CONTENT_DIR . '/debug.log';
if (file_exists($debug_log_path)) { ?>
<p>
<div class="ft-pre-tit"><span></span><span></span><span></span></div>
<div class="ft-pre-me">
<a class="delete-debug" href="javascript:void(0)" id="delete-debug"><i class="fa-regular fa-trash"></i> <?php _e('Clear all', 'foxtool'); ?></a>
<a class="delete-debug" href="javascript:void(0)" id="load-debug"><i class="fa-regular fa-arrows-rotate"></i> <?php _e('Refresh', 'foxtool'); ?></a>
</div>
<div id="delete-debug-not"></div>
<textarea id="debug-log-content" class="ft-pre"></textarea>
</p>
<?php
} else {
echo '<div class="ebug">'. __('The debug file does not exist', 'foxtool') .'</div>';
}
} else {
echo '<div class="ebug">'. __('Debug is not enabled', 'foxtool') .'</div>';
}
?>
</div>
</div>
<div class="ft-submit">
<button type="submit"><i class="fa-regular fa-floppy-disk"></i> <?php _e('SAVE CONTENT', 'foxtool'); ?></button>
</div>
<button id="ft-save-fast" type="submit"><i class="fa-regular fa-floppy-disk"></i></button>
</form>
</div>
</div>
<div class="ft-sidebar">
<?php include( FOXTOOL_DIR . 'main/page/ft-aff.php'); ?>
</div>
</div>
</div>
<script>
jQuery(document).ready(function($) {
$('form input[type="checkbox"]').change(function() {
var currentForm = $(this).closest('form');
$.ajax({
type: 'POST',
url: currentForm.attr('action'),
data: currentForm.serialize(),
success: function(response) {
location.reload();
},
error: function() {
console.log('Error in AJAX request');
}
});
});
$('#delete-debug').on('click', function(e) {
var ajax_nonce = '<?php echo wp_create_nonce('foxtool_nonce_deldebug'); ?>';
e.preventDefault();
var data = {
'action': 'foxtool_clear_debug_log',
'security': ajax_nonce,
};
$.post(ajaxurl, data, function(response) {
if (response.success) {
$('#delete-debug-not').html('<span><?php _e("Cleaned the screen", "foxtool"); ?></span>');
loadDebugLog();
} else {
$('#delete-debug-not').html('<span><?php _e("Error cannot be cleaned", "foxtool"); ?></span>');
}
});
});
$('#load-debug').on('click', function(e) {
e.preventDefault();
$('#delete-debug-not').html('<span><?php _e("Screen refreshed", "foxtool"); ?></span>');
loadDebugLog();
});
function loadDebugLog(){
var ajax_nonce = '<?php echo wp_create_nonce('foxtool_nonce_getdebug'); ?>';
var data = {
action: 'foxtool_get_debug_log',
security: ajax_nonce
};
$.post(ajaxurl, data, function(response) {
if (response.success) {
$('#debug-log-content').val(response.data);
} else {
alert(response.data);
}
});
}
loadDebugLog();
});
</script>
<?php
// style foxtool
require_once( FOXTOOL_DIR . 'main/style.php');
echo ob_get_clean();
}
function foxtool_debug_options_link() {
add_submenu_page ('foxtool-options', 'Debug', '<i class="fa-regular fa-gear" style="width:20px;"></i> '. __('Debug', 'foxtool'), 'manage_options', 'foxtool-debug-options', 'foxtool_debug_options_page');
}
add_action('admin_menu', 'foxtool_debug_options_link');
function foxtool_debug_register_settings() {
register_setting('foxtool_debug_settings_group', 'foxtool_debug_settings');
}
add_action('admin_init', 'foxtool_debug_register_settings');
// clear cache
function foxtool_debug_settings_cache($old_value, $value) {
wp_cache_delete('foxtool_debug_settings', 'options');
}
add_action('update_option_foxtool_debug_settings', 'foxtool_debug_settings_cache', 10, 2);