HEX
Server: LiteSpeed
System: Linux premium267.web-hosting.com 4.18.0-553.54.1.lve.el8.x86_64 #1 SMP Wed Jun 4 13:01:13 UTC 2025 x86_64
User: predezso (1249)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: /home/predezso/samashtimedia.com/wp-content/plugins/ultimate-410/src/RuleTester.php
<?php

namespace TinyWeb\Ultimate410;

class RuleTester
{
    private $regex;
    private $rule;

    public function __construct(\stdClass $obj)
    {
        $this->regex = (bool)$obj->regex;
        $this->rule  = $obj->request;
    }

    public function test($request)
    {
        if ($this->regex) {
            return (bool)(preg_match($this->rule, $request) ?: preg_match($this->rule, urldecode($request)));
        }

        if (str_contains($this->rule, "'")) {
            $this->rule = preg_replace("/((?<!\\\)')/", '\\\'', $this->rule);
        }

        return strcasecmp($request, $this->rule) === 0
               || strcasecmp(urldecode($request), $this->rule) === 0
               || strcasecmp(urldecode($request), urldecode(Plugin::sanitize($this->rule))) === 0;
    }
}