diff --git a/airtime_mvc/application/controllers/LibraryController.php b/airtime_mvc/application/controllers/LibraryController.php index 67c6dc9a5..94a214fef 100644 --- a/airtime_mvc/application/controllers/LibraryController.php +++ b/airtime_mvc/application/controllers/LibraryController.php @@ -270,7 +270,7 @@ class LibraryController extends Zend_Controller_Action Logging::log($data['MDATA_KEY_FILEPATH']); Application_Model_RabbitMq::SendMessageToMediaMonitor("md_update", $data); - $this->_redirect('playlist/index'); + $this->_redirect('Playlist'); } } diff --git a/airtime_mvc/application/forms/SmartBlockCriteria.php b/airtime_mvc/application/forms/SmartBlockCriteria.php index 55abc296a..016105740 100644 --- a/airtime_mvc/application/forms/SmartBlockCriteria.php +++ b/airtime_mvc/application/forms/SmartBlockCriteria.php @@ -42,7 +42,7 @@ class Application_Form_SmartBlockCriteria extends Zend_Form_SubForm "album_title" => "s", "artist_name" => "s", "bit_rate" => "n", - "bpm" => "n", + "bpm" => "s", "comments" => "s", "composer" => "s", "conductor" => "s", diff --git a/airtime_mvc/application/models/Block.php b/airtime_mvc/application/models/Block.php index cca9b63c5..bb7f50a9e 100644 --- a/airtime_mvc/application/models/Block.php +++ b/airtime_mvc/application/models/Block.php @@ -275,12 +275,24 @@ EOT; if ($modifier == "items") { $length = $value." ".$modifier; } else { - $value = str_pad($value, 2, "0", STR_PAD_LEFT); + $hour = "00"; if ($modifier == "minutes") { - $length = "00:".$value.":00"; + if ($value >59) { + $hour = intval($value/60); + $value = $value%60; + + } } else if ($modifier == "hours") { - $length = $value.":00:00"; + $mins = $value * 60; + if ($mins >59) { + $hour = intval($mins/60); + $hour = str_pad($hour, 2, "0", STR_PAD_LEFT); + $value = $mins%60; + } } + $hour = str_pad($hour, 2, "0", STR_PAD_LEFT); + $value = str_pad($value, 2, "0", STR_PAD_LEFT); + $length = $hour.":".$value.":00"; } return $length; } @@ -1301,9 +1313,20 @@ EOT; foreach ($crit as $criteria) { $spCriteriaPhpName = self::$criteria2PeerMap[$criteria['criteria']]; $spCriteria = $criteria['criteria']; - $spCriteriaModifier = $criteria['modifier']; - $spCriteriaValue = $criteria['value']; + + $column = CcFilesPeer::getTableMap()->getColumnByPhpName(self::$criteria2PeerMap[$spCriteria]); + // if the column is timestamp, convert it into UTC + if ($column->getType() == PropelColumnTypes::TIMESTAMP) { + $spCriteriaValue = Application_Common_DateHelper::ConvertToUtcDateTimeString($criteria['value']); + } else if($spCriteria == "bit_rate") { + // multiply 1000 because we store only number value + // e.g 192kps is stored as 192000 + $spCriteriaValue = $criteria['value']*1000; + } else { + $spCriteriaValue = $criteria['value']; + } + if ($spCriteriaModifier == "starts with") { $spCriteriaValue = "$spCriteriaValue%"; } else if ($spCriteriaModifier == "ends with") { diff --git a/airtime_mvc/application/views/scripts/playlist/playlist.phtml b/airtime_mvc/application/views/scripts/playlist/playlist.phtml index 218ca0cc3..70ce2faea 100644 --- a/airtime_mvc/application/views/scripts/playlist/playlist.phtml +++ b/airtime_mvc/application/views/scripts/playlist/playlist.phtml @@ -38,7 +38,7 @@ if (isset($this->obj)) { form; ?>