From 2337078dd84a1e5332ef357f89f85c0abdd41eb3 Mon Sep 17 00:00:00 2001 From: Rudi Grinberg Date: Mon, 17 Sep 2012 12:35:12 -0400 Subject: [PATCH 01/12] Cleaned up unused variables. Formatted some lines. --- airtime_mvc/application/controllers/ScheduleController.php | 1 - airtime_mvc/application/models/Soundcloud.php | 2 +- airtime_mvc/application/models/StoredFile.php | 4 +++- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/airtime_mvc/application/controllers/ScheduleController.php b/airtime_mvc/application/controllers/ScheduleController.php index 8d9382717..c567a510f 100644 --- a/airtime_mvc/application/controllers/ScheduleController.php +++ b/airtime_mvc/application/controllers/ScheduleController.php @@ -205,7 +205,6 @@ class ScheduleController extends Zend_Controller_Action public function uploadToSoundCloudAction() { - global $CC_CONFIG; $show_instance = $this->_getParam('id'); try { $show_inst = new Application_Model_ShowInstance($show_instance); diff --git a/airtime_mvc/application/models/Soundcloud.php b/airtime_mvc/application/models/Soundcloud.php index 1c4b94f9f..b6d8cedfc 100644 --- a/airtime_mvc/application/models/Soundcloud.php +++ b/airtime_mvc/application/models/Soundcloud.php @@ -33,7 +33,7 @@ class Application_Model_Soundcloud $tags = Application_Model_Preference::GetSoundCloudTags(); } - $downloadable = Application_Model_Preference::GetSoundCloudDownloadbleOption() == '1'?true:false; + $downloadable = Application_Model_Preference::GetSoundCloudDownloadbleOption() == '1'; $track_data = array( 'track[sharing]' => 'private', diff --git a/airtime_mvc/application/models/StoredFile.php b/airtime_mvc/application/models/StoredFile.php index 006593314..3469c75c9 100644 --- a/airtime_mvc/application/models/StoredFile.php +++ b/airtime_mvc/application/models/StoredFile.php @@ -1170,7 +1170,9 @@ SQL; $release = $file->getDbYear(); try { $soundcloud = new Application_Model_Soundcloud(); - $soundcloud_res = $soundcloud->uploadTrack($this->getFilePath(), $this->getName(), $description, $tag, $release, $genre); + $soundcloud_res = $soundcloud->uploadTrack( + $this->getFilePath(), $this->getName(), $description, + $tag, $release, $genre); $this->setSoundCloudFileId($soundcloud_res['id']); $this->setSoundCloudLinkToFile($soundcloud_res['permalink_url']); $this->setSoundCloudUploadTime(new DateTime("now"), new DateTimeZone("UTC")); From 5e514b3b60ba39a0c91c50333878130a51234327 Mon Sep 17 00:00:00 2001 From: James Date: Mon, 17 Sep 2012 12:41:58 -0400 Subject: [PATCH 02/12] -UI alignment of input text element --- airtime_mvc/public/js/airtime/library/library.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/airtime_mvc/public/js/airtime/library/library.js b/airtime_mvc/public/js/airtime/library/library.js index b430c40e9..3fea72940 100644 --- a/airtime_mvc/public/js/airtime/library/library.js +++ b/airtime_mvc/public/js/airtime/library/library.js @@ -17,6 +17,7 @@ var AIRTIME = (function(AIRTIME) { "comments" : "s", "composer" : "s", "conductor" : "s", + "copyright" : "s", "utime" : "n", "mtime" : "n", "lptime" : "n", @@ -382,14 +383,16 @@ var AIRTIME = (function(AIRTIME) { } var inputClass = 'filter_column filter_number_text'; + var labelStyle = "style='margin-right:35px;'"; if (criteriaTypes[ele.mDataProp] != "s") { inputClass = 'filterColumn filter_number_range'; + labelStyle = ""; } if (ele.bVisible) { - advanceSearchDiv.append("
"); + advanceSearchDiv.append("
"); } else { - advanceSearchDiv.append(""); + advanceSearchDiv.append(""); } if (criteriaTypes[ele.mDataProp] == "s") { From 92a5bf51a689955637e7a7718319c1a969b8bbe2 Mon Sep 17 00:00:00 2001 From: Rudi Grinberg Date: Mon, 17 Sep 2012 12:45:33 -0400 Subject: [PATCH 03/12] Added warning for uploading unknown file types --- airtime_mvc/application/controllers/LibraryController.php | 8 +++++--- airtime_mvc/application/models/Soundcloud.php | 3 ++- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/airtime_mvc/application/controllers/LibraryController.php b/airtime_mvc/application/controllers/LibraryController.php index e05747200..fa6a92e68 100644 --- a/airtime_mvc/application/controllers/LibraryController.php +++ b/airtime_mvc/application/controllers/LibraryController.php @@ -486,10 +486,12 @@ class LibraryController extends Zend_Controller_Action $this->view->error_code = $file->getSoundCloudErrorCode(); $this->view->error_msg = $file->getSoundCloudErrorMsg(); } elseif ($type == "file") { - $file = Application_Model_StoredFile::Recall($id); - $this->view->sc_id = $file->getSoundCloudId(); + $file = Application_Model_StoredFile::Recall($id); + $this->view->sc_id = $file->getSoundCloudId(); $this->view->error_code = $file->getSoundCloudErrorCode(); - $this->view->error_msg = $file->getSoundCloudErrorMsg(); + $this->view->error_msg = $file->getSoundCloudErrorMsg(); + } else { + Logging::warn("Trying to upload unknown type: $type with id: $id"); } } } diff --git a/airtime_mvc/application/models/Soundcloud.php b/airtime_mvc/application/models/Soundcloud.php index b6d8cedfc..7e2b74d57 100644 --- a/airtime_mvc/application/models/Soundcloud.php +++ b/airtime_mvc/application/models/Soundcloud.php @@ -23,7 +23,8 @@ class Application_Model_Soundcloud return $token; } - public function uploadTrack($filepath, $filename, $description, $tags=array(), $release=null, $genre=null) + public function uploadTrack($filepath, $filename, $description, + $tags=array(), $release=null, $genre=null) { if ($this->getToken()) { if (count($tags)) { From fef949f6eabc52acb8d63bfbd221cf906dec4eb7 Mon Sep 17 00:00:00 2001 From: Rudi Grinberg Date: Mon, 17 Sep 2012 12:50:04 -0400 Subject: [PATCH 04/12] band aided some bug --- airtime_mvc/application/models/Preference.php | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/airtime_mvc/application/models/Preference.php b/airtime_mvc/application/models/Preference.php index 807d23b6d..33059cebd 100644 --- a/airtime_mvc/application/models/Preference.php +++ b/airtime_mvc/application/models/Preference.php @@ -1100,7 +1100,17 @@ class Application_Model_Preference return function ($x) { return $x; }; } else { $ds = unserialize($v); - return function ($x) use ($ds) { return $ds['ColReorder'][$x]; } ; + return function ($x) use ($ds) { + if ( in_array($ds['ColReorder'], $x) ) { + return $ds['ColReorder'][$x]; + } else { + Logging::warn("Index $x does not exist preferences"); + Logging::warn("Defaulting to identity and printing + preferences"); + Logging::warn($ds); + return $x; + } + } ; } } From c7c74e18a7f4a2b01a5cf75d45b2988b85148150 Mon Sep 17 00:00:00 2001 From: Rudi Grinberg Date: Mon, 17 Sep 2012 14:17:22 -0400 Subject: [PATCH 05/12] removed carriege returns --- utils/soundcloud-uploader.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/utils/soundcloud-uploader.php b/utils/soundcloud-uploader.php index e7b116785..ea6826aab 100644 --- a/utils/soundcloud-uploader.php +++ b/utils/soundcloud-uploader.php @@ -24,11 +24,11 @@ require_once($CC_CONFIG['phpDir'].'/application/configs/conf.php'); $CC_CONFIG['phpDir'] = $values['general']['airtime_dir']; -// Ensure library/ is on include_path -set_include_path(implode(PATH_SEPARATOR, array( - get_include_path(), - realpath($CC_CONFIG['phpDir'] . '/library') -))); +// Ensure library/ is on include_path +set_include_path(implode(PATH_SEPARATOR, array( + get_include_path(), + realpath($CC_CONFIG['phpDir'] . '/library') +))); require_once($CC_CONFIG['phpDir'].'/application/models/StoredFile.php'); require_once($CC_CONFIG['phpDir'].'/application/models/Preference.php'); From ed45011b40b00ae5496c7a4a8e38708a5c23de16 Mon Sep 17 00:00:00 2001 From: Rudi Grinberg Date: Mon, 17 Sep 2012 14:21:13 -0400 Subject: [PATCH 06/12] needle <-> haystack --- airtime_mvc/application/models/Preference.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/airtime_mvc/application/models/Preference.php b/airtime_mvc/application/models/Preference.php index 33059cebd..c73426a2d 100644 --- a/airtime_mvc/application/models/Preference.php +++ b/airtime_mvc/application/models/Preference.php @@ -1101,7 +1101,7 @@ class Application_Model_Preference } else { $ds = unserialize($v); return function ($x) use ($ds) { - if ( in_array($ds['ColReorder'], $x) ) { + if ( in_array($x, $ds['ColReorder'] ) ) { return $ds['ColReorder'][$x]; } else { Logging::warn("Index $x does not exist preferences"); From 8801ccecce904d0bd538d9f53617f9297c43a9ca Mon Sep 17 00:00:00 2001 From: denise Date: Mon, 17 Sep 2012 14:52:56 -0400 Subject: [PATCH 07/12] CC-4459: Now Playing -> Timeline: 'Filter by show' does not work -fixed --- airtime_mvc/application/models/Schedule.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/airtime_mvc/application/models/Schedule.php b/airtime_mvc/application/models/Schedule.php index eb538f57f..16b90a647 100644 --- a/airtime_mvc/application/models/Schedule.php +++ b/airtime_mvc/application/models/Schedule.php @@ -344,12 +344,12 @@ SELECT showt.name AS show_name, JOIN cc_show AS showt ON (showt.id = si.show_id) WHERE si.modified_instance = FALSE $showPredicate - AND (si.starts >= '{$p_start}' + AND ((si.starts >= '{$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}') + AND si.ends >= '{$p_end}')) ORDER BY si_starts, sched_starts; SQL; From 3329c36d0cf2d78a282782652f251e81261e1d93 Mon Sep 17 00:00:00 2001 From: denise Date: Mon, 17 Sep 2012 15:23:47 -0400 Subject: [PATCH 08/12] - changed smart block range text boxes to align with new UI --- airtime_mvc/public/css/styles.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/airtime_mvc/public/css/styles.css b/airtime_mvc/public/css/styles.css index f5aa20d25..8e412c0bb 100644 --- a/airtime_mvc/public/css/styles.css +++ b/airtime_mvc/public/css/styles.css @@ -529,7 +529,7 @@ input.input_text.sp_input_text{ } input.input_text.sp_extra_input_text{ - width: 87px !important; + width: 90px !important; } .sp_text_font{ From 4f576afc003488eb87fd2b785bc1afdad9c4b8f1 Mon Sep 17 00:00:00 2001 From: Rudi Grinberg Date: Mon, 17 Sep 2012 15:24:02 -0400 Subject: [PATCH 09/12] cc-4396. Initial fix problem was a module was not being included in the soundcloud upload script. --- .../application/controllers/ApiController.php | 15 ++++++++------- .../application/controllers/LibraryController.php | 2 +- .../controllers/ScheduleController.php | 3 ++- airtime_mvc/application/models/Soundcloud.php | 8 +++++++- utils/soundcloud-uploader.php | 1 + 5 files changed, 19 insertions(+), 10 deletions(-) diff --git a/airtime_mvc/application/controllers/ApiController.php b/airtime_mvc/application/controllers/ApiController.php index 033369802..a0918d60d 100644 --- a/airtime_mvc/application/controllers/ApiController.php +++ b/airtime_mvc/application/controllers/ApiController.php @@ -415,8 +415,9 @@ class ApiController extends Zend_Controller_Action $this->uploadRecordedActionParam($show_instance_id, $file_id); } - // The paramterized version of the uploadRecordedAction controller. We want this controller's action - // to be invokable from other controllers instead being of only through http + // The paramterized version of the uploadRecordedAction controller. + // We want this controller's action to be invokable from other + // controllers instead being of only through http public function uploadRecordedActionParam($show_instance_id, $file_id) { $showCanceled = false; @@ -430,10 +431,10 @@ class ApiController extends Zend_Controller_Action } catch (Exception $e) { //we've reached here probably because the show was - //cancelled, and therefore the show instance does not - //exist anymore (ShowInstance constructor threw this error). - //We've done all we can do (upload the file and put it in - //the library), now lets just return. + //cancelled, and therefore the show instance does not exist + //anymore (ShowInstance constructor threw this error). We've + //done all we can do (upload the file and put it in the + //library), now lets just return. $showCanceled = true; } @@ -444,7 +445,7 @@ class ApiController extends Zend_Controller_Action if (!$showCanceled && Application_Model_Preference::GetAutoUploadRecordedShowToSoundcloud()) { $id = $file->getId(); - $res = exec("/usr/lib/airtime/utils/soundcloud-uploader $id > /dev/null &"); + Application_Model_Soundcloud::uploadSoundcloud($id); } } diff --git a/airtime_mvc/application/controllers/LibraryController.php b/airtime_mvc/application/controllers/LibraryController.php index fa6a92e68..2d8f06b71 100644 --- a/airtime_mvc/application/controllers/LibraryController.php +++ b/airtime_mvc/application/controllers/LibraryController.php @@ -469,7 +469,7 @@ class LibraryController extends Zend_Controller_Action public function uploadFileSoundcloudAction() { $id = $this->_getParam('id'); - $res = exec("/usr/lib/airtime/utils/soundcloud-uploader $id > /dev/null &"); + Application_Model_Soundcloud::uploadSoundcloud($id); // we should die with ui info die(); } diff --git a/airtime_mvc/application/controllers/ScheduleController.php b/airtime_mvc/application/controllers/ScheduleController.php index f65ce1332..c2fe93dbb 100644 --- a/airtime_mvc/application/controllers/ScheduleController.php +++ b/airtime_mvc/application/controllers/ScheduleController.php @@ -217,7 +217,8 @@ class ScheduleController extends Zend_Controller_Action $file = $show_inst->getRecordedFile(); $id = $file->getId(); - $res = exec("/usr/lib/airtime/utils/soundcloud-uploader $id > /dev/null &"); + //$res = exec("/usr/lib/airtime/utils/soundcloud-uploader $id > /dev/null &"); + Application_Model_Soundcloud::uploadSoundcloud($id); // we should die with ui info die(); } diff --git a/airtime_mvc/application/models/Soundcloud.php b/airtime_mvc/application/models/Soundcloud.php index 7e2b74d57..4dd99444a 100644 --- a/airtime_mvc/application/models/Soundcloud.php +++ b/airtime_mvc/application/models/Soundcloud.php @@ -52,7 +52,6 @@ class Application_Model_Soundcloud //YYYY-MM-DD-HH-mm-SS $release = explode("-", $release); - $track_data['track[release_year]'] = $release[0]; $track_data['track[release_month]'] = $release[1]; $track_data['track[release_day]'] = $release[2]; @@ -87,6 +86,13 @@ class Application_Model_Soundcloud throw new NoSoundCloundToken(); } } + + public static function uploadSoundcloud($id) + { + $cmd = "/usr/lib/airtime/utils/soundcloud-uploader $id > /dev/null &"; + Logging::info("Uploading soundcloud with command: $cmd"); + exec($cmd); + } } class NoSoundCloundToken extends Exception {} diff --git a/utils/soundcloud-uploader.php b/utils/soundcloud-uploader.php index ea6826aab..2660d32e2 100644 --- a/utils/soundcloud-uploader.php +++ b/utils/soundcloud-uploader.php @@ -33,6 +33,7 @@ set_include_path(implode(PATH_SEPARATOR, array( require_once($CC_CONFIG['phpDir'].'/application/models/StoredFile.php'); require_once($CC_CONFIG['phpDir'].'/application/models/Preference.php'); require_once($CC_CONFIG['phpDir'].'/application/models/MusicDir.php'); +require_once($CC_CONFIG['phpDir'].'/application/common/OsPath.php'); set_include_path($CC_CONFIG['phpDir'].'/library' . PATH_SEPARATOR . get_include_path()); require_once($CC_CONFIG['phpDir'].'/application/models/Soundcloud.php'); From 43c336eb6d996f3cd84decfcdb0a6fbe6218da7b Mon Sep 17 00:00:00 2001 From: denise Date: Mon, 17 Sep 2012 15:41:22 -0400 Subject: [PATCH 10/12] CC-4155: Playlist Builder: Style static/dynamic expansion blocks in playlist contents -implemented css changes -formatted playlist_builder.css --- .../views/scripts/playlist/update.phtml | 12 +- airtime_mvc/public/css/playlist_builder.css | 598 ++++++++++-------- airtime_mvc/public/js/airtime/library/spl.js | 21 +- 3 files changed, 347 insertions(+), 284 deletions(-) diff --git a/airtime_mvc/application/views/scripts/playlist/update.phtml b/airtime_mvc/application/views/scripts/playlist/update.phtml index 05f4e9e91..bbb11093d 100644 --- a/airtime_mvc/application/views/scripts/playlist/update.phtml +++ b/airtime_mvc/application/views/scripts/playlist/update.phtml @@ -35,9 +35,15 @@ if ($item['type'] == 2) { - " id="expand_block_">Static Block Expand + " id="expand_block_"> + + Expand Static Block + - " id="expand_block_">Dynamic Block + " id="expand_block_"> + + Expand Dynamic Block + @@ -79,7 +85,7 @@ if ($item['type'] == 2) { -
_info">
+ diff --git a/airtime_mvc/public/css/playlist_builder.css b/airtime_mvc/public/css/playlist_builder.css index 2f99399aa..01828b72f 100644 --- a/airtime_mvc/public/css/playlist_builder.css +++ b/airtime_mvc/public/css/playlist_builder.css @@ -1,71 +1,63 @@ #side_playlist { - width: 40%; - font-size: 16px; - overflow: auto; + width: 40%; + font-size: 16px; + overflow: auto; } -#side_playlist, -#side_playlist ul, -#side_playlist li { - float: left; +#side_playlist,#side_playlist ul,#side_playlist li { + float: left; } -#spl_sortable, -#spl_sortable > li, -#side_playlist > div, -#spl_editor, -.spl_artist, -.spl_cue_in, -.spl_fade_in, -.spl_cue_out, -.spl_fade_out { - clear: left; +#spl_sortable,#spl_sortable>li,#side_playlist>div,#spl_editor,.spl_artist,.spl_cue_in,.spl_fade_in,.spl_cue_out,.spl_fade_out + { + clear: left; } -#spl_sortable > li { - width: 100%; - margin-bottom:-1px; - position:relative; - -moz-box-sizing: border-box; - -webkit-box-sizing: border-box; - box-sizing: border-box; + +#spl_sortable>li { + width: 100%; + margin-bottom: -1px; + position: relative; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; } + /*#side_playlist button { float: left; font-size: 12px; height: 28px; margin: 0 7px 20px 0; -}*/ - -#side_playlist input, -#side_playlist textarea { - width: 200px; +}*/ +#side_playlist input,#side_playlist textarea { + width: 200px; } #side_playlist textarea { - height: 100px; + height: 100px; } #spl_sortable { - list-style: none; - padding:0; - padding-bottom:50px; - width:100%; - min-height: 320px; - margin-top:0; - margin-bottom:0; + list-style: none; + padding: 0; + padding-bottom: 50px; + width: 100%; + min-height: 320px; + margin-top: 0; + margin-bottom: 0; } -#side_playlist li div.list-item-container, #side_playlist li div.list-item-container.ui-state-active { - height:56px; - border: none; +#side_playlist li div.list-item-container,#side_playlist li div.list-item-container.ui-state-active + { + height: 56px; + border: none; } #spl_name { - + } .ui-icon-closethick { - margin-top: 7px; + margin-top: 7px; } .sp-closethick-center { @@ -73,266 +65,297 @@ } .spl_title { - font-size:14px; + font-size: 14px; } .spl_playlength { - float:right; - font-size:14px; - padding:0 5px 0 0; - width:100px; - text-align:right; + float: right; + font-size: 14px; + padding: 0 5px 0 0; + width: 100px; + text-align: right; } -.spl_block_expand, .spl_block_expand.close { - float:right; +.spl_block_expand,.spl_block_expand.close { + float: right; font-size: 9px; height: 15px; /*right: 35px;*/ width: 120px; - margin-top:2px; - cursor:pointer; - color:#fff; + margin-top: 2px; + cursor: pointer; + color: #fff; font-weight: normal; - text-shadow:none; - opacity:1; - } - .spl_block_expand:hover, .spl_block_expand.close:hover { - color:#FF611F; - text-shadow:none; - opacity:1; - } - .spl_block_expand .ui-icon { - float:left; - } + text-shadow: none; + opacity: 1; +} + +.spl_block_expand:hover,.spl_block_expand.close:hover { + color: #FF611F; + text-shadow: none; + opacity: 1; +} + +.spl_block_expand .ui-icon { + float: left; +} .spl_artist { - font-size:12px; - color:#d5d5d5; + font-size: 12px; + color: #d5d5d5; } -.spl_offset { - float: right; - text-align: right; - padding: 0 5px 0 0; - color: #D5D5D5; +.spl_offset { + float: right; + text-align: right; + padding: 0 5px 0 0; + color: #D5D5D5; } -.ui-state-active .spl_artist, .ui-state-active .spl_offset { + +.ui-state-active .spl_artist,.ui-state-active .spl_offset { color: #606060 !important; } -#spl_editor > div > span { -/* display: inline-block; +#spl_editor>div>span { /* display: inline-block; width: 150px;*/ + } -.ui-icon-closethick, -.spl_fade_control, -.spl_text_input { - cursor: pointer; +.ui-icon-closethick,.spl_fade_control,.spl_text_input { + cursor: pointer; } .spl_text_input input { - cursor: text; + cursor: text; } #spl_error { - font-size: 14px; - padding: 0.3em; - /*width: 440px;*/ - text-align: center; + font-size: 14px; + padding: 0.3em; + /*width: 440px;*/ + text-align: center; } #side_playlist h3 { - font-size:20px; - margin:9px 0 3px 0; - padding:0; - color:#444444; - font-weight:normal; - clear:both; - float:left; -} -#side_playlist h4 { - font-size:15px; - margin:8px 0 10px 0; - padding:0; - color:#4f4f4f; - font-weight:normal; - clear:both; - float:left; -} -#side_playlist h3 + h4 { - margin:0 0 11px 0; -} -#spl_sortable div.big_play { - display:block; - width:20px; - height:50px; - margin:2px 0 0 2px; - text-align:center; - border:1px solid #5b5b5b; - float:left; - background-color: #707070; - background: -moz-linear-gradient(top, #707070 0, #666666 100%); - background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #707070), color-stop(100%, #666666)); -} -#spl_sortable div.big_play_disabled { - display:block; - width:20px; - height:50px; - margin:2px 0 0 2px; - text-align:center; - border:1px solid #5b5b5b; - float:left; - background-color: #707070; - background: -moz-linear-gradient(top, #707070 0, #666666 100%); - background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #707070), color-stop(100%, #666666)); -} -#spl_sortable div.big_play:hover { - border:1px solid #282828; - background-color: #3b3b3b; - background: -moz-linear-gradient(top, #3b3b3b 0, #292929 100%); - background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #3b3b3b), color-stop(100%, #292929)); - cursor: pointer; -} -#spl_sortable div.big_play .ui-icon { - margin: 17px 0 0 1px; -} -#spl_sortable div.big_play_disabled .ui-icon { - margin: 17px 0 0 1px; + font-size: 20px; + margin: 9px 0 3px 0; + padding: 0; + color: #444444; + font-weight: normal; + clear: both; + float: left; } -#spl_sortable div.big_play:hover .ui-icon-play, #spl_sortable div.big_play:hover .ui-icon-pause { - background-image:url(redmond/images/ui-icons_ff5d1a_256x240.png); +#side_playlist h4 { + font-size: 15px; + margin: 8px 0 10px 0; + padding: 0; + color: #4f4f4f; + font-weight: normal; + clear: both; + float: left; } + +#side_playlist h3+h4 { + margin: 0 0 11px 0; +} + +#spl_sortable div.big_play { + display: block; + width: 20px; + height: 50px; + margin: 2px 0 0 2px; + text-align: center; + border: 1px solid #5b5b5b; + float: left; + background-color: #707070; + background: -moz-linear-gradient(top, #707070 0, #666666 100%); + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #707070), + color-stop(100%, #666666) ); +} + +#spl_sortable div.big_play_disabled { + display: block; + width: 20px; + height: 50px; + margin: 2px 0 0 2px; + text-align: center; + border: 1px solid #5b5b5b; + float: left; + background-color: #707070; + background: -moz-linear-gradient(top, #707070 0, #666666 100%); + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #707070), + color-stop(100%, #666666) ); +} + +#spl_sortable div.big_play:hover { + border: 1px solid #282828; + background-color: #3b3b3b; + background: -moz-linear-gradient(top, #3b3b3b 0, #292929 100%); + background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #3b3b3b), + color-stop(100%, #292929) ); + cursor: pointer; +} + +#spl_sortable div.big_play .ui-icon { + margin: 17px 0 0 1px; +} + +#spl_sortable div.big_play_disabled .ui-icon { + margin: 17px 0 0 1px; +} + +#spl_sortable div.big_play:hover .ui-icon-play,#spl_sortable div.big_play:hover .ui-icon-pause + { + background-image: url(redmond/images/ui-icons_ff5d1a_256x240.png); +} + #spl_sortable .ui-icon-closethick { - position:absolute; - top:3px; - right:6px; - z-index:3; + position: absolute; + top: 3px; + right: 6px; + z-index: 3; } + #spl_sortable .ui-icon-closethick:hover { - background-image:url(redmond/images/ui-icons_ff5d1a_256x240.png) + background-image: url(redmond/images/ui-icons_ff5d1a_256x240.png) } + #spl_sortable .spl_fade_control { - position:absolute; - right:35px; - z-index: 6; - height:15px; - width:33px; - font-size:9px; - background-color:transparent; + position: absolute; + right: 35px; + z-index: 6; + height: 15px; + width: 33px; + font-size: 9px; + background-color: transparent; } #spl_sortable li .container { - + } + #spl_sortable .text-row { height: 20px; line-height: 19px; overflow: hidden; padding: 0 30px 0 10px; text-indent: 2px; - margin:-1px 0 0 0; - float:none; + margin: -1px 0 0 0; + float: none; } + #spl_sortable .top { - padding-top:9px; + padding-top: 9px; } + #spl_sortable li .spl_fade_control.ui-state-default { - background: transparent url(images/crossfade_playlist.png) no-repeat 0 0; - border:none; + background: transparent url(images/crossfade_playlist.png) no-repeat 0 0; + border: none; } + #spl_sortable li .spl_fade_control.ui-state-active { - background: transparent url(images/crossfade_playlist.png) no-repeat 0 -30px; - border:none; + background: transparent url(images/crossfade_playlist.png) no-repeat 0 + -30px; + border: none; } -#spl_sortable li .crossfade, #spl_sortable li .cue-edit { - background:#debc9e url(images/crossfade_bg.png) repeat-x 0 0 !important; - border:1px solid #5d5d5d; - border-width: 1px 0 0 0; - min-height:35px; + +#spl_sortable li .crossfade,#spl_sortable li .cue-edit { + background: #debc9e url(images/crossfade_bg.png) repeat-x 0 0 !important; + border: 1px solid #5d5d5d; + border-width: 1px 0 0 0; + min-height: 35px; } + #spl_sortable li .cue-edit { - background:#b6d1d5 url(images/cue-editor_bg.png) repeat-x 0 0 !important; + background: #b6d1d5 url(images/cue-editor_bg.png) repeat-x 0 0 + !important; } + #spl_sortable dl.inline-list { - margin:10px 0 0 37px; + margin: 10px 0 0 37px; } - -#spl_sortable li .spl_fade_start, #spl_sortable li .spl_fade_end { +#spl_sortable li .spl_fade_start,#spl_sortable li .spl_fade_end { background-color: transparent; - float:right; + float: right; font-size: 9px; height: 15px; right: 35px; width: 33px; - margin-top:2px; + margin-top: 2px; } + #spl_sortable li .spl_fade_start.ui-state-default { - background: transparent url(images/fade_in.png) no-repeat 0 0; - border:none; + background: transparent url(images/fade_in.png) no-repeat 0 0; + border: none; } + #spl_sortable li .spl_fade_start.ui-state-active { - background: transparent url(images/fade_in.png) no-repeat 0 -30px; - border:none; + background: transparent url(images/fade_in.png) no-repeat 0 -30px; + border: none; } #spl_sortable li .spl_fade_end.ui-state-default { - background: transparent url(images/fade_out.png) no-repeat 0 0; - border:none; + background: transparent url(images/fade_out.png) no-repeat 0 0; + border: none; } + #spl_sortable li .spl_fade_end.ui-state-active { - background: transparent url(images/fade_out.png) no-repeat 0 -30px; - border:none; + background: transparent url(images/fade_out.png) no-repeat 0 -30px; + border: none; } -.crossfade dl.inline-list, .cue-edit dl.inline-list, .crossfade-main dl.inline-list { - padding-bottom:5px; - clear:left; +.crossfade dl.inline-list,.cue-edit dl.inline-list,.crossfade-main dl.inline-list + { + padding-bottom: 5px; + clear: left; } -.crossfade dl.inline-list dt, .cue-edit dl.inline-list dt, .crossfade-main dl.inline-list dt { - min-width: 90px; - +.crossfade dl.inline-list dt,.cue-edit dl.inline-list dt,.crossfade-main dl.inline-list dt + { + min-width: 90px; } -.crossfade dl.inline-list dd, .cue-edit dl.inline-list dd, .crossfade-main dl.inline-list dd { + +.crossfade dl.inline-list dd,.cue-edit dl.inline-list dd,.crossfade-main dl.inline-list dd + { float: left; font-size: 12px; margin: 0; +} -} .edit-error { - color:#b80000; - margin:0; - padding-bottom:0; - font-size:12px; - display:none; + color: #b80000; + margin: 0; + padding-bottom: 0; + font-size: 12px; + display: none; } - + /*.edit-error:last-child { padding-bottom:10px; }*/ .spl_text_input { - color:#fff; + color: #fff; } + .crossfade-main { - background:#debc9e; - border:1px solid #5b5b5b; - padding:10px 10px 0 10px; - margin:0 1px 16px 0; - position:relative; + background: #debc9e; + border: 1px solid #5b5b5b; + padding: 10px 10px 0 10px; + margin: 0 1px 16px 0; + position: relative; } -.crossfade-main .edit-error { - padding-bottom:4px; - margin:0; +.crossfade-main .edit-error { + padding-bottom: 4px; + margin: 0; } -.crossfade-main .edit-error:last-child { - padding-bottom:2px; +.crossfade-main .edit-error:last-child { + padding-bottom: 2px; } + .crossfade-main .ui-icon-closethick { position: absolute; right: 6px; @@ -342,65 +365,73 @@ #spl_sortable li .spl_cue { background-color: transparent; - float:right; + float: right; font-size: 9px; height: 15px; right: 35px; width: 33px; - margin-top:2px; - cursor:pointer; + margin-top: 2px; + cursor: pointer; } + #spl_sortable li .spl_cue.ui-state-default { - background: transparent url(images/cue_playlist.png) no-repeat 0 0; - border:none; + background: transparent url(images/cue_playlist.png) no-repeat 0 0; + border: none; } + #spl_sortable li .spl_cue.ui-state-default:hover { - background: transparent url(images/cue_playlist.png) no-repeat 0 -15px; - border:none; + background: transparent url(images/cue_playlist.png) no-repeat 0 -15px; + border: none; } -#spl_sortable li .spl_cue.ui-state-active, #spl_sortable li .spl_cue.ui-state-active:hover { - background: transparent url(images/cue_playlist.png) no-repeat 0 -30px; - border:none; + +#spl_sortable li .spl_cue.ui-state-active,#spl_sortable li .spl_cue.ui-state-active:hover + { + background: transparent url(images/cue_playlist.png) no-repeat 0 -30px; + border: none; } /*--/////////////// Changes 16.05.2011 ////////////--*/ - .playlist_title { - margin: 16px 0 10px 0; - height:26px; - clear:both; + margin: 16px 0 10px 0; + height: 26px; + clear: both; } -#side_playlist .playlist_title h3, #side_playlist .playlist_title h4 { + +#side_playlist .playlist_title h3,#side_playlist .playlist_title h4 { margin: 0; padding: 0; } + #side_playlist .playlist_title h3 { - float:left; - width:84%; + float: left; + width: 84%; } + #side_playlist .playlist_title h4 { - float:right; - clear:none; - font-size: 16px; - padding-top:4px; + float: right; + clear: none; + font-size: 16px; + padding-top: 4px; } #side_playlist .playlist_title h3 a { padding: 0 22px 0 2px; - background:url(images/icon_edit_l.png) no-repeat right center; - text-decoration:none; + background: url(images/icon_edit_l.png) no-repeat right center; + text-decoration: none; +} -} #side_playlist .playlist_title h3 a:hover { - background-color:#D8D8D8; + background-color: #D8D8D8; } + .element_hidden { - display: none; + display: none; } + #side_playlist .playlist_title h3 input[type="text"] { background-color: #dddddd; border: 1px solid #8F8F8F; - font-family: Arial,Helvetica,sans-serif; + font-family: Arial, Helvetica, sans-serif; font-size: 12px; height: 23px; margin: 0; @@ -409,31 +440,34 @@ -moz-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1); -webkit-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1); box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1); - width:95%; - margin-bottom:10px; + width: 95%; + margin-bottom: 10px; } #side_playlist .zend_form { margin: 0; padding: 0; } -#side_playlist .zend_form dt, #side_playlist .zend_form dd { + +#side_playlist .zend_form dt,#side_playlist .zend_form dd { display: block; float: none; margin: 4px 0 0; padding: 0; - width:100%; + width: 100%; } + #side_playlist .zend_form dd.buttons { margin-top: 8px; - text-align:right; + text-align: right; } + #side_playlist .zend_form dd.buttons .ui-button { margin: 0 0 0 10px; } #side_playlist .zend_form dt { - color:#5B5B5B; + color: #5B5B5B; font-weight: bold; margin: 9px 0 0; padding: 0 2px; @@ -446,14 +480,14 @@ #side_playlist .zend_form dd textarea { background-color: #dddddd; border: 1px solid #5B5B5B; - font-family: Arial,Helvetica,sans-serif; + font-family: Arial, Helvetica, sans-serif; font-size: 12px; margin: 0; padding: 2px 0 0 0; -moz-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1); -webkit-box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1); box-shadow: inset 0px 2px 2px rgba(0, 0, 0, 0.1); - width:99.7%; + width: 99.7%; } #side_playlist fieldset { @@ -461,28 +495,34 @@ margin: 0 0 8px 0; padding: 8px; } + #side_playlist fieldset.closed .zend_form { - display:none; + display: none; } + #side_playlist fieldset.closed { border-width: 1px 0 0; margin-bottom: -6px; - margin-left:1px; + margin-left: 1px; } -fieldset > legend { + +fieldset>legend { color: #4f4f4f; font-size: 12px; line-height: 140%; } + .ui-widget-content fieldset legend .ui-icon { float: left; - background-image:url(redmond/images/ui-icons_454545_256x240.png); + background-image: url(redmond/images/ui-icons_454545_256x240.png); } -#side_playlist .zend_form input, #side_playlist .zend_form textarea { + +#side_playlist .zend_form input,#side_playlist .zend_form textarea { width: auto; } + #fieldset-metadate_change { - clear:both; + clear: both; } div.helper li { @@ -494,34 +534,42 @@ li.spl_empty { } /*---////// SMART BLOCK /////---*/ - .smart-block-info { - padding: 5px 35px 10px 36px; - width: 100%; - -moz-box-sizing: border-box; - -webkit-box-sizing: border-box; - box-sizing: border-box; - } - .smart-block-info > li { - display: block; - float: none; - margin-bottom: 4px; - width: 100%; - font-size: 13px; - } - .smart-block-info > li span.block-item-time { - text-align: right; - float: right; - color: #D5D5D5; - font-size: 12px; - } - .smart-block-info > li span.block-item-title { - font-weight: bold; - display: inline-block; - padding-right: 6px; - } - .smart-block-info > li span.block-item-author { - font-weight: normal; - display: inline-block; - } + padding: 5px 35px 10px 36px; + width: 100%; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; +} +.smart-block-info>li { + display: block; + float: none; + margin-bottom: 4px; + width: 100%; + font-size: 13px; +} + +.smart-block-info>li span.block-item-time { + text-align: right; + float: right; + color: #D5D5D5; + font-size: 12px; +} + +.smart-block-info>li span.block-item-title { + font-weight: bold; + display: inline-block; + padding-right: 6px; +} + +.smart-block-info>li span.block-item-author { + font-weight: normal; + display: inline-block; +} + +.smart-block-info>li span.block-item-criteria { + font-weight: normal; + display: inline-block; + padding-right: 6px; +} \ No newline at end of file diff --git a/airtime_mvc/public/js/airtime/library/spl.js b/airtime_mvc/public/js/airtime/library/spl.js index dc2f80c08..e0b58f205 100644 --- a/airtime_mvc/public/js/airtime/library/spl.js +++ b/airtime_mvc/public/js/airtime/library/spl.js @@ -429,24 +429,33 @@ var AIRTIME = (function(AIRTIME){ if (isStatic) { $.each(data, function(index, ele){ if (ele.track_title !== undefined) { - $html += "
"+ele.track_title+" "+ele.creator+" "+ele.length+"
"; + $html += "
  • " + + ""+ele.track_title+"" + + ""+ele.creator+"" + + ""+ele.length+"" + + "
  • "; } }) } else { for (var key in data.crit){ $.each(data.crit[key], function(index, ele){ - var extra = (ele['extra']==null)?"":ele['extra']; - $html += "
    "+ele['display_name']+" "+ele['modifier']+" "+ele['value']+" "+extra+"
    "; + var extra = (ele['extra']==null)?"":"- "+ele['extra']; + $html += "
  • " + + ""+ele['display_name']+"" + + ""+ele['modifier']+"" + + ""+ele['value']+"" + + ""+extra+"" + + "
  • "; }); } - $html += "
    "+data.limit.value+" "+data.limit.modifier; + $html += "

  • Limit to: "+data.limit.value+" "+data.limit.modifier+"
  • "; } - $pl.find("#block_"+id+"_info").html($html); + $pl.find("#block_"+id+"_info").html($html).show(); mod.enableUI(); }); $(this).removeClass('close'); } else { - $pl.find("#block_"+id+"_info").html(""); + $pl.find("#block_"+id+"_info").html("").hide(); $(this).addClass('close'); } }}); From 54b6b12ec0b67a6cc81e229d8ead034b02d41c09 Mon Sep 17 00:00:00 2001 From: James Date: Mon, 17 Sep 2012 15:41:27 -0400 Subject: [PATCH 11/12] CC-4094: Dashboard -> Source Info panel: DJ assigned to current show can turn off the Master Resouce but cannot disconnect it. - fixed --- airtime_mvc/application/controllers/DashboardController.php | 4 +--- airtime_mvc/application/models/User.php | 6 ++---- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/airtime_mvc/application/controllers/DashboardController.php b/airtime_mvc/application/controllers/DashboardController.php index 327321383..9609a1ef8 100644 --- a/airtime_mvc/application/controllers/DashboardController.php +++ b/airtime_mvc/application/controllers/DashboardController.php @@ -25,9 +25,7 @@ class DashboardController extends Zend_Controller_Action $user = new Application_Model_User($userInfo->id); $show = Application_Model_Show::getCurrentShow(); - - $show_id = isset($show['id'])?$show['id']:0; - + $show_id = isset($show[0]['id'])?$show[0]['id']:0; $source_connected = Application_Model_Preference::GetSourceStatus($sourcename); if ($user->canSchedule($show_id) && $source_connected) { diff --git a/airtime_mvc/application/models/User.php b/airtime_mvc/application/models/User.php index d07552472..1d9d94e07 100644 --- a/airtime_mvc/application/models/User.php +++ b/airtime_mvc/application/models/User.php @@ -35,7 +35,6 @@ class Application_Model_User public function isHostOfShow($showId) { $userId = $this->_userInstance->getDbId(); - return CcShowHostsQuery::create() ->filterByDbShow($showId) ->filterByDbHost($userId)->count() > 0; @@ -63,10 +62,9 @@ class Application_Model_User if ($type === UTYPE_ADMIN || $type === UTYPE_PROGRAM_MANAGER || - CcShowHostsQuery::create()->filterByDbShow($p_showId)->filterByDbHost($this->getId())->count() > 0) { + self::isHostOfShow($p_showId)) { $result = true; } - return $result; } @@ -210,7 +208,7 @@ class Application_Model_User $this->_userInstance->delete(); } } - public function getOwnedFiles() + public function getOwnedFiles() { $user = $this->_userInstance; // do we need a find call at the end here? From 9b39ff93b46c15b3eff27ba60b0bbeaf78ce80f6 Mon Sep 17 00:00:00 2001 From: denise Date: Mon, 17 Sep 2012 15:49:22 -0400 Subject: [PATCH 12/12] -removed console.log --- airtime_mvc/public/js/airtime/library/spl.js | 1 - 1 file changed, 1 deletion(-) diff --git a/airtime_mvc/public/js/airtime/library/spl.js b/airtime_mvc/public/js/airtime/library/spl.js index e0b58f205..3ee9a22ef 100644 --- a/airtime_mvc/public/js/airtime/library/spl.js +++ b/airtime_mvc/public/js/airtime/library/spl.js @@ -369,7 +369,6 @@ var AIRTIME = (function(AIRTIME){ $.each($(".big_play"), function(index, value){ if ($(value).attr('blockId') === undefined) { var mime = $(value).attr("data-mime-type"); - console.log($(value)); if (isAudioSupported(mime)) { $(value).bind("click", openAudioPreview); } else {