Merge branch 'fix/display-autoplaylist-on-calendar' of https://github.com/Robbt/libretime into Robbt-fix/display-autoplaylist-on-calendar
This commit is contained in:
commit
703a0e8b9b
|
@ -1023,6 +1023,8 @@ SQL;
|
||||||
$content_count = Application_Model_ShowInstance::getContentCount(
|
$content_count = Application_Model_ShowInstance::getContentCount(
|
||||||
$p_start, $p_end);
|
$p_start, $p_end);
|
||||||
$isFull = Application_Model_ShowInstance::getIsFull($p_start, $p_end);
|
$isFull = Application_Model_ShowInstance::getIsFull($p_start, $p_end);
|
||||||
|
$hasAutoPlaylist = Application_Model_ShowInstance::getShowHasAutoplaylist($p_start, $p_end);
|
||||||
|
|
||||||
|
|
||||||
$displayTimezone = new DateTimeZone(Application_Model_Preference::GetUserTimezone());
|
$displayTimezone = new DateTimeZone(Application_Model_Preference::GetUserTimezone());
|
||||||
$utcTimezone = new DateTimeZone("UTC");
|
$utcTimezone = new DateTimeZone("UTC");
|
||||||
|
@ -1064,6 +1066,11 @@ SQL;
|
||||||
} else {
|
} else {
|
||||||
$options["show_partial_filled"] = true;
|
$options["show_partial_filled"] = true;
|
||||||
}
|
}
|
||||||
|
if (array_key_exists($show['instance_id'], $hasAutoPlaylist)) {
|
||||||
|
$options["show_has_auto_playlist"] = !$hasAutoPlaylist[$show['instance_id']];
|
||||||
|
} else {
|
||||||
|
$options["show_has_auto_playlist"] = true;
|
||||||
|
}
|
||||||
|
|
||||||
$event = array();
|
$event = array();
|
||||||
|
|
||||||
|
|
|
@ -237,8 +237,6 @@ SQL;
|
||||||
$ts = intval($this->_showInstance->getDbLastScheduled("U")) ? : 0;
|
$ts = intval($this->_showInstance->getDbLastScheduled("U")) ? : 0;
|
||||||
$id = $this->_showInstance->getDbId();
|
$id = $this->_showInstance->getDbId();
|
||||||
$lastid = $this->getLastAudioItemId();
|
$lastid = $this->getLastAudioItemId();
|
||||||
// Logging::info("The last id is $lastid");
|
|
||||||
|
|
||||||
$scheduler = new Application_Model_Scheduler($checkUserPerm);
|
$scheduler = new Application_Model_Scheduler($checkUserPerm);
|
||||||
$scheduler->scheduleAfter(
|
$scheduler->scheduleAfter(
|
||||||
array(array("id" => $lastid, "instance" => $id, "timestamp" => $ts)),
|
array(array("id" => $lastid, "instance" => $id, "timestamp" => $ts)),
|
||||||
|
@ -290,6 +288,7 @@ SQL;
|
||||||
}
|
}
|
||||||
|
|
||||||
private function checkToDeleteShow($showId)
|
private function checkToDeleteShow($showId)
|
||||||
|
|
||||||
{
|
{
|
||||||
//UTC DateTime object
|
//UTC DateTime object
|
||||||
$showsPopUntil = Application_Model_Preference::GetShowsPopulatedUntil();
|
$showsPopUntil = Application_Model_Preference::GetShowsPopulatedUntil();
|
||||||
|
@ -556,6 +555,26 @@ SQL;
|
||||||
return $isFilled;
|
return $isFilled;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function getShowHasAutoplaylist($p_start, $p_end)
|
||||||
|
{
|
||||||
|
$con = Propel::getConnection(CcShowInstancesPeer::DATABASE_NAME);
|
||||||
|
$con->beginTransaction();
|
||||||
|
try {
|
||||||
|
// query the show instances to find whether a show instance has an autoplaylist
|
||||||
|
$showInstances = CcShowInstancesQuery::create()
|
||||||
|
->filterByDbEnds($p_end->format(DEFAULT_TIMESTAMP_FORMAT), Criteria::LESS_THAN)
|
||||||
|
->filterByDbStarts($p_start->format(DEFAULT_TIMESTAMP_FORMAT), Criteria::GREATER_THAN)
|
||||||
|
->leftJoinCcShow()
|
||||||
|
->find($con);
|
||||||
|
return $showInstances;
|
||||||
|
}
|
||||||
|
catch (Exception $e) {
|
||||||
|
$con->rollback();
|
||||||
|
Logging::info("Couldn't query show instances for calendar to find which had autoplaylists");
|
||||||
|
Logging::info($e->getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public function showEmpty()
|
public function showEmpty()
|
||||||
{
|
{
|
||||||
$sql = <<<SQL
|
$sql = <<<SQL
|
||||||
|
|
Binary file not shown.
|
@ -214,7 +214,13 @@ function eventRender(event, element, view) {
|
||||||
$(element)
|
$(element)
|
||||||
.find(".fc-event-time")
|
.find(".fc-event-time")
|
||||||
.before('<span class="small-icon linked"></span><span class="small-icon show-empty"></span>');
|
.before('<span class="small-icon linked"></span><span class="small-icon show-empty"></span>');
|
||||||
} else {
|
// in theory a linked show shouldn't have an automatic playlist so adding this here
|
||||||
|
} else if (event.show_has_auto_playlist === true) {
|
||||||
|
$(element)
|
||||||
|
.find(".fc-event-time")
|
||||||
|
.before('<span class="small-icon autoplaylist"></span><span class="small-icon show-empty"></span>');
|
||||||
|
}
|
||||||
|
else {
|
||||||
$(element)
|
$(element)
|
||||||
.find(".fc-event-time")
|
.find(".fc-event-time")
|
||||||
.before('<span class="small-icon show-empty"></span>');
|
.before('<span class="small-icon show-empty"></span>');
|
||||||
|
@ -224,7 +230,11 @@ function eventRender(event, element, view) {
|
||||||
$(element)
|
$(element)
|
||||||
.find(".fc-event-time")
|
.find(".fc-event-time")
|
||||||
.before('<span class="small-icon linked"></span><span class="small-icon show-partial-filled"></span>');
|
.before('<span class="small-icon linked"></span><span class="small-icon show-partial-filled"></span>');
|
||||||
} else {
|
} else if (event.show_has_auto_playlist === true) {
|
||||||
|
$(element)
|
||||||
|
.find(".fc-event-time")
|
||||||
|
.before('<span class="small-icon autoplaylist"></span><span class="small-icon show-partial-filled"></span>');
|
||||||
|
} else {
|
||||||
$(element)
|
$(element)
|
||||||
.find(".fc-event-time")
|
.find(".fc-event-time")
|
||||||
.before('<span class="small-icon show-partial-filled"></span>');
|
.before('<span class="small-icon show-partial-filled"></span>');
|
||||||
|
@ -234,26 +244,38 @@ function eventRender(event, element, view) {
|
||||||
$(element)
|
$(element)
|
||||||
.find(".fc-event-time")
|
.find(".fc-event-time")
|
||||||
.before('<span class="small-icon linked"></span>');
|
.before('<span class="small-icon linked"></span>');
|
||||||
|
} else if (event.show_has_auto_playlist === true) {
|
||||||
|
$(element)
|
||||||
|
.find(".fc-event-time")
|
||||||
|
.before('<span class="small-icon autoplaylist"></span>');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (view.name === 'month') {
|
} else if (view.name === 'month') {
|
||||||
if (event.show_empty === 1) {
|
if (event.show_empty === 1) {
|
||||||
if (event.linked) {
|
if (event.linked) {
|
||||||
$(element)
|
$(element)
|
||||||
.find(".fc-event-title")
|
.find(".fc-event-title")
|
||||||
.after('<span class="small-icon linked"></span><span title="'+$.i18n._("Show is empty")+'" class="small-icon show-empty"></span>');
|
.after('<span class="small-icon linked"></span><span title="'+$.i18n._("Show is empty")+'" class="small-icon show-empty"></span>');
|
||||||
|
} else if (event.show_has_auto_playlist === true) {
|
||||||
|
$(element)
|
||||||
|
.find(".fc-event-title")
|
||||||
|
.after('<span title="'+$.i18n._("Show has an automatic playlist")+'"class="small-icon autoplaylist"></span><span title="'+$.i18n._("Show is empty")+'" class="small-icon show-empty"></span>');
|
||||||
} else {
|
} else {
|
||||||
$(element)
|
$(element)
|
||||||
.find(".fc-event-title")
|
.find(".fc-event-title")
|
||||||
.after('<span title="'+$.i18n._("Show is empty")+'" class="small-icon show-empty"></span>');
|
.after('<span title="'+$.i18n._("Show is empty")+'" class="small-icon show-empty"></span>');
|
||||||
}
|
}
|
||||||
} else if (event.show_partial_filled === true) {
|
} else if (event.show_partial_filled === true) {
|
||||||
if (event.linked) {
|
if (event.linked) {
|
||||||
$(element)
|
$(element)
|
||||||
.find(".fc-event-title")
|
.find(".fc-event-title")
|
||||||
.after('<span class="small-icon linked"></span><span title="'+$.i18n._("Show is partially filled")+'" class="small-icon show-partial-filled"></span>');
|
.after('<span class="small-icon linked"></span><span title="' + $.i18n._("Show is partially filled") + '" class="small-icon show-partial-filled"></span>');
|
||||||
|
} else if (event.show_has_auto_playlist === true) {
|
||||||
|
$(element)
|
||||||
|
.find(".fc-event-title")
|
||||||
|
.after('<span title="'+$.i18n._("Show has an automatic playlist")+'"class="small-icon autoplaylist"></span><span title="'+$.i18n._("Show is partially filled")+'" class="small-icon show-partial-filled"></span>');
|
||||||
} else {
|
} else {
|
||||||
$(element)
|
$(element)
|
||||||
.find(".fc-event-title")
|
.find(".fc-event-title")
|
||||||
.after('<span title="'+$.i18n._("Show is partially filled")+'" class="small-icon show-partial-filled"></span>');
|
.after('<span title="'+$.i18n._("Show is partially filled")+'" class="small-icon show-partial-filled"></span>');
|
||||||
}
|
}
|
||||||
|
@ -262,6 +284,10 @@ function eventRender(event, element, view) {
|
||||||
$(element)
|
$(element)
|
||||||
.find(".fc-event-title")
|
.find(".fc-event-title")
|
||||||
.after('<span class="small-icon linked"></span>');
|
.after('<span class="small-icon linked"></span>');
|
||||||
|
} else if (event.show_has_auto_playlist === true) {
|
||||||
|
$(element)
|
||||||
|
.find(".fc-event-title")
|
||||||
|
.after('<span class="small-icon autoplaylist"></span>');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue