/** * @param JalaliValidator $validator */ private function registerJDateTimeRules(JalaliValidator $validator) { $this->factory->extend('jdatetime', function ($attribute, $value, $parameter) use($validator) { return $validator->validateJDateTime($attribute, $value, $parameter); }); $this->factory->extend('jdatetime_after', function ($attribute, $value, $parameter) use($validator) { return $validator->validateJDateTimeAfter($attribute, $value, $parameter); }); $this->factory->extend('jdatetime_before', function ($attribute, $value, $parameter) use($validator) { return $validator->validateJDateTimeBefore($attribute, $value, $parameter); }); $this->factory->replacer('jdatetime', function ($message, $attribute, $rule, $parameter) use($validator) { return $validator->replaceJalali($message, $attribute, $rule, $parameter); }); $this->factory->replacer('jdatetime_after', function ($message, $attribute, $rule, $parameter) use($validator) { return $validator->replaceAfterOrBefore($message, $attribute, $rule, $parameter); }); $this->factory->replacer('jdatetime_before', function ($message, $attribute, $rule, $parameter) use($validator) { return $validator->replaceAfterOrBefore($message, $attribute, $rule, $parameter); }); }