add mail configuration

This commit is contained in:
raishvaria
2019-11-18 17:30:04 +05:30
parent 88199996fb
commit 6d350db854
12 changed files with 1655 additions and 188 deletions

View File

@ -23,13 +23,85 @@ class MailEnvironmentRequest extends FormRequest
*/
public function rules()
{
return [
'mail_driver' => 'required|string|max:50',
'mail_host' => 'required|string|max:50',
'mail_port' => 'required|max:50',
'mail_username' => 'required|string|max:50',
'mail_password' => 'required|string|max:50',
'mail_encryption' => 'required|string|max:50',
];
switch ($this->get('mail_driver')) {
case 'smtp':
return [
'mail_driver' => 'required|string|max:50',
'mail_host' => 'required|string|max:50',
'mail_port' => 'required|max:50',
'mail_username' => 'required|string|max:50',
'mail_password' => 'required|string|max:50',
'mail_encryption' => 'required|string|max:50',
'from_name' => 'required|string|max:50',
'from_mail' => 'required|string|max:50',
];
break;
case 'mailgun':
return [
'mail_driver' => 'required|string|max:50',
'mail_host' => 'required|string|max:50',
'mail_port' => 'required|max:50',
'mail_mailgun_domain' => 'required|string|max:50',
'mail_mailgun_secret' => 'required|string|max:50',
'mail_mailgun_endpoint' => 'required|string|max:50',
'mail_encryption' => 'required|string|max:50',
'from_name' => 'required|string|max:50',
'from_mail' => 'required|string|max:50',
];
break;
case 'sparkpost':
return [
'mail_driver' => 'required|string|max:50',
'mail_host' => 'required|string|max:50',
'mail_port' => 'required|max:50',
'mail_sparkpost_secret' => 'required|string|max:50',
'mail_encryption' => 'required|string|max:50',
'from_name' => 'required|string|max:50',
'from_mail' => 'required|string|max:50',
];
break;
case 'ses':
return [
'mail_driver' => 'required|string|max:50',
'mail_host' => 'required|string|max:50',
'mail_port' => 'required|max:50',
'mail_ses_key' => 'required|string|max:50',
'mail_ses_secret' => 'required|string|max:50',
'mail_encryption' => 'required|string|max:50',
'from_name' => 'required|string|max:50',
'from_mail' => 'required|string|max:50',
];
break;
case 'mail':
return [
'from_name' => 'required|string|max:50',
'from_mail' => 'required|string|max:50',
];
break;
case 'sendmail':
return [
'from_name' => 'required|string|max:50',
'from_mail' => 'required|string|max:50',
];
break;
case 'mandrill':
return [
'mail_driver' => 'required|string|max:50',
'mail_host' => 'required|string|max:50',
'mail_port' => 'required|max:50',
'mail_mandrill_secret' => 'required|string|max:50',
'mail_encryption' => 'required|string|max:50',
'from_name' => 'required|string|max:50',
'from_mail' => 'required|string|max:50',
];
break;
}
}
}