update 1.0.8.0
Commits for version update
This commit is contained in:
80
app/Http/Requests/helpdesk/Mail/MailRequest.php
Normal file
80
app/Http/Requests/helpdesk/Mail/MailRequest.php
Normal file
@@ -0,0 +1,80 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Requests\helpdesk\Mail;
|
||||
|
||||
use App\Http\Requests\Request;
|
||||
|
||||
class MailRequest extends Request
|
||||
{
|
||||
/**
|
||||
* Determine if the user is authorized to make this request.
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function authorize()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the validation rules that apply to the request.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function rules()
|
||||
{
|
||||
$id = $this->segment(2);
|
||||
$email_address_rule = 'required|email|unique:emails';
|
||||
if ($id) {
|
||||
$email_address_rule = 'required|email|unique:emails,id,'.$id;
|
||||
}
|
||||
|
||||
|
||||
$rules = [
|
||||
'email_address' => $email_address_rule,
|
||||
'email_name' => 'required',
|
||||
'password' => 'required',
|
||||
'sending_protocol' => 'required_if:sending_status,on',
|
||||
];
|
||||
$driver = $this->input('sending_protocol');
|
||||
$driver_rules = $this->getDriver($driver);
|
||||
$rules = array_merge($rules, $driver_rules);
|
||||
|
||||
return $rules;
|
||||
}
|
||||
|
||||
public function getDriver($serviceid)
|
||||
{
|
||||
$rules = [];
|
||||
$mail_services = new \App\Model\MailJob\MailService();
|
||||
$mail_service = $mail_services->find($serviceid);
|
||||
if ($mail_service) {
|
||||
$short = $mail_service->short_name;
|
||||
$rules = $this->getRules($short);
|
||||
}
|
||||
|
||||
return $rules;
|
||||
}
|
||||
|
||||
public function getRules($short)
|
||||
{
|
||||
$rules = [];
|
||||
switch ($short) {
|
||||
case 'mailgun':
|
||||
$rules = [
|
||||
'domain' => 'required',
|
||||
'secret' => 'required',
|
||||
];
|
||||
|
||||
return $rules;
|
||||
case 'mandrill':
|
||||
$rules = [
|
||||
'secret' => 'required',
|
||||
];
|
||||
|
||||
return $rules;
|
||||
default:
|
||||
return $rules;
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user