diff --git a/airtime_mvc/application/Bootstrap.php b/airtime_mvc/application/Bootstrap.php index 04c9e7841..dc4776ee5 100644 --- a/airtime_mvc/application/Bootstrap.php +++ b/airtime_mvc/application/Bootstrap.php @@ -19,6 +19,7 @@ require_once __DIR__."/configs/constants.php"; require_once 'Preference.php'; require_once "DateHelper.php"; require_once "OsPath.php"; +require_once "Database.php"; require_once __DIR__.'/controllers/plugins/RabbitMqPlugin.php'; diff --git a/airtime_mvc/application/common/Database.php b/airtime_mvc/application/common/Database.php new file mode 100644 index 000000000..96e6e6770 --- /dev/null +++ b/airtime_mvc/application/common/Database.php @@ -0,0 +1,24 @@ +prepare($sql); + foreach ($paramValueMap as $param => $v) { + $stmt->bindValue($param, $v); + } + $rows = array(); + if ($stmt->execute()) { + if ($type == 'single') { + $rows = $stmt->fetch(PDO::FETCH_ASSOC); + } else if ($type == 'column'){ + $rows = $stmt->fetchColumn(); + } else { + $rows = $stmt->fetchAll(PDO::FETCH_ASSOC); + } + } else { + $msg = implode(',', $stmt->errorInfo()); + throw new Exception("Error: $msg"); + } + return $rows; + } +} \ No newline at end of file diff --git a/airtime_mvc/application/controllers/AudiopreviewController.php b/airtime_mvc/application/controllers/AudiopreviewController.php index f827bbf08..4a55d8576 100644 --- a/airtime_mvc/application/controllers/AudiopreviewController.php +++ b/airtime_mvc/application/controllers/AudiopreviewController.php @@ -278,7 +278,7 @@ class AudiopreviewController extends Zend_Controller_Action $elementMap = array( 'element_title' => isset($track['track_title']) ? $track['track_title'] : "", - 'element_artist' => isset($track['artist_name']) ? $track['artist_name'] : "", + 'element_artist' => isset($track['creator']) ? $track['creator'] : "", 'element_position' => $position, 'element_id' => ++$position, ); diff --git a/airtime_mvc/application/models/Show.php b/airtime_mvc/application/models/Show.php index 9fcaee13e..dd3a1e520 100644 --- a/airtime_mvc/application/models/Show.php +++ b/airtime_mvc/application/models/Show.php @@ -1832,7 +1832,7 @@ SELECT si.starts AS start_timestamp, s.url, starts, ends -FROM cc_show_instances si, +FROM cc_show_instances si LEFT JOIN cc_show s ON si.instance_id = s.id WHERE si.show_id = s.id @@ -1875,7 +1875,7 @@ SELECT si.starts AS start_timestamp, s.url, starts, ends -FROM cc_show_instances si, +FROM cc_show_instances si LEFT JOIN cc_show s ON si.instance_id = s.id WHERE si.show_id = s.id diff --git a/airtime_mvc/application/models/ShowInstance.php b/airtime_mvc/application/models/ShowInstance.php index 2d2b18894..b90051c7f 100644 --- a/airtime_mvc/application/models/ShowInstance.php +++ b/airtime_mvc/application/models/ShowInstance.php @@ -655,6 +655,9 @@ FROM ( 0::INTEGER as type , f.id AS item_id, f.track_title, + f.album_title AS album, + f.genre AS genre, + f.length AS length, f.artist_name AS creator, f.file_exists AS EXISTS, f.filepath AS filepath @@ -668,6 +671,9 @@ FROM ( 1::INTEGER as type, ws.id AS item_id, (ws.name || ': ' || ws.url) AS title, + null AS album, + null AS genre, + ws.length AS length, sub.login AS creator, 't'::boolean AS EXISTS, ws.url AS filepath @@ -688,8 +694,10 @@ SQL; $dt->setTimezone(new DateTimeZone(date_default_timezone_get())); $row["starts"] = $dt->format("Y-m-d H:i:s"); - $formatter = new LengthFormatter($row["clip_length"]); - $row["clip_length"] = $formatter->format(); + if (isset($row['length'])) { + $formatter = new LengthFormatter($row["length"]); + $row["length"] = $formatter->format(); + } } diff --git a/airtime_mvc/application/views/scripts/schedule/show-content-dialog.phtml b/airtime_mvc/application/views/scripts/schedule/show-content-dialog.phtml index 103796adc..a935f3f99 100644 --- a/airtime_mvc/application/views/scripts/schedule/show-content-dialog.phtml +++ b/airtime_mvc/application/views/scripts/schedule/show-content-dialog.phtml @@ -11,12 +11,12 @@ showContent as $row): ?> -