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/Newsletter/NewsletterCoupon.php
<?php declare(strict_types = 1);

namespace MailPoet\Newsletter;

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


use MailPoet\Newsletter\Renderer\Blocks\Coupon;

class NewsletterCoupon {
  public function cleanupBodySensitiveData(array $newsletterBody): array {

    if (!is_array($newsletterBody) || empty($newsletterBody['content'])) {
      return $newsletterBody;
    }
    $cleanBlocks = $this->cleanupCouponBlocks($newsletterBody['content']['blocks']);
    return array_merge(
      $newsletterBody,
      [
        'content' => array_merge(
          $newsletterBody['content'],
          ['blocks' => $cleanBlocks]
        ),
      ]
    );
  }

  private function cleanupCouponBlocks(array &$blocks): array {
    foreach ($blocks as &$block) {
      if (isset($block['blocks']) && !empty($block['blocks'])) {
        $this->cleanupCouponBlocks($block['blocks']);
      }

      if (isset($block['type']) && $block['type'] === Coupon::TYPE) {
        $block['code'] = Coupon::CODE_PLACEHOLDER;

        if(isset($block['couponId']))
          unset($block['couponId']);
      }
    }
    return $blocks;
  }
}