CC-3373 : Timeline: only lock the currently playing track and the one after
This commit is contained in:
parent
6c749075ac
commit
f61afb0216
|
@ -222,7 +222,7 @@ class Application_Model_Schedule {
|
||||||
* @return array $scheduledItems
|
* @return array $scheduledItems
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public static function GetScheduleDetailItems($p_startDateTime, $p_endDateTime, $p_shows)
|
public static function GetScheduleDetailItems($p_start, $p_end, $p_shows)
|
||||||
{
|
{
|
||||||
global $CC_CONFIG, $CC_DBC;
|
global $CC_CONFIG, $CC_DBC;
|
||||||
|
|
||||||
|
@ -250,7 +250,10 @@ class Application_Model_Schedule {
|
||||||
|
|
||||||
WHERE si.modified_instance = false AND
|
WHERE si.modified_instance = false AND
|
||||||
|
|
||||||
si.starts >= '{$p_startDateTime}' AND si.starts < '{$p_endDateTime}'";
|
((si.starts >= '{$p_start}' AND si.starts < '{$p_end}')
|
||||||
|
OR (si.ends > '{$p_start}' AND si.ends <= '{$p_end}')
|
||||||
|
OR (si.starts <= '{$p_start}' AND si.ends >= '{$p_end}'))";
|
||||||
|
|
||||||
|
|
||||||
if (count($p_shows) > 0) {
|
if (count($p_shows) > 0) {
|
||||||
$sql .= " AND show_id IN (".implode(",", $p_shows).")";
|
$sql .= " AND show_id IN (".implode(",", $p_shows).")";
|
||||||
|
|
|
@ -58,9 +58,14 @@ class Application_Model_ShowBuilder {
|
||||||
}
|
}
|
||||||
|
|
||||||
$showStartDT = new DateTime($p_item["si_starts"], new DateTimeZone("UTC"));
|
$showStartDT = new DateTime($p_item["si_starts"], new DateTimeZone("UTC"));
|
||||||
|
$schedStartDT = new DateTime($p_item["sched_starts"], new DateTimeZone("UTC"));
|
||||||
|
|
||||||
//can only schedule the show if it hasn't started and you are allowed.
|
$showStartEpoch = intval($showStartDT->format('U'));
|
||||||
if ($this->epoch_now < $showStartDT->format('U') && $this->user->canSchedule($p_item["show_id"]) == true) {
|
$schedStartEpoch = intval($schedStartDT->format('U'));
|
||||||
|
|
||||||
|
//can only schedule the show if item hasn't started and you are allowed.
|
||||||
|
if ($this->epoch_now < max($showStartEpoch, $schedStartEpoch)
|
||||||
|
&& $this->user->canSchedule($p_item["show_id"]) == true) {
|
||||||
$row["allowed"] = true;
|
$row["allowed"] = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -270,7 +270,7 @@ var AIRTIME = (function(AIRTIME){
|
||||||
td;
|
td;
|
||||||
|
|
||||||
//create cursor arrows.
|
//create cursor arrows.
|
||||||
tableDiv.find("tr:not(:first, .sb-footer, .sb-empty, .sb-not-allowed)").each(function(i, el) {
|
tableDiv.find("tr.sb-now-playing, tr:not(:first, .sb-footer, .sb-empty, .sb-not-allowed)").each(function(i, el) {
|
||||||
td = $(el).find("td:first");
|
td = $(el).find("td:first");
|
||||||
if (td.hasClass("dataTables_empty")) {
|
if (td.hasClass("dataTables_empty")) {
|
||||||
return false;
|
return false;
|
||||||
|
@ -429,7 +429,7 @@ var AIRTIME = (function(AIRTIME){
|
||||||
var prev = ui.item.prev();
|
var prev = ui.item.prev();
|
||||||
|
|
||||||
//can't add items outside of shows.
|
//can't add items outside of shows.
|
||||||
if (!prev.hasClass("sb-allowed")) {
|
if (prev.hasClass("sb-footer") || prev.find("td:first").hasClass("dataTables_empty")) {
|
||||||
alert("Cannot schedule outside a show.");
|
alert("Cannot schedule outside a show.");
|
||||||
ui.item.remove();
|
ui.item.remove();
|
||||||
return;
|
return;
|
||||||
|
|
Loading…
Reference in New Issue