[ Avaa Bypassed ]




Upload:

Command:

hmhc3928@18.119.167.62: ~ $
<?php declare(strict_types = 1);

namespace MailPoet\Captcha;

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


use MailPoet\Router\Endpoints\Captcha as CaptchaEndpoint;
use MailPoet\Router\Router;
use MailPoet\Settings\SettingsController;
use MailPoet\WP\Functions as WPFunctions;

class CaptchaUrlFactory {
  private WPFunctions $wp;
  private SettingsController $settings;

  const REFERER_MP_FORM = 'mp_form';
  const REFERER_WP_FORM = 'wp_register_form';
  const REFERER_WC_FORM = 'wc_register_form';

  public function __construct(
    WPFunctions $wp,
    SettingsController $settings
  ) {
    $this->wp = $wp;
    $this->settings = $settings;
  }

  public function getCaptchaUrl(array $data) {
    return $this->getUrl(CaptchaEndpoint::ACTION_RENDER, $data);
  }

  public function getCaptchaUrlForMPForm(string $sessionId) {
    $data = [
      'captcha_session_id' => $sessionId,
      'referrer_form' => self::REFERER_MP_FORM,
    ];

    return $this->getCaptchaUrl($data);
  }

  public function getCaptchaImageUrl(int $width, int $height, string $sessionId) {
    return $this->getUrl(
      CaptchaEndpoint::ACTION_IMAGE,
      [
        'width' => $width,
        'height' => $height,
        'captcha_session_id' => $sessionId,
      ]
    );
  }

  public function getCaptchaAudioUrl(string $sessionId) {
    return $this->getUrl(
      CaptchaEndpoint::ACTION_AUDIO,
      [
        'cacheBust' => time(),
        'captcha_session_id' => $sessionId,
      ]
    );
  }

  private function getUrl(string $action, array $data) {
    $post = $this->wp->getPost($this->settings->get('subscription.pages.captcha'));
    $url = $this->wp->getPermalink($post);

    $params = [
      Router::NAME,
      'endpoint=' . CaptchaEndpoint::ENDPOINT,
      'action=' . $action,
      'data=' . Router::encodeRequestData($data),
    ];

    $url .= (parse_url($url, PHP_URL_QUERY) ? '&' : '?') . join('&', $params);
    return $url;
  }
}

Filemanager

Name Type Size Permission Actions
Validator Folder 0755
CaptchaConstants.php File 664 B 0644
CaptchaFormRenderer.php File 8.26 KB 0644
CaptchaHooks.php File 3 KB 0644
CaptchaPhrase.php File 891 B 0644
CaptchaRenderer.php File 2.35 KB 0644
CaptchaSession.php File 1.63 KB 0644
CaptchaUrlFactory.php File 1.88 KB 0644
PageRenderer.php File 2.12 KB 0644
ReCaptchaRenderer.php File 1.08 KB 0644
ReCaptchaValidator.php File 1.67 KB 0644
index.php File 6 B 0644