Allow multiple accounts to register on SIP using the same email address

Handle that case in the email recovery form
This commit is contained in:
Timothée Jaussoin 2020-09-03 16:08:24 +02:00
parent bf123b764a
commit ad29ce0722
3 changed files with 20 additions and 2 deletions

View file

@ -4,6 +4,7 @@ namespace App\Http\Controllers\Account;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Validation\Rule;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Str;
use Illuminate\Support\Facades\Mail;
@ -50,13 +51,21 @@ class AuthenticateController extends Controller
public function loginEmail(Request $request)
{
return view('account.login.email');
return view('account.login.email', [
'domain' => '@' . config('app.sip_domain')
]);
}
public function authenticateEmail(Request $request)
{
$request->validate([
'email' => 'required|email|exists:external.accounts,email',
'username' => [
'required',
Rule::exists('external.accounts', 'username')->where(function ($query) use ($request) {
$query->where('email', $request->get('email'));
}),
],
'g-recaptcha-response' => 'required|captcha',
]);

View file

@ -49,7 +49,7 @@ class RegisterController extends Controller
'terms' => 'accepted',
'username' => 'required|unique:external.accounts,username|min:6',
'g-recaptcha-response' => 'required|captcha',
'email' => 'required|email|unique:external.accounts,email|confirmed'
'email' => 'required|email|confirmed'
]);
$account = new Account;

View file

@ -11,6 +11,15 @@
{!! Form::label('email', 'Email') !!}
{!! Form::email('email', old('email'), ['class' => 'form-control', 'placeholder' => 'myemail@address.org', 'required']) !!}
</div>
<div class="form-group">
{!! Form::label('username', 'SIP Username') !!}
<div class=" input-group mb-3">
{!! Form::text('username', old('username'), ['class' => 'form-control', 'placeholder' => 'username', 'required']) !!}
<div class="input-group-append">
<span class="input-group-text" id="basic-addon2">{{ $domain }}</span>
</div>
</div>
</div>
@include('parts.captcha')
{!! Form::submit('Send the authentication link', ['class' => 'btn btn-primary btn-centered']) !!}
{!! Form::close() !!}