From 66b587a68f465faefba8261207c9e71e6c1bafcd Mon Sep 17 00:00:00 2001 From: Mischa Spelt Date: Sun, 20 Dec 2020 18:59:36 +0100 Subject: [PATCH] onair.txt versie gemaakt --- .../Http/Controllers/ProgramController.php | 31 ++++++++++++++++--- api/routes/web.php | 1 + 2 files changed, 27 insertions(+), 5 deletions(-) diff --git a/api/app/Http/Controllers/ProgramController.php b/api/app/Http/Controllers/ProgramController.php index 6d75255..9af0c59 100644 --- a/api/app/Http/Controllers/ProgramController.php +++ b/api/app/Http/Controllers/ProgramController.php @@ -271,7 +271,7 @@ QUERY; } /** - * Programmas nu en straks (24 uur vooruit) + * Huidige programma of nummer */ public function onair() { $start = new \DateTimeImmutable('now'); @@ -284,10 +284,9 @@ QUERY; $next = $this->getTrack(/* next: */ true); $current->ends($next->start); if($current->isLayout() /* || $current->secondsRemaining() < 0 */) { - if($next->isLayout()) { - // return response()->json(['inProgram' => true, 'program' => $program]); - } else - $current = $next; + if(!$next->isLayout()) { + $current = $next; + } } return response()->json(['inProgram' => false, 'stream' => $this->isStreamEnabled(), 'current' => $current, 'program' => $program]); @@ -297,6 +296,28 @@ QUERY; } } + public function onair_text() { + $start = new \DateTimeImmutable('now'); + $einde = new \DateTimeImmutable('now + 1 second'); + $schema = $this->createSchedule($start, $einde); + $program = $schema['schedule'][0]['program']; + + if(!$program->nonstop) { + $current = $this->getTrack(); + $next = $this->getTrack(/* next: */ true); + $current->ends($next->start); + if($current->isLayout() /* || $current->secondsRemaining() < 0 */) { + if(!$next->isLayout()) { + $current = $next; + } + } + + return $program->name . " - " . $current->title . " - " . $current->artist; + } else { + return $program->name; + } + } + /** * Programmas nu en straks (24 uur vooruit) */ diff --git a/api/routes/web.php b/api/routes/web.php index 0cfef85..f262890 100644 --- a/api/routes/web.php +++ b/api/routes/web.php @@ -45,6 +45,7 @@ $app->get('podcast/download/{id:\d+}/{title}', 'PodcastController@download' ); $app->get('podcast/stream/{id:\d+}/{title}', 'PodcastController@stream' ); $app->get('programma/schema/onair', 'ProgramController@onair' ); +$app->get('programma/schema/onair.txt', 'ProgramController@onair_text' ); $app->get('programma/schema/nustraks', 'ProgramController@comingup' ); $app->get('programma/schema/recent', 'ProgramController@recent' ); $app->get('programma/schema/week[/{shiftWeeks:-?\d+}]', 'ProgramController@schedule' );