App\Models\Forum\TopicPoll::isValid PHP Method

isValid() public method

public isValid ( $revalidate = false )
    public function isValid($revalidate = false)
    {
        if (!$this->validated || $revalidate) {
            $this->validated = true;
            $this->validationErrors()->reset();
            if (!isset($this->params['title']) || !present($this->params['title'])) {
                $this->validationErrors()->add('title', 'required');
            }
            if (count($this->params['options']) < count(array_unique($this->params['options']))) {
                $this->validationErrors()->add('options', '.duplicate_options');
            }
            if (count($this->params['options']) < 2) {
                $this->validationErrors()->add('options', '.minimum_two_options');
            }
            if (count($this->params['options']) > 10) {
                $this->validationErrors()->add('options', '.too_many_options');
            }
            if ($this->params['max_options'] < 1) {
                $this->validationErrors()->add('max_options', '.minimum_one_selection');
            }
            if ($this->params['max_options'] > count($this->params['options'])) {
                $this->validationErrors()->add('max_options', '.invalid_max_options');
            }
        }
        return $this->validationErrors()->isAny();
    }