fix: ensure invitation feature is disabled when registrations are not
Signed-off-by: Miguel Nogueira <me@nogueira.codes>
This commit is contained in:
@@ -2,7 +2,10 @@
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Http\Requests\ApproveInviteRequest;
|
||||
use App\Http\Requests\DenyInviteRequest;
|
||||
use App\Http\Requests\InvitationRequest;
|
||||
use App\Http\Requests\ValidateInviteRequest;
|
||||
use App\Invitation;
|
||||
use App\Mail\InviteApprovedMail;
|
||||
use App\Mail\InvitedToApp;
|
||||
@@ -60,7 +63,7 @@ class InvitationController extends Controller
|
||||
return redirect()->back();
|
||||
}
|
||||
|
||||
public function approveInvite(Request $request, Invitation $invitation)
|
||||
public function approveInvite(ApproveInviteRequest $request, Invitation $invitation)
|
||||
{
|
||||
$approvableStates = [
|
||||
'pending'
|
||||
@@ -88,7 +91,7 @@ class InvitationController extends Controller
|
||||
}
|
||||
}
|
||||
|
||||
public function denyInvite(Request $request, Invitation $invitation)
|
||||
public function denyInvite(DenyInviteRequest $request, Invitation $invitation)
|
||||
{
|
||||
$declinableStates = [
|
||||
'pending'
|
||||
@@ -115,7 +118,7 @@ class InvitationController extends Controller
|
||||
return view('auth.redeem-invite', ['validationToken' => $request->route('token')]);
|
||||
}
|
||||
|
||||
public function validateInvite(Request $request)
|
||||
public function validateInvite(ValidateInviteRequest $request)
|
||||
{
|
||||
$token = $request->input('validation_token');
|
||||
$email = $request->input('email');
|
||||
|
27
app/Http/Requests/ApproveInviteRequest.php
Normal file
27
app/Http/Requests/ApproveInviteRequest.php
Normal file
@@ -0,0 +1,27 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests;
|
||||
|
||||
use App\Facades\Options;
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class ApproveInviteRequest extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
*/
|
||||
public function authorize(): bool
|
||||
{
|
||||
return !Options::getOption('enable_registrations');
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*
|
||||
* @return array<string, \Illuminate\Contracts\Validation\ValidationRule|array<mixed>|string>
|
||||
*/
|
||||
public function rules(): array
|
||||
{
|
||||
return [];
|
||||
}
|
||||
}
|
29
app/Http/Requests/DenyInviteRequest.php
Normal file
29
app/Http/Requests/DenyInviteRequest.php
Normal file
@@ -0,0 +1,29 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests;
|
||||
|
||||
use App\Facades\Options;
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class DenyInviteRequest extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
*/
|
||||
public function authorize(): bool
|
||||
{
|
||||
return !Options::getOption('enable_registrations');
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*
|
||||
* @return array<string, \Illuminate\Contracts\Validation\ValidationRule|array<mixed>|string>
|
||||
*/
|
||||
public function rules(): array
|
||||
{
|
||||
return [
|
||||
//
|
||||
];
|
||||
}
|
||||
}
|
@@ -17,11 +17,7 @@ class InvitationRequest extends FormRequest
|
||||
|
||||
public function authorize(): bool
|
||||
{
|
||||
if (Options::getOption('enable_registrations')) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
return !Options::getOption('enable_registrations');
|
||||
}
|
||||
|
||||
protected function failedAuthorization()
|
||||
|
30
app/Http/Requests/ValidateInviteRequest.php
Normal file
30
app/Http/Requests/ValidateInviteRequest.php
Normal file
@@ -0,0 +1,30 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests;
|
||||
|
||||
use App\Facades\Options;
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
|
||||
class ValidateInviteRequest extends FormRequest
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
*/
|
||||
public function authorize(): bool
|
||||
{
|
||||
return !Options::getOption('enable_registrations');
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*
|
||||
* @return array<string, \Illuminate\Contracts\Validation\ValidationRule|array<mixed>|string>
|
||||
*/
|
||||
public function rules(): array
|
||||
{
|
||||
return [
|
||||
'validation_token' => 'required|string',
|
||||
'email' => 'required|email'
|
||||
];
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user