diff --git a/app/CMS/Contracts/Repositories/Template.php b/app/CMS/Contracts/Repositories/Template.php index c0b1ec50..e3d19d68 100644 --- a/app/CMS/Contracts/Repositories/Template.php +++ b/app/CMS/Contracts/Repositories/Template.php @@ -15,7 +15,7 @@ interface Template public function setModel(TemplateModel $model); - public function getPathToTemplate(); + public function getPathToTemplate($mode = null); public function getForModule(ModuleModel $module); } \ No newline at end of file diff --git a/app/Http/Controllers/Admin/Templates/EditTemplate.php b/app/Http/Controllers/Admin/Templates/EditTemplate.php index e154b8d2..2938c129 100644 --- a/app/Http/Controllers/Admin/Templates/EditTemplate.php +++ b/app/Http/Controllers/Admin/Templates/EditTemplate.php @@ -12,6 +12,21 @@ use Illuminate\Support\Facades\File; class EditTemplate extends Controller { + /** + * @var TemplateRepositoryContract + */ + private $templateRepository; + + /** + * EditTemplate constructor. + * + * @param TemplateRepositoryContract $templateRepository + */ + public function __construct(TemplateRepositoryContract $templateRepository) + { + $this->templateRepository = $templateRepository; + } + /** * Render form for editing template * @@ -26,11 +41,10 @@ class EditTemplate extends Controller */ $template = Template::findOrFail($template); - $repo = app(TemplateRepositoryContract::class); - $repo->setModel($template); + $this->templateRepository->setModel($template); // load template content - $absolutePath = $repo->getPathToTemplate(); + $absolutePath = $this->templateRepository->getPathToTemplate(); $content = @file_get_contents($absolutePath); return view('admin.templates.edit', [ @@ -78,9 +92,11 @@ class EditTemplate extends Controller */ private function saveContent(Template $template, EditTemplateRequest $request) { + $this->templateRepository->setModel($template); + // get templates with paths - $originalTemplate = $template->getPathToTemplate(); - $customTemplate = $template->getPathToTemplate(Template::CUSTOM_EDIT_DIRECTORY); + $originalTemplate = $this->templateRepository->getPathToTemplate(); + $customTemplate = $this->templateRepository->getPathToTemplate(TemplateRepositoryContract::CUSTOM_EDIT_DIRECTORY); // get paths $originalDir = dirname($originalTemplate);