HEX
Server: nginx/1.18.0
System: Linux iZj6c1ieg2jrpk1z5tzi19Z 6.3.9-1.el7.elrepo.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jun 21 22:18:40 EDT 2023 x86_64
User: www (1001)
PHP: 8.2.4
Disabled: passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Upload Files
File: /www/wwwroot/www.cytocare.cn/wp-content/plugins/mailpoet/lib/AdminPages/Pages/Logs.php
<?php // phpcs:ignore SlevomatCodingStandard.TypeHints.DeclareStrictTypes.DeclareStrictTypesMissing

namespace MailPoet\AdminPages\Pages;

if (!defined('ABSPATH')) exit;


use MailPoet\AdminPages\PageRenderer;
use MailPoet\Logging\LogRepository;
use MailPoetVendor\Carbon\Carbon;

class Logs {
  /** @var PageRenderer */
  private $pageRenderer;

  /** @var LogRepository */
  private $logRepository;

  public function __construct(
    LogRepository $logRepository,
    PageRenderer $pageRenderer
  ) {
    $this->pageRenderer = $pageRenderer;
    $this->logRepository = $logRepository;
  }

  public function render() {
    $search = isset($_GET['search']) ? sanitize_text_field(wp_unslash($_GET['search'])) : null;
    $from = isset($_GET['from']) ? sanitize_text_field(wp_unslash($_GET['from'])) : null;
    $to = isset($_GET['to']) ? sanitize_text_field(wp_unslash($_GET['to'])) : null;
    $offset = isset($_GET['offset']) ? sanitize_text_field(wp_unslash($_GET['offset'])) : null;
    $limit = isset($_GET['limit']) ? sanitize_text_field(wp_unslash($_GET['limit'])) : null;
    $dateFrom = (new Carbon())->subDays(7);
    $defaultFrom = $dateFrom->format('Y-m-d');
    if (isset($from)) {
      $dateFrom = new Carbon($from);
    }
    $dateTo = null;
    if (isset($to)) {
      $dateTo = new Carbon($to);
    }
    $logs = $this->logRepository->getLogs($dateFrom, $dateTo, $search, $offset, $limit);
    $data = [
      'logs' => [],
      'logs_default_from' => $defaultFrom,
    ];
    foreach ($logs as $log) {
      $data['logs'][] = [
        'id' => $log->getId(),
        'name' => $log->getName(),
        'message' => $log->getMessage(),
        'created_at' => ($createdAt = $log->getCreatedAt()) ? $createdAt->format('Y-m-d H:i:s') : null,
      ];
    }
    $this->pageRenderer->displayPage('logs.html', $data);
  }
}