mirror of
https://github.com/AzuraCast/AzuraCast.git
synced 2024-06-21 00:17:09 +00:00
Fix Queue function with Manual AutoDJ.
This commit is contained in:
parent
2d92241de8
commit
0cecae12c5
|
@ -261,26 +261,36 @@ class BatchAction
|
|||
): Entity\Api\BatchResult {
|
||||
$result = $this->parseRequest($request, $fs, true);
|
||||
|
||||
$nextCuedItem = $this->queueRepo->getNextToSendToAutoDj($station);
|
||||
$cuedTimestamp = (null !== $nextCuedItem)
|
||||
? $nextCuedItem->getTimestampCued() - 10
|
||||
: time();
|
||||
|
||||
foreach ($this->batchUtilities->iterateMedia($storageLocation, $result->files) as $media) {
|
||||
try {
|
||||
if ($station->useManualAutoDJ()) {
|
||||
foreach ($this->batchUtilities->iterateMedia($storageLocation, $result->files) as $media) {
|
||||
/** @var Entity\Station $stationRef */
|
||||
$stationRef = $this->em->getReference(Entity\Station::class, $station->getId());
|
||||
|
||||
$newQueue = Entity\StationQueue::fromMedia($stationRef, $media);
|
||||
$newQueue->setTimestampCued($cuedTimestamp);
|
||||
$newQueue->addLogRecord(LogLevel::INFO, 'Manually queued via media manager.');
|
||||
|
||||
$this->em->persist($newQueue);
|
||||
} catch (Throwable $e) {
|
||||
$result->errors[] = $media->getPath() . ': ' . $e->getMessage();
|
||||
$newRequest = new Entity\StationRequest($stationRef, $media, null, true);
|
||||
$this->em->persist($newRequest);
|
||||
}
|
||||
} else {
|
||||
$nextCuedItem = $this->queueRepo->getNextToSendToAutoDj($station);
|
||||
$cuedTimestamp = (null !== $nextCuedItem)
|
||||
? $nextCuedItem->getTimestampCued() - 10
|
||||
: time();
|
||||
|
||||
$cuedTimestamp -= 10;
|
||||
foreach ($this->batchUtilities->iterateMedia($storageLocation, $result->files) as $media) {
|
||||
try {
|
||||
/** @var Entity\Station $stationRef */
|
||||
$stationRef = $this->em->getReference(Entity\Station::class, $station->getId());
|
||||
|
||||
$newQueue = Entity\StationQueue::fromMedia($stationRef, $media);
|
||||
$newQueue->setTimestampCued($cuedTimestamp);
|
||||
$newQueue->addLogRecord(LogLevel::INFO, 'Manually queued via media manager.');
|
||||
|
||||
$this->em->persist($newQueue);
|
||||
} catch (Throwable $e) {
|
||||
$result->errors[] = $media->getPath() . ': ' . $e->getMessage();
|
||||
}
|
||||
|
||||
$cuedTimestamp -= 10;
|
||||
}
|
||||
}
|
||||
|
||||
return $result;
|
||||
|
|
Loading…
Reference in New Issue
Block a user