public function update(Request $request, ThemeHandler $themeHandler)
{
$editable = session('theme.editable');
if (!$editable) {
return redirect()->back()->with('alert', ['type' => 'danger', 'message' => xe_trans('xe::needAuthForEditingTheme')])->withInput();
}
$themeId = $request->get('theme');
$fileName = $request->get('file');
$reset = $request->get('reset');
$content = $request->get('content');
$theme = $themeHandler->getTheme($themeId);
$files = $theme->getEditFiles();
$filePath = realpath($files[$fileName]);
$cachePath = $themeHandler->getCachePath($filePath);
$cacheDir = dirname($cachePath);
File::makeDirectory($cacheDir, 0755, true, true);
try {
if ($reset === 'Y') {
File::delete($cachePath);
} else {
file_put_contents($cachePath, $content);
}
} catch (\Exception $e) {
throw new FileAccessDeniedHttpException();
}
return redirect()->back()->with('alert', ['type' => 'success', 'message' => '저장되었습니다.']);
}