diff --git a/app/Http/Controllers/Admin/helpdesk/EmailsController.php b/app/Http/Controllers/Admin/helpdesk/EmailsController.php index c68bd7356..983034070 100644 --- a/app/Http/Controllers/Admin/helpdesk/EmailsController.php +++ b/app/Http/Controllers/Admin/helpdesk/EmailsController.php @@ -98,11 +98,12 @@ class EmailsController extends Controller public function validatingEmailSettings(Request $request) { $validator = \Validator::make( - [ + [ 'email_address' => $request->email_address, 'email_name' => $request->email_name, 'password' => $request->password, - ], [ + ], + [ 'email_address' => 'required|email|unique:emails', 'email_name' => 'required', 'password' => 'required', @@ -276,11 +277,12 @@ class EmailsController extends Controller public function validatingEmailSettingsUpdate($id, Request $request) { $validator = \Validator::make( - [ + [ 'email_address' => $request->email_address, 'email_name' => $request->email_name, 'password' => $request->password, - ], [ + ], + [ 'email_address' => 'email', 'email_name' => 'required', 'password' => 'required', @@ -304,7 +306,7 @@ class EmailsController extends Controller } if ($request->fetching_status == 'on') { $imap_check = $this->getImapStream($request, $validate); - if ($imap_check == 0) { + if ($imap_check[0] == 0) { return 'Incoming email connection failed'; } $need_to_check_imap = 1; @@ -325,22 +327,22 @@ class EmailsController extends Controller if ($need_to_check_imap == 1 && $need_to_check_smtp == 1) { if ($imap_check != 0 && $smtp_check != 0) { - $this->update($id, $request); + $this->update($id, $request, $imap_check[1]); $return = 1; } } elseif ($need_to_check_imap == 1 && $need_to_check_smtp == 0) { if ($imap_check != 0 && $smtp_check == 0) { - $this->update($id, $request); + $this->update($id, $request, $imap_check[1]); $return = 1; } } elseif ($need_to_check_imap == 0 && $need_to_check_smtp == 1) { if ($imap_check == 0 && $smtp_check != 0) { - $this->update($id, $request); + $this->update($id, $request, null); $return = 1; } } elseif ($need_to_check_imap == 0 && $need_to_check_smtp == 0) { if ($imap_check == 0 && $smtp_check == 0) { - $this->update($id, $request); + $this->update($id, $request, null); $return = 1; } } @@ -357,13 +359,16 @@ class EmailsController extends Controller * * @return type Response */ - public function update($id, $request) + public function update($id, $request, $imap_check) { - try { + // try { + // dd($id); + // dd($request); + // dd($imap_check); // fetch the selected emails $emails = Emails::whereId($id)->first(); // insert all the requested parameters with except - $emails->fill($request->except('password', 'department', 'priority', 'help_topic', 'fetching_status', 'sending_status'))->save(); + $emails->fill($request->except('password', 'department', 'priority', 'help_topic', 'fetching_status', 'fetching_encryption', 'sending_status', 'auto_response'))->save(); if ($request->fetching_status == 'on') { $emails->fetching_status = 1; } else { @@ -379,6 +384,13 @@ class EmailsController extends Controller } else { $emails->auto_response = 0; } + if ($imap_check !== null) { + $emails->fetching_encryption = $imap_check; + + } else { + $emails->fetching_encryption = $request->fetching_encryption; + } + // dd($email->fetching_encryption); // fetching department value $emails->department = $this->departmentValue($request->input('department')); // fetching priority value @@ -390,11 +402,10 @@ class EmailsController extends Controller $emails->save(); // returns success message for successful email update $return = 1; - } catch (Exception $e) { - // returns if try fails - $return = $e->getMessage(); - } - + // } catch (Exception $e) { + // // returns if try fails + // $return = $e->getMessage(); + // } return $return; }