Changes to schedule for frontend
This commit is contained in:
@@ -146,11 +146,9 @@ QUERY
|
|||||||
/**
|
/**
|
||||||
* Programmaschema per week
|
* Programmaschema per week
|
||||||
*/
|
*/
|
||||||
public function schedule(Request $request, $weeksAhead = null) {
|
public function schedule(Request $request, $shiftWeeks = null) {
|
||||||
if($weeksAhead === null) { $weeksAhead = 1; }
|
$start = (new \DateTimeImmutable('Monday this week'))->add(\DateInterval::createFromDateString((int)$shiftWeeks . ' weeks'));
|
||||||
else if($weeksAhead <= 0) { return abort(400); }
|
$einde = $start->add(\DateInterval::createFromDateString('1 week'));
|
||||||
$start = new \DateTimeImmutable('Monday this week');
|
|
||||||
$einde = $start->add(\DateInterval::createFromDateString((int)$weeksAhead . ' weeks'));
|
|
||||||
|
|
||||||
return response()->json($this->createSchedule($start, $einde));
|
return response()->json($this->createSchedule($start, $einde));
|
||||||
}
|
}
|
||||||
@@ -231,30 +229,29 @@ QUERY
|
|||||||
$actieveProgrammas[$programma->priority] = $programma;
|
$actieveProgrammas[$programma->priority] = $programma;
|
||||||
for($prio = $programma->priority; $prio >= 0; --$prio) {
|
for($prio = $programma->priority; $prio >= 0; --$prio) {
|
||||||
if($actieveProgrammas[$prio] != null) {
|
if($actieveProgrammas[$prio] != null) {
|
||||||
if(($index == -1) || ($schema[$index]['time'] != $tijdstip)) { $index++; }
|
if(($index == -1) || ($schema[$index]['starttime'] != $tijdstip)) { $index++; }
|
||||||
$schema[$index] = ['time' => $tijdstip, 'program' => $programmaInfo[$actieveProgrammas[$prio]->id]];
|
$schema[$index] = ['starttime' => $tijdstip, 'endtime' => null, 'program' => $programmaInfo[$actieveProgrammas[$prio]->id]];
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else /*if($programmaWissel[PW_TYPE] == PROGRAMMA_EINDE)*/ {
|
} else /*if($programmaWissel[PW_TYPE] == PROGRAMMA_EINDE)*/ {
|
||||||
$actieveProgrammas[$programma->priority] = null;
|
$actieveProgrammas[$programma->priority] = null;
|
||||||
if(($index == -1) || ($schema[$index]['program'] != null)) { $index++; }
|
if(($index == -1) || ($schema[$index]['program'] != null)) { $index++; }
|
||||||
$schema[$index] = ['time' => $tijdstip, 'program' => null];
|
$schema[$index] = ['starttime' => $tijdstip, 'program' => null];
|
||||||
for($prio = $programma->priority; $prio < count($actieveProgrammas); ++$prio) {
|
for($prio = $programma->priority; $prio < count($actieveProgrammas); ++$prio) {
|
||||||
if($actieveProgrammas[$prio] != null) {
|
if($actieveProgrammas[$prio] != null) {
|
||||||
$schema[$index] = ['time' => $tijdstip, 'program' => $programmaInfo[$actieveProgrammas[$prio]->id]];
|
$schema[$index] = ['starttime' => $tijdstip, 'endtime' => null, 'program' => $programmaInfo[$actieveProgrammas[$prio]->id]];
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(false) {
|
for($i = 1; $i <= count($schema); $i++) {
|
||||||
for($i = 1; $i <= count($schema); $i++) {
|
$eindTijd = ($i == count($schema)) ? $einde : $schema[$i]['starttime'];
|
||||||
$eindTijd = ($i == count($schema)) ? $einde : $schema[$i]['time'];
|
$schema[$i - 1]['endtime'] = $eindTijd;
|
||||||
$programma = $schema[$i-1]['program'];
|
//$programma = $schema[$i-1]['program'];
|
||||||
print $schema[$i-1]['time']->format('D d-m-Y, H:i:s') . " - " . $eindTijd->format('D d-m-Y, H:i:s') . ": " . ($programma != null ? $programma->name : "NULL") . "\n";
|
//print $schema[$i-1]['starttime']->format('D d-m-Y, H:i:s') . " - " . $eindTijd->format('D d-m-Y, H:i:s') . ": " . ($programma != null ? $programma->name : "NULL") . "\n";
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return ['startdate' => $start, 'enddate' => $einde, 'schedule' => $schema, 'errors' => $fouten];
|
return ['startdate' => $start, 'enddate' => $einde, 'schedule' => $schema, 'errors' => $fouten];
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ $app->get('podcast/download/{id:\d+}/[{title}]', 'PodcastController@download' );
|
|||||||
$app->get('podcast/stream/{id:\d+}/[{title}]', 'PodcastController@stream' );
|
$app->get('podcast/stream/{id:\d+}/[{title}]', 'PodcastController@stream' );
|
||||||
|
|
||||||
$app->get('programma/schema/nustraks', 'ProgramController@comingup' );
|
$app->get('programma/schema/nustraks', 'ProgramController@comingup' );
|
||||||
$app->get('programma/schema/week[/{weeksAhead:\d+}]', 'ProgramController@schedule' );
|
$app->get('programma/schema/week[/{shiftWeeks:-?\d+}]', 'ProgramController@schedule' );
|
||||||
$app->get('/programma/details/{id:\d+}', 'ProgramController@details' );
|
$app->get('/programma/details/{id:\d+}', 'ProgramController@details' );
|
||||||
|
|
||||||
// live/onair
|
// live/onair
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ class NewsImage extends Model {
|
|||||||
// Deserialisatie van JSON heeft url in data,
|
// Deserialisatie van JSON heeft url in data,
|
||||||
// lezen uit database heeft file en (als het goed is) urlPrefix
|
// lezen uit database heeft file en (als het goed is) urlPrefix
|
||||||
if(isset($data->file)) {
|
if(isset($data->file)) {
|
||||||
$this->url = $urlPrefix . $data->file;
|
$this->url = 'http://www.6fm.nl' . $urlPrefix . $data->file;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -36,7 +36,14 @@ class NewsItem extends Model {
|
|||||||
? new \Model\NewsSource($data->source->title, $data->source->url, $data->source->url)
|
? new \Model\NewsSource($data->source->title, $data->source->url, $data->source->url)
|
||||||
: new \Model\NewsSource($data->source, $data->source_url, $data->showsource);
|
: new \Model\NewsSource($data->source, $data->source_url, $data->showsource);
|
||||||
}
|
}
|
||||||
$this->keywords = !is_array($data->keywords) && trim($data->keywords) ? explode(' ', $data->keywords) : null;
|
|
||||||
|
$this->keywords = null;
|
||||||
|
if(is_array($data->keywords)) {
|
||||||
|
$this->keywords = $data->keywords;
|
||||||
|
} else if(trim($data->keywords)) {
|
||||||
|
$this->keywords = explode(' ', $data->keywords);
|
||||||
|
}
|
||||||
|
|
||||||
$this->podcast = $data->podcast ? $data->podcast : null;
|
$this->podcast = $data->podcast ? $data->podcast : null;
|
||||||
|
|
||||||
$images = ($images != null) ? $images
|
$images = ($images != null) ? $images
|
||||||
|
|||||||
@@ -16,9 +16,14 @@ class Program extends Model {
|
|||||||
public function __construct($data) {
|
public function __construct($data) {
|
||||||
parent::__construct($data);
|
parent::__construct($data);
|
||||||
|
|
||||||
$this->isSpecial = ($data->priority < 2);
|
if(!isset($data->isSpecial) && isset($data->priority)) {
|
||||||
|
$this->isSpecial = ($data->priority < 2);
|
||||||
|
}
|
||||||
|
|
||||||
if(($mailComma = strpos($data->email, ',')) !== false) {
|
if(($mailComma = strpos($data->email, ',')) !== false) {
|
||||||
$this->email = substr($data->email, 0, $mailComma);
|
$this->email = substr($data->email, 0, $mailComma);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$this->url = "/{$this->id}/" . parent::url_slug($this->name);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user