From 19ca0bfffe3398ec7485843a8c280837d10efc5a Mon Sep 17 00:00:00 2001 From: Sean Delaney Date: Thu, 23 Jun 2022 19:06:30 +0100 Subject: [PATCH] fix(#141): Added defineRules to CalendarModel so users can define their validation rulesets --- packages/plugin/src/Models/CalendarModel.php | 26 ++++++++++++++++---- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/packages/plugin/src/Models/CalendarModel.php b/packages/plugin/src/Models/CalendarModel.php index 6c48f4c9..a2e6bff0 100644 --- a/packages/plugin/src/Models/CalendarModel.php +++ b/packages/plugin/src/Models/CalendarModel.php @@ -273,13 +273,29 @@ public function jsonSerialize(): array public function rules(): array { - return [ - [['titleFormat'], 'required', 'when' => function (self $model) { + return $this->defineRules(); + } + + public function defineRules(): array + { + $rules = parent::defineRules(); + + $rules[] = [ + ['titleFormat'], + 'required', + 'when' => function (self $model) { return !$model->hasTitleField; - }], - [['titleLabel'], 'required', 'when' => function (self $model) { + } + ]; + + $rules[] = [ + ['titleLabel'], + 'required', + 'when' => function (self $model) { return $model->hasTitleField; - }], + } ]; + + return $rules; } }