From b54433a9baadd340a6f7a9f34d0f58f59fbbdcaf Mon Sep 17 00:00:00 2001 From: khfiii Date: Sat, 25 Nov 2023 00:08:18 +0800 Subject: [PATCH 1/4] Add combobox for role --- public/build/manifest.json | 2 +- .../views/website/pages/register.blade.php | 28 ++++++++++++++++++- 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/public/build/manifest.json b/public/build/manifest.json index e4ebabf01..e803d3f3a 100644 --- a/public/build/manifest.json +++ b/public/build/manifest.json @@ -14,7 +14,7 @@ "src": "resources/panel/js/panel.js" }, "resources/website/css/website.css": { - "file": "assets/website-26806a4d.css", + "file": "assets/website-63fa72ce.css", "isEntry": true, "src": "resources/website/css/website.css" }, diff --git a/resources/views/website/pages/register.blade.php b/resources/views/website/pages/register.blade.php index 1a6b34506..1042b021a 100644 --- a/resources/views/website/pages/register.blade.php +++ b/resources/views/website/pages/register.blade.php @@ -54,6 +54,7 @@ @enderror +
@enderror + +
+ + +
+
+ Author + +
+ +
+ Participant + +
+ +
+ Reviewer + +
+
+ +
+
- \ No newline at end of file + From 198471087bcdb6fad187fc80289d4531f4678405 Mon Sep 17 00:00:00 2001 From: khfiii Date: Sat, 25 Nov 2023 11:33:55 +0800 Subject: [PATCH 2/4] Improve register user --- app/Website/Pages/Register.php | 11 +- public/build/manifest.json | 2 +- .../views/website/pages/register.blade.php | 260 +++++++++--------- 3 files changed, 142 insertions(+), 131 deletions(-) diff --git a/app/Website/Pages/Register.php b/app/Website/Pages/Register.php index 9f44b3774..fa6af5957 100644 --- a/app/Website/Pages/Register.php +++ b/app/Website/Pages/Register.php @@ -3,6 +3,7 @@ namespace App\Website\Pages; use App\Actions\User\UserCreateAction; +use App\Models\Enums\UserRole; use DanHarrin\LivewireRateLimiting\WithRateLimiting; use Filament\Facades\Filament; use Filament\Http\Responses\Auth\Contracts\RegistrationResponse; @@ -42,6 +43,9 @@ class Register extends Page #[Rule('required')] public $privacy_statement_agree = false; + #[Rule('required')] + public $selfAssignRole = []; + public function mount() { if (Filament::auth()->check()) { @@ -61,6 +65,7 @@ protected function getViewData(): array { return [ 'countries' => Country::all(), + 'roles' => UserRole::selfAssignedRoleNames() ]; } @@ -73,7 +78,11 @@ public function register() 'meta' => Arr::only($data, ['affiliation', 'country']), ]); - event(new Registered($user)); + if (data_get($data, 'selfAssignRole')) { + $user->assignRole($data['selfAssignRole']); + } + + // event(new Registered($user)); Filament::auth()->login($user); diff --git a/public/build/manifest.json b/public/build/manifest.json index e803d3f3a..773c279d1 100644 --- a/public/build/manifest.json +++ b/public/build/manifest.json @@ -14,7 +14,7 @@ "src": "resources/panel/js/panel.js" }, "resources/website/css/website.css": { - "file": "assets/website-63fa72ce.css", + "file": "assets/website-f95a0b4f.css", "isEntry": true, "src": "resources/website/css/website.css" }, diff --git a/resources/views/website/pages/register.blade.php b/resources/views/website/pages/register.blade.php index 1042b021a..264699aa7 100644 --- a/resources/views/website/pages/register.blade.php +++ b/resources/views/website/pages/register.blade.php @@ -2,145 +2,147 @@

{{ $this->getTitle() }}

- @if(setting('allow_registration')) -
-
-
- - - @error('given_name') -
- {{ $message }} -
- @enderror -
-
- - - @error('family_name') -
- {{ $message }} -
- @enderror -
-
- - - @error('affiliation') -
- {{ $message }} -
- @enderror -
-
- - - @error('country') -
- {{ $message }} -
- @enderror -
- -
- - - @error('email') -
- {{ $message }} -
- @enderror -
-
- - - @error('password') -
- {{ $message }} -
- @enderror -
-
- - - @error('password_confirmation') -
- {{ $message }} -
- @enderror -
+ @if (setting('allow_registration')) + +
+
+ + + @error('given_name') +
+ {{ $message }} +
+ @enderror +
+
+ + + @error('family_name') +
+ {{ $message }} +
+ @enderror +
+
+ + + @error('affiliation') +
+ {{ $message }} +
+ @enderror +
+
+ + + @error('country') +
+ {{ $message }} +
+ @enderror +
-
- +
+ + + @error('email') +
+ {{ $message }} +
+ @enderror +
+
+ + + @error('password') +
+ {{ $message }} +
+ @enderror +
+
+ + + @error('password_confirmation') +
+ {{ $message }} +
+ @enderror +
-
-
- Author - -
+
+ -
- Participant - +
+ @foreach ($roles as $role) +
+ +
+ @endforeach + @error('selfAssignRole') +
+ {{ $message }} +
+ @enderror
+
-
- Reviewer - +
+
+
+ @error('password_confirmation') +
+ {{ $message }} +
+ @enderror
-
- -
-
- -
- @error('password_confirmation') -
- {{ $message }} -
- @enderror +
+ + + Login +
-
-
- - - Login - -
- + @else

This conference is currently closing user registrations

@endif
- + From 32665c107f240f799066ff8d3c8c856f0aa19c97 Mon Sep 17 00:00:00 2001 From: khfiii Date: Sat, 25 Nov 2023 14:11:01 +0800 Subject: [PATCH 3/4] Adjust style --- .../views/website/pages/register.blade.php | 35 ++++++++----------- 1 file changed, 15 insertions(+), 20 deletions(-) diff --git a/resources/views/website/pages/register.blade.php b/resources/views/website/pages/register.blade.php index 264699aa7..d3dfc1a86 100644 --- a/resources/views/website/pages/register.blade.php +++ b/resources/views/website/pages/register.blade.php @@ -89,27 +89,22 @@ @enderror
-
- - -
- @foreach ($roles as $role) -
- -
- @endforeach - @error('selfAssignRole') -
- {{ $message }} +
+ + @foreach ($roles as $role) +
+
+ +
- @enderror -
+
+ @endforeach + @error('selfAssignRole') +
+ {{ $message }} +
+ @enderror
From d5c687d37448ac2829ddef203cc62e6776011ff9 Mon Sep 17 00:00:00 2001 From: rahmanramsi Date: Sat, 25 Nov 2023 07:27:11 +0000 Subject: [PATCH 4/4] chore: fix code style --- app/Website/Pages/Register.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Website/Pages/Register.php b/app/Website/Pages/Register.php index fa6af5957..797d5d46e 100644 --- a/app/Website/Pages/Register.php +++ b/app/Website/Pages/Register.php @@ -65,7 +65,7 @@ protected function getViewData(): array { return [ 'countries' => Country::all(), - 'roles' => UserRole::selfAssignedRoleNames() + 'roles' => UserRole::selfAssignedRoleNames(), ]; }