public function getCurrentPlaylistAction() { $range = Application_Model_Schedule::GetPlayOrderRange(); $show = Application_Model_Show::getCurrentShow(); /* Convert all UTC times to localtime before sending back to user. */ if (isset($range["previous"])) { $range["previous"]["starts"] = Application_Common_DateHelper::ConvertToLocalDateTimeString($range["previous"]["starts"]); $range["previous"]["ends"] = Application_Common_DateHelper::ConvertToLocalDateTimeString($range["previous"]["ends"]); } if (isset($range["current"])) { $range["current"]["starts"] = Application_Common_DateHelper::ConvertToLocalDateTimeString($range["current"]["starts"]); $range["current"]["ends"] = Application_Common_DateHelper::ConvertToLocalDateTimeString($range["current"]["ends"]); } if (isset($range["next"])) { $range["next"]["starts"] = Application_Common_DateHelper::ConvertToLocalDateTimeString($range["next"]["starts"]); $range["next"]["ends"] = Application_Common_DateHelper::ConvertToLocalDateTimeString($range["next"]["ends"]); } Application_Model_Show::convertToLocalTimeZone($range["currentShow"], array("starts", "ends", "start_timestamp", "end_timestamp")); Application_Model_Show::convertToLocalTimeZone($range["nextShow"], array("starts", "ends", "start_timestamp", "end_timestamp")); $source_status = array(); $switch_status = array(); $live_dj = Application_Model_Preference::GetSourceStatus("live_dj"); $master_dj = Application_Model_Preference::GetSourceStatus("master_dj"); $scheduled_play_switch = Application_Model_Preference::GetSourceSwitchStatus("scheduled_play"); $live_dj_switch = Application_Model_Preference::GetSourceSwitchStatus("live_dj"); $master_dj_switch = Application_Model_Preference::GetSourceSwitchStatus("master_dj"); //might not be the correct place to implement this but for now let's just do it here $source_status['live_dj_source'] = $live_dj; $source_status['master_dj_source'] = $master_dj; $this->view->source_status = $source_status; $switch_status['live_dj_source'] = $live_dj_switch; $switch_status['master_dj_source'] = $master_dj_switch; $switch_status['scheduled_play'] = $scheduled_play_switch; $this->view->switch_status = $switch_status; $this->view->entries = $range; $this->view->show_name = isset($show[0]) ? $show[0]["name"] : ""; }
/** * Convert the columns given in the array $columnsToConvert in the * database result $rows to local timezone. * * @param type $rows arrays of arrays containing database query result * @param type $columnsToConvert array of column names to convert */ public static function convertToLocalTimeZone(&$rows, $columnsToConvert) { if (!is_array($rows)) { return; } foreach ($rows as &$row) { foreach ($columnsToConvert as $column) { $row[$column] = Application_Common_DateHelper::ConvertToLocalDateTimeString($row[$column]); } } }