Custom SMTP Settings (#561)
* Custom SMTP Settings * Fix lint * Custom SMTP add in Pricing plan * Allow reset email settings * improve custom SMTP using seprate abstract class * test case for custom SMTP * fix test case * UI improvement * add CASHIER_KEY in phpunit for testcase * Attempt to fix tests * Run pint and attempt to fix cache tests * Fix user management tests * Fix code linters * Merged main & fix linting --------- Co-authored-by: Julien Nahum <julien@nahum.net>
This commit is contained in:
65
api/app/Http/Requests/Workspace/EmailSettingsRequest.php
Normal file
65
api/app/Http/Requests/Workspace/EmailSettingsRequest.php
Normal file
@@ -0,0 +1,65 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests\Workspace;
|
||||
|
||||
use App\Models\Workspace;
|
||||
use Illuminate\Foundation\Http\FormRequest;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class EmailSettingsRequest extends FormRequest
|
||||
{
|
||||
public Workspace $workspace;
|
||||
|
||||
public function __construct(Request $request, Workspace $workspace)
|
||||
{
|
||||
$this->workspace = Workspace::findOrFail($request->workspaceId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*
|
||||
* @return array<string, mixed>
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
$allFieldsPresent = $this->filled(['host', 'port', 'username', 'password']);
|
||||
|
||||
return [
|
||||
'host' => [
|
||||
$allFieldsPresent ? 'required' : 'nullable',
|
||||
'required_with:port,username,password',
|
||||
'string',
|
||||
],
|
||||
'port' => [
|
||||
$allFieldsPresent ? 'required' : 'nullable',
|
||||
'required_with:host,username,password',
|
||||
'integer',
|
||||
],
|
||||
'username' => [
|
||||
$allFieldsPresent ? 'required' : 'nullable',
|
||||
'required_with:host,port,password',
|
||||
'string',
|
||||
],
|
||||
'password' => [
|
||||
$allFieldsPresent ? 'required' : 'nullable',
|
||||
'required_with:host,port,username',
|
||||
'string',
|
||||
],
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the validation messages that apply to the request.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function messages()
|
||||
{
|
||||
return [
|
||||
'host.required_with' => 'The host field is required.',
|
||||
'port.required_with' => 'The port field is required.',
|
||||
'username.required_with' => 'The username field is required.',
|
||||
'password.required_with' => 'The password field is required.',
|
||||
];
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user