From 8f3037c3e438eed8e0af2054967cd48157556f9d Mon Sep 17 00:00:00 2001 From: Martin Konecny Date: Wed, 8 Aug 2012 23:02:08 -0400 Subject: [PATCH] CC-1665: Scheduled stream rebroadcasting and recording -remove incorrect "no items" warning when a show only contained a webstream --- airtime_mvc/application/models/Schedule.php | 116 +++++++++++++------- 1 file changed, 77 insertions(+), 39 deletions(-) diff --git a/airtime_mvc/application/models/Schedule.php b/airtime_mvc/application/models/Schedule.php index 2666fa13e..c09eef089 100644 --- a/airtime_mvc/application/models/Schedule.php +++ b/airtime_mvc/application/models/Schedule.php @@ -256,59 +256,97 @@ class Application_Model_Schedule { global $CC_CONFIG; $con = Propel::getConnection(); - $templateSql = "SELECT DISTINCT - showt.name AS show_name, showt.color AS show_color, - showt.background_color AS show_background_color, showt.id AS show_id, + $templateSql = <<= '{$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) { - $templateSql .= " AND show_id IN (".implode(",", $p_shows).")"; - } $filesSql = str_replace("%%columns%%", - "ft.track_title AS file_track_title, ft.artist_name AS file_artist_name, - ft.album_title AS file_album_title, ft.length AS file_length, ft.file_exists AS file_exists", + $filesColumns, $templateSql); $filesSql= str_replace("%%join%%", - "cc_schedule AS sched JOIN cc_files AS ft ON (sched.file_id = ft.id) - RIGHT JOIN cc_show_instances AS si ON (si.id = sched.instance_id))", + $filesJoin, $filesSql); + $streamColumns = << 0) { + $showPredicate = " AND show_id IN (".implode(",", $p_shows).")"; + } + + $sql = <<= '{$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}') +ORDER BY si_starts, + sched_starts; +SQL; $rows = $con->query($sql)->fetchAll(PDO::FETCH_ASSOC); return $rows;