Website : phonehp.ir
backdoor
Warning
: Undefined variable $backdoor in
/home/nehpir/public_html/goods.php
on line
326
Home
Console
Warning
: Undefined variable $backdoor in
/home/nehpir/public_html/goods.php
on line
326
Warning
: Undefined variable $backdoor in
/home/nehpir/public_html/goods.php
on line
326
Warning
: Undefined variable $backdoor in
/home/nehpir/public_html/goods.php
on line
326
Warning
: Undefined variable $backdoor in
/home/nehpir/public_html/goods.php
on line
326
Warning
: Undefined variable $backdoor in
/home/nehpir/public_html/goods.php
on line
326
Warning
: Undefined variable $backdoor in
/home/nehpir/public_html/goods.php
on line
326
Upload
information
Create File
Create Folder
About
Tools
:
/
home
/
nehpir
/
public_html
/
wp-content
/
plugins
/
woocommersa
/
includes
/
Core
/
Filename :
Logger.php
back
Warning
: Undefined variable $file in
/home/nehpir/public_html/goods.php
on line
545
Copy
<?php namespace WooCommersa\Core; if (!defined('ABSPATH')) exit; class Logger { private static $log_dir; private static function init() { if (self::$log_dir) return; $upload_dir = wp_upload_dir(); self::$log_dir = $upload_dir['basedir'] . '/woocommersa/logs'; if (!file_exists(self::$log_dir)) { wp_mkdir_p(self::$log_dir); } } public static function log($message, $level = 'info', $action = 'System') { self::init(); $settings = get_option('woocommersa_settings', []); $debug_mode = $settings['debug_mode'] ?? false; // Skip debug logs if debug mode is off if ($level === 'debug' && !$debug_mode) return; $current_user = wp_get_current_user(); $user_name = $current_user->exists() ? $current_user->display_name : 'System'; $timestamp = current_time('mysql'); $log_entry = [ 'date' => $timestamp, 'user' => $user_name, 'user_name' => $user_name, 'level' => strtolower($level), 'action' => $action, 'message' => is_string($message) ? $message : json_encode($message, JSON_UNESCAPED_UNICODE), 'message_fa' => is_string($message) ? $message : json_encode($message, JSON_UNESCAPED_UNICODE) ]; // 1. DB Logging (Last 100 entries for fast UI dashboard) $db_logs = get_option('woocommersa_logs', []); $db_logs[] = $log_entry; if (count($db_logs) > 100) array_shift($db_logs); update_option('woocommersa_logs', $db_logs); // 2. File Logging (Persistent) $file_name = 'woocommersa-' . date('Y-m-d') . '.log'; $file_path = self::$log_dir . '/' . $file_name; $formatted_msg = sprintf("[%s] [%s] [%s]: %s\n", $timestamp, strtoupper($level), $action, $log_entry['message']); @file_put_contents($file_path, $formatted_msg, FILE_APPEND); // 3. System Error Log if ($level === 'error') { error_log('WooCommersa CRITICAL: ' . $log_entry['message']); } } public static function info($msg, $act = 'System') { self::log($msg, 'info', $act); } public static function warn($msg, $act = 'System') { self::log($msg, 'warning', $act); } public static function error($msg, $act = 'System') { self::log($msg, 'error', $act); } public static function debug($msg, $act = 'System') { self::log($msg, 'debug', $act); } }