Current File : /home/getxxhzo/app.genicards.com/app/Http/Controllers/MailSettingController.php |
<?php
namespace App\Http\Controllers;
use App\Http\Requests\UpdateMailSettingRequest;
use App\Models\MailSetting;
use Illuminate\Support\Facades\Redirect;
use Laracasts\Flash\Flash;
class MailSettingController extends Controller
{
/**
* Update the specified resource in storage.
*/
public function update(UpdateMailSettingRequest $request)
{
$input = $request->all();
$mailSetting = MailSetting::first();
if ($mailSetting) {
$mailSetting->update($input);
} else {
MailSetting::create($input);
}
$envFilePath = base_path('.env');
$envFileContent = file_get_contents($envFilePath);
$envFileContent = preg_replace('/^MAIL_MAILER=.*/m', 'MAIL_MAILER=' . strtolower(MailSetting::TYPE[$request->mail_protocol]), $envFileContent);
$envFileContent = preg_replace('/^MAIL_HOST=.*/m', "MAIL_HOST={$request['mail_host']}", $envFileContent);
$envFileContent = preg_replace('/^MAIL_PORT=.*/m', "MAIL_PORT={$request['mail_port']}", $envFileContent);
$envFileContent = preg_replace('/^MAIL_USERNAME=.*/m', "MAIL_USERNAME={$request['mail_username']}", $envFileContent);
$envFileContent = preg_replace('/^MAIL_PASSWORD=.*/m', "MAIL_PASSWORD={$request['mail_password']}", $envFileContent);
$envFileContent = preg_replace('/^MAIL_ENCRYPTION=.*/m', 'MAIL_ENCRYPTION=' . strtolower(MailSetting::ENCRYPTION_TYPE[$request->mail_encryption]), $envFileContent);
$envFileContent = preg_replace('/^MAIL_FROM_ADDRESS=.*/m', "MAIL_FROM_ADDRESS={$request['sender_email_address']}", $envFileContent);
file_put_contents($envFilePath, $envFileContent);
Flash::success(__('messages.vcard.mail_settings') . ' ' . __('messages.flash.vcard_update'));
return Redirect::back();
}
}