Proyectos de Subversion LeadersLinked - Backend

Rev

Autoría | Ultima modificación | Ver Log |

<?php

declare(strict_types=1);

namespace LeadersLinked\Validator;

use Laminas\Validator\AbstractValidator;
use Laminas\Validator\GreaterThan;
use Laminas\Stdlib\ArrayUtils;
use Traversable;


class GreaterThanOtherField extends GreaterThan
{
    /**
     *
     * @var string
     */
    protected $token;
    
    /**
     *
     * @var bool
     */
    protected $inclusive;
    
    public function __construct($options = null)
    {
   
        if (! array_key_exists('token', $options)) {
            throw new \InvalidArgumentException("Missing option 'token'");
        }

        $this->token        =  $options['token'];
        $options = [
            'min' => 0,
            'inclusive' => false,
        ];

        parent::__construct($options);
    }
    
    public function isValid($value, $context = null)
    {
        $min = isset($context[$this->token]) ? $context[$this->token] : 0;
        $this->setMin($min);
        
       
        return parent::isValid($value);
        
    }
}