From 3e676d584b17242ef8884ed358b7cf3167f767df Mon Sep 17 00:00:00 2001 From: David Bomba Date: Tue, 6 Sep 2022 21:32:52 +1000 Subject: [PATCH] Fixes for registration fields and ensure client contact email is unique per company --- .../Auth/ContactRegisterController.php | 2 +- .../Requests/ClientPortal/RegisterRequest.php | 14 ++++++++++++-- .../portal/ninja2020/auth/register.blade.php | 16 +++++++++------- 3 files changed, 22 insertions(+), 10 deletions(-) diff --git a/app/Http/Controllers/Auth/ContactRegisterController.php b/app/Http/Controllers/Auth/ContactRegisterController.php index 4bb551017a7d..db7fc1e0c7bb 100644 --- a/app/Http/Controllers/Auth/ContactRegisterController.php +++ b/app/Http/Controllers/Auth/ContactRegisterController.php @@ -46,7 +46,7 @@ class ContactRegisterController extends Controller $t = app('translator'); $t->replace(Ninja::transformTranslations($company->settings)); - return render('auth.register', ['register_company' => $company, 'account' => $company->account]); + return render('auth.register', ['register_company' => $company, 'account' => $company->account, 'submitsForm' => false]); } public function register(RegisterRequest $request) diff --git a/app/Http/Requests/ClientPortal/RegisterRequest.php b/app/Http/Requests/ClientPortal/RegisterRequest.php index 6bd835c74417..26a0aa825315 100644 --- a/app/Http/Requests/ClientPortal/RegisterRequest.php +++ b/app/Http/Requests/ClientPortal/RegisterRequest.php @@ -1,4 +1,13 @@ company()->client_registration_fields as $field) { if ($field['required']) { - $rules[$field['key']] = ['required']; + $rules[$field['key']] = ['bail','required']; } } foreach ($rules as $field => $properties) { if ($field === 'email') { - $rules[$field] = array_merge($rules[$field], ['email:rfc,dns', 'max:255']); + $rules[$field] = array_merge($rules[$field], ['email:rfc,dns', 'max:255', Rule::unique('client_contacts')->where('company_id', $this->company()->id)]); } if ($field === 'current_password') { diff --git a/resources/views/portal/ninja2020/auth/register.blade.php b/resources/views/portal/ninja2020/auth/register.blade.php index 30b94a07629d..23fd24311345 100644 --- a/resources/views/portal/ninja2020/auth/register.blade.php +++ b/resources/views/portal/ninja2020/auth/register.blade.php @@ -2,6 +2,7 @@ @section('meta_title', ctrans('texts.register')) @section('body') +
@@ -10,7 +11,7 @@

{{ ctrans('texts.register') }}

{{ ctrans('texts.register_label') }}

-
+ @if($register_company) @endif @@ -40,15 +41,15 @@ class="input w-full" type="email" name="{{ $field['key'] }}" - value="" - {{ $field['required'] ? 'required' : '' }} /> + value="{{ old($field['key']) }}" + /> @elseif($field['key'] === 'password') + /> @elseif($field['key'] === 'country_id')