CC-3610: Now Playing ->songs in the Now Playing do not reflect the changes affected changed END_OF_SHOW
-pypo side fixed
This commit is contained in:
parent
bc6e911673
commit
a09a31bc88
|
@ -524,12 +524,13 @@ class Application_Model_Schedule {
|
|||
|
||||
foreach ($items as $item){
|
||||
|
||||
$storedFile = Application_Model_StoredFile::Recall($item["file_id"]);
|
||||
$uri = $storedFile->getFilePath();
|
||||
|
||||
$showEndDateTime = new DateTime($item["show_end"], $utcTimeZone);
|
||||
$trackStartDateTime = new DateTime($item["start"], $utcTimeZone);
|
||||
$trackEndDateTime = new DateTime($item["end"], $utcTimeZone);
|
||||
|
||||
if ($trackStartDateTime->getTimestamp() > $showEndDateTime->getTimestamp()){
|
||||
continue;
|
||||
}
|
||||
|
||||
/* Note: cue_out and end are always the same. */
|
||||
/* TODO: Not all tracks will have "show_end" */
|
||||
|
@ -537,8 +538,12 @@ class Application_Model_Schedule {
|
|||
$di = $trackStartDateTime->diff($showEndDateTime);
|
||||
|
||||
$item["cue_out"] = $di->format("%H:%i:%s").".000";
|
||||
$item["end"] = $showEndDateTime->format("Y-m-d H:i:s");
|
||||
}
|
||||
|
||||
$storedFile = Application_Model_StoredFile::Recall($item["file_id"]);
|
||||
$uri = $storedFile->getFilePath();
|
||||
|
||||
$start = Application_Model_Schedule::AirtimeTimeToPypoTime($item["start"]);
|
||||
$data["media"][$start] = array(
|
||||
'id' => $storedFile->getGunid(),
|
||||
|
|
|
@ -173,6 +173,7 @@ class PypoPush(Thread):
|
|||
|
||||
if problem_at_iteration is not None:
|
||||
self.logger.debug("Change in chain at link %s", problem_at_iteration)
|
||||
self.modify_cue_point_of_first_link(current_chain)
|
||||
self.push_to_liquidsoap(current_chain[problem_at_iteration:])
|
||||
|
||||
|
||||
|
@ -249,11 +250,13 @@ class PypoPush(Thread):
|
|||
link_start = datetime.strptime(link['start'], "%Y-%m-%d-%H-%M-%S")
|
||||
|
||||
diff_td = tnow - link_start
|
||||
diff_sec = self.convert_timedelta_to_seconds(diff_td)
|
||||
|
||||
self.logger.debug("media item was supposed to start %s ago. Preparing to start..", diff_td)
|
||||
original_cue_in_td = timedelta(seconds=float(link['cue_in']))
|
||||
link['cue_in'] = self.convert_timedelta_to_seconds(original_cue_in_td + diff_td)
|
||||
|
||||
if diff_sec > 0:
|
||||
self.logger.debug("media item was supposed to start %s ago. Preparing to start..", diff_sec)
|
||||
original_cue_in_td = timedelta(seconds=float(link['cue_in']))
|
||||
link['cue_in'] = self.convert_timedelta_to_seconds(original_cue_in_td) + diff_sec
|
||||
|
||||
|
||||
def convert_timedelta_to_seconds(self, td):
|
||||
return (td.microseconds + (td.seconds + td.days * 24 * 3600) * 10**6) / 10**6
|
||||
|
|
Loading…
Reference in New Issue