From 7b7a1bcbd4315a2398a2a6e390b2e5122a2fb24b Mon Sep 17 00:00:00 2001 From: Duncan McClean Date: Thu, 10 Dec 2020 15:13:25 +0000 Subject: [PATCH] Add UserBlueprintEvent (#2983) --- src/Auth/UserRepository.php | 7 ++++++- src/Events/UserBlueprintFound.php | 13 +++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 src/Events/UserBlueprintFound.php diff --git a/src/Auth/UserRepository.php b/src/Auth/UserRepository.php index 2074769292..4d471b4218 100644 --- a/src/Auth/UserRepository.php +++ b/src/Auth/UserRepository.php @@ -4,6 +4,7 @@ use Statamic\Contracts\Auth\User; use Statamic\Contracts\Auth\UserRepository as RepositoryContract; +use Statamic\Events\UserBlueprintFound; use Statamic\Facades\Blueprint; use Statamic\OAuth\Provider; @@ -47,12 +48,16 @@ public function userGroupRepository() public function blueprint() { - return Blueprint::find('user') ?? Blueprint::makeFromFields([ + $blueprint = Blueprint::find('user') ?? Blueprint::makeFromFields([ 'name' => ['type' => 'text', 'display' => 'Name'], 'email' => ['type' => 'text', 'input_type' => 'email', 'display' => 'Email Address'], 'roles' => ['type' => 'user_roles', 'width' => 50], 'groups' => ['type' => 'user_groups', 'width' => 50], ])->setHandle('user'); + + UserBlueprintFound::dispatch($blueprint); + + return $blueprint; } public function findByOAuthId(string $provider, string $id): ?User diff --git a/src/Events/UserBlueprintFound.php b/src/Events/UserBlueprintFound.php new file mode 100644 index 0000000000..fca469473b --- /dev/null +++ b/src/Events/UserBlueprintFound.php @@ -0,0 +1,13 @@ +blueprint = $blueprint; + } +}