From 797516a2ec7d88704412a5cca50421e8eef38eec Mon Sep 17 00:00:00 2001 From: Guy Martin Date: Mon, 26 Feb 2024 10:24:49 +0000 Subject: [PATCH] fix: display chapters in episode preview page fixes #445 --- app/Controllers/EpisodePreviewController.php | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/app/Controllers/EpisodePreviewController.php b/app/Controllers/EpisodePreviewController.php index f100653a..583fae9a 100644 --- a/app/Controllers/EpisodePreviewController.php +++ b/app/Controllers/EpisodePreviewController.php @@ -14,6 +14,7 @@ use App\Entities\Episode; use App\Models\EpisodeModel; use CodeIgniter\Exceptions\PageNotFoundException; use CodeIgniter\HTTP\RedirectResponse; +use Modules\Media\FileManagers\FileManagerInterface; class EpisodePreviewController extends BaseController { @@ -66,9 +67,21 @@ class EpisodePreviewController extends BaseController public function chapters(): RedirectResponse | string { - return view('episode/preview-chapters', [ + $data = [ 'podcast' => $this->episode->podcast, 'episode' => $this->episode, - ]); + ]; + + if (isset($this->episode->chapters->file_key)) { + /** @var FileManagerInterface $fileManager */ + $fileManager = service('file_manager'); + $episodeChaptersJsonString = (string) $fileManager->getFileContents($this->episode->chapters->file_key); + + $chapters = json_decode($episodeChaptersJsonString, true); + $data['chapters'] = $chapters; + } + + helper('form'); + return view('episode/preview-chapters', $data); } }