From 8055a9c80b00e2ed3a25faa328b51e8b25a5ce71 Mon Sep 17 00:00:00 2001 From: James Date: Mon, 13 Aug 2012 11:18:15 -0400 Subject: [PATCH 1/8] CC-4214: Smart Playlist -> Criteria about datetime: Please convert the searched value from local time to UTC - fixed --- airtime_mvc/application/models/Block.php | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/airtime_mvc/application/models/Block.php b/airtime_mvc/application/models/Block.php index cca9b63c5..bca194d20 100644 --- a/airtime_mvc/application/models/Block.php +++ b/airtime_mvc/application/models/Block.php @@ -1301,9 +1301,16 @@ 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 { + $spCriteriaValue = $criteria['value']; + } + if ($spCriteriaModifier == "starts with") { $spCriteriaValue = "$spCriteriaValue%"; } else if ($spCriteriaModifier == "ends with") { From 1bd94a0757541692e0406a1d33927f4c4063bc29 Mon Sep 17 00:00:00 2001 From: James Date: Mon, 13 Aug 2012 11:32:06 -0400 Subject: [PATCH 2/8] CC-4212: Smart Playlist: The formats of 'Bit Rate' are not matched between Media Library and Criteria - fixed --- airtime_mvc/application/models/Block.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/airtime_mvc/application/models/Block.php b/airtime_mvc/application/models/Block.php index bca194d20..b16ce7e5d 100644 --- a/airtime_mvc/application/models/Block.php +++ b/airtime_mvc/application/models/Block.php @@ -1307,6 +1307,10 @@ EOT; // 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']; } From 19c90e66880adc18970d7efbca0831bfc1281b79 Mon Sep 17 00:00:00 2001 From: James Date: Mon, 13 Aug 2012 11:42:48 -0400 Subject: [PATCH 3/8] CC-4204: Dynamic Smart Playlist: Set limit to 500 minutes and click Save will froze the Browser - fixed --- airtime_mvc/application/models/Block.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/airtime_mvc/application/models/Block.php b/airtime_mvc/application/models/Block.php index b16ce7e5d..2025e39a4 100644 --- a/airtime_mvc/application/models/Block.php +++ b/airtime_mvc/application/models/Block.php @@ -277,7 +277,12 @@ EOT; } else { $value = str_pad($value, 2, "0", STR_PAD_LEFT); if ($modifier == "minutes") { - $length = "00:".$value.":00"; + $hour = "00"; + if ($value >59) { + $hour = intval($value/60); + $value = $value%60; + } + $length = $hour.":".$value.":00"; } else if ($modifier == "hours") { $length = $value.":00:00"; } From 1e36d778578451175014a6ff3f7f122c710adbde Mon Sep 17 00:00:00 2001 From: James Date: Mon, 13 Aug 2012 11:51:25 -0400 Subject: [PATCH 4/8] CC-4213: Smart Playlist -> Criteria Bpm: Cannot find track by 'is in the range' - changed BPM to string type --- airtime_mvc/application/forms/SmartBlockCriteria.php | 2 +- airtime_mvc/public/js/airtime/playlist/smart_playlistbuilder.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) 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/public/js/airtime/playlist/smart_playlistbuilder.js b/airtime_mvc/public/js/airtime/playlist/smart_playlistbuilder.js index 1a9a5b85b..81dadd729 100644 --- a/airtime_mvc/public/js/airtime/playlist/smart_playlistbuilder.js +++ b/airtime_mvc/public/js/airtime/playlist/smart_playlistbuilder.js @@ -568,7 +568,7 @@ var criteriaTypes = { "album_title" : "s", "artist_name" : "s", "bit_rate" : "n", - "bpm" : "n", + "bpm" : "s", "comments" : "s", "composer" : "s", "conductor" : "s", From db3a9357f96b5f8af23cfcfca2c3bd51e9e13748 Mon Sep 17 00:00:00 2001 From: James Date: Mon, 13 Aug 2012 11:59:28 -0400 Subject: [PATCH 5/8] CC-4211: Smart Playlist: length of dynamic block wont be convert to hh:mm:ss if set limit as float number, such as 23.999 - fixed --- airtime_mvc/application/models/Block.php | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/airtime_mvc/application/models/Block.php b/airtime_mvc/application/models/Block.php index 2025e39a4..bb7f50a9e 100644 --- a/airtime_mvc/application/models/Block.php +++ b/airtime_mvc/application/models/Block.php @@ -275,17 +275,24 @@ EOT; if ($modifier == "items") { $length = $value." ".$modifier; } else { - $value = str_pad($value, 2, "0", STR_PAD_LEFT); + $hour = "00"; if ($modifier == "minutes") { - $hour = "00"; if ($value >59) { $hour = intval($value/60); $value = $value%60; + } - $length = $hour.":".$value.":00"; } 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; } From dad8762f4f9e3780f1c7758372040858ec2d87cb Mon Sep 17 00:00:00 2001 From: James Date: Mon, 13 Aug 2012 12:31:49 -0400 Subject: [PATCH 6/8] CC-4209: Smart Playlist: 'Processing' wont disappear after clicking Generate during 'File import in progress' - fixed --- airtime_mvc/application/controllers/LibraryController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/airtime_mvc/application/controllers/LibraryController.php b/airtime_mvc/application/controllers/LibraryController.php index 2bfa074f7..de175004d 100644 --- a/airtime_mvc/application/controllers/LibraryController.php +++ b/airtime_mvc/application/controllers/LibraryController.php @@ -268,7 +268,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'); } } From 0203c3f0c5338ec054bfbb5fedcd2830a4d5d05b Mon Sep 17 00:00:00 2001 From: denise Date: Mon, 13 Aug 2012 12:46:17 -0400 Subject: [PATCH 7/8] CC-4206: Smart Playlist: Edit cue in/out setting will lost all contents -fixed event bubbling --- airtime_mvc/public/js/airtime/library/spl.js | 68 +++++++++++--------- 1 file changed, 37 insertions(+), 31 deletions(-) diff --git a/airtime_mvc/public/js/airtime/library/spl.js b/airtime_mvc/public/js/airtime/library/spl.js index 0996b67bc..1f329f58a 100644 --- a/airtime_mvc/public/js/airtime/library/spl.js +++ b/airtime_mvc/public/js/airtime/library/spl.js @@ -61,18 +61,15 @@ var AIRTIME = (function(AIRTIME){ .hide(); } - function changeCueIn(event) { - event.stopPropagation(); - - var span = $(this), - id = span.parent().attr("id").split("_").pop(), - url = "/Playlist/set-cue", - cueIn = $.trim(span.text()), - li = span.parents("li"), - unqid = li.attr("unqid"), - lastMod = getModified(), - type = $('#obj_type').val(); - + function changeCueIn(span) { + var id = span.parent().attr("id").split("_").pop(), + url = "/Playlist/set-cue", + cueIn = $.trim(span.text()), + li = span.parents("li"), + unqid = li.attr("unqid"), + lastMod = getModified(), + type = $('#obj_type').val(); + if (!isTimeValid(cueIn)){ showError(span, "please put in a time '00:00:00 (.000000)'"); return; @@ -100,16 +97,13 @@ var AIRTIME = (function(AIRTIME){ }); } - function changeCueOut(event) { - event.stopPropagation(); - - var span = $(this), - id = span.parent().attr("id").split("_").pop(), - url = "/Playlist/set-cue", - cueOut = $.trim(span.text()), - li = span.parents("li"), - unqid = li.attr("unqid"), - lastMod = getModified(), + function changeCueOut(span) { + var id = span.parent().attr("id").split("_").pop(), + url = "/Playlist/set-cue", + cueOut = $.trim(span.text()), + li = span.parents("li"), + unqid = li.attr("unqid"), + lastMod = getModified(), type = $('#obj_type').val(); if (!isTimeValid(cueOut)){ @@ -140,7 +134,7 @@ var AIRTIME = (function(AIRTIME){ } function changeFadeIn(event) { - event.stopPropagation(); + event.preventDefault(); var span = $(this), id = span.parent().attr("id").split("_").pop(), @@ -406,14 +400,26 @@ var AIRTIME = (function(AIRTIME){ //sets events dynamically for the cue editor. function setCueEvents() { - - $pl.delegate(".spl_cue_in span", - {"focusout": changeCueIn, - "keydown": submitOnEnter}); - - $pl.delegate(".spl_cue_out span", - {"focusout": changeCueOut, - "keydown": submitOnEnter}); + + $('.spl_cue_in span').blur(function(e){ + e.stopPropagation(); + changeCueIn($(this)); + }); + + $('.spl_cue_in span').keydown(function(e){ + e.stopPropagation(); + submitOnEnter(e); + }); + + $('.spl_cue_out span').blur(function(e){ + e.stopPropagation(); + changeCueOut($(this)); + }); + + $('.spl_cue_out span').keydown(function(e){ + e.stopPropagation(); + submitOnEnter(e); + }); } //sets events dynamically for the fade editor. From fa87393ba9bfe644ec488e97c48a7987471100b4 Mon Sep 17 00:00:00 2001 From: denise Date: Mon, 13 Aug 2012 14:53:21 -0400 Subject: [PATCH 8/8] CC-4216: Playlist: 'Close' button for fade in/out is out of the border when it's empty -fixed --- airtime_mvc/application/views/scripts/playlist/playlist.phtml | 2 +- airtime_mvc/public/css/playlist_builder.css | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) 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; ?>