From a599e1c089ad72b27e187ca9a491da2035e045ad Mon Sep 17 00:00:00 2001 From: victorbalssa Date: Fri, 15 Apr 2022 17:38:29 -0700 Subject: [PATCH] [ADD] new URI Rule to validate URI and use it to RedirectRule --- src/Http/Rules/RedirectRule.php | 5 +++-- src/Http/Rules/UriRule.php | 28 ++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 src/Http/Rules/UriRule.php diff --git a/src/Http/Rules/RedirectRule.php b/src/Http/Rules/RedirectRule.php index dd8b99720..ab0346c23 100644 --- a/src/Http/Rules/RedirectRule.php +++ b/src/Http/Rules/RedirectRule.php @@ -4,6 +4,7 @@ use Illuminate\Contracts\Validation\Factory; use Illuminate\Contracts\Validation\Rule; +use Laravel\Passport\Http\Rules\UriRule; class RedirectRule implements Rule { @@ -31,7 +32,7 @@ public function __construct(Factory $validator) public function passes($attribute, $value) { foreach (explode(',', $value) as $redirect) { - $validator = $this->validator->make(['redirect' => $redirect], ['redirect' => 'url']); + $validator = $this->validator->make(['redirect' => $redirect], ['redirect' => new UriRule]); if ($validator->fails()) { return false; @@ -46,6 +47,6 @@ public function passes($attribute, $value) */ public function message() { - return 'One or more redirects have an invalid url format.'; + return 'One or more redirects have an invalid URI format.'; } } diff --git a/src/Http/Rules/UriRule.php b/src/Http/Rules/UriRule.php new file mode 100644 index 000000000..f6d02c65e --- /dev/null +++ b/src/Http/Rules/UriRule.php @@ -0,0 +1,28 @@ +