OwlCyberSecurity - MANAGER
Edit File: Debug.php
<?php /** * Handles the parameters and url * * @package HMWP/Debug * @file The Debug file */ defined( 'ABSPATH' ) || die( 'Cheatin\' uh?' ); class HMWP_Classes_Debug { /** * Constructor for initializing WordPress filesystem and setting up debug directories and hooks. * * @return void */ public function __construct() { // Initialize WordPress Filesystem. $wp_filesystem = HMWP_Classes_ObjController::initFilesystem(); if ( defined( 'WP_CONTENT_DIR' ) ) { // If debug dir doesn't exists. if ( ! $wp_filesystem->is_dir( WP_CONTENT_DIR . '/cache/hmwp' ) ) { $wp_filesystem->mkdir( WP_CONTENT_DIR . '/cache/hmwp' ); } // If the debug dir can't be defined. if ( ! $wp_filesystem->is_dir( WP_CONTENT_DIR . '/cache/hmwp' ) ) { return; } define( '_HMWP_CACHE_DIR_', WP_CONTENT_DIR . '/cache/hmwp/' ); //Initialize debugging hooks for later use add_action( 'hmwp_debug_request', array( $this, 'hookDebugRequests' ) ); add_action( 'hmwp_debug_cache', array( $this, 'hookDebugCache' ) ); add_action( 'hmwp_debug_files', array( $this, 'hookDebugFiles' ) ); add_action( 'hmwp_debug_local_request', array( $this, 'hookDebugRequests' ) ); add_action( 'hmwp_debug_access_log', array( $this, 'hookAccessLog' ) ); } } /** * Hook to log debug requests. * * @param string $url The URL of the request being logged. * @param array $options The options for the request. * @param array $response The response received from the request. * * @return void */ public function hookDebugRequests( $url, $options = array(), $response = array() ) { // Initialize WordPress Filesystem $wp_filesystem = HMWP_Classes_ObjController::initFilesystem(); $wp_filesystem->put_contents( _HMWP_CACHE_DIR_ . 'hmwp_wpcall.log', date( 'Y-m-d H:i:s' ) . ' - ' . $url . ' - ' . json_encode( $response ) . PHP_EOL, FILE_APPEND ); } /** * Logs debugging information to the cache directory. * * @param string $data The data to be logged. * * @return void */ public function hookDebugCache( $data ) { // Initialize WordPress Filesystem $wp_filesystem = HMWP_Classes_ObjController::initFilesystem(); $wp_filesystem->put_contents( _HMWP_CACHE_DIR_ . 'rewrite.log', $data ); } /** * Hook to log debug information into filecall.log within the HMWP cache directory. * * @param string $data The debug data to be logged. * * @return void */ public function hookDebugFiles( $data ) { //Initialize WordPress Filesystem $wp_filesystem = HMWP_Classes_ObjController::initFilesystem(); $wp_filesystem->put_contents( _HMWP_CACHE_DIR_ . 'filecall.log', $data . PHP_EOL, FILE_APPEND ); } /** * Hooks into the access log by writing data to a log file within the WordPress filesystem. * * @param string $data The data to be logged. * * @return void */ public function hookAccessLog( $data ) { //Initialize WordPress Filesystem $wp_filesystem = HMWP_Classes_ObjController::initFilesystem(); $wp_filesystem->put_contents( _HMWP_CACHE_DIR_ . 'access.log', $data . PHP_EOL, FILE_APPEND ); } }