From 3953cd8a7ea9f94f8a52f5017c1b60f649db3a66 Mon Sep 17 00:00:00 2001 From: Naomi Date: Wed, 2 Apr 2014 18:37:12 -0400 Subject: [PATCH] CC-5768 : jPlayer, make now playing and playlist preview buttons function disable preview in playlist for items browser can't play. --- .../views/scripts/playlist/update.phtml | 9 +---- .../js/airtime/audiopreview/jPlayerWindow.js | 2 -- .../public/js/airtime/playlist/playlist.js | 36 +++++++++++++++---- 3 files changed, 30 insertions(+), 17 deletions(-) diff --git a/airtime_mvc/application/views/scripts/playlist/update.phtml b/airtime_mvc/application/views/scripts/playlist/update.phtml index 58c4c145e..ca81f5884 100644 --- a/airtime_mvc/application/views/scripts/playlist/update.phtml +++ b/airtime_mvc/application/views/scripts/playlist/update.phtml @@ -2,7 +2,6 @@ $items = $this->contents; if (count($items)) : ?> getMediaItem(); $class = "Presentation_PlaylistItem" . $media->getType(); $p = new $class($item); @@ -21,7 +20,6 @@ if (count($items)) : ?>
- canPreview()):?>
@@ -31,24 +29,20 @@ if (count($items)) : ?>
-
getCliplength(); ?> - canEditCues()):?> canEditFades()):?> fade - getTitle(); ?>
getCreator(); ?> getOffset(); ?>
-
@@ -77,9 +71,8 @@ if (count($items)) : ?> -
  • - + \ No newline at end of file diff --git a/airtime_mvc/public/js/airtime/audiopreview/jPlayerWindow.js b/airtime_mvc/public/js/airtime/audiopreview/jPlayerWindow.js index 33b1e982e..27d5e5f32 100644 --- a/airtime_mvc/public/js/airtime/audiopreview/jPlayerWindow.js +++ b/airtime_mvc/public/js/airtime/audiopreview/jPlayerWindow.js @@ -43,8 +43,6 @@ var AIRTIME = (function(AIRTIME) { bMime = mime; } - var x = audio.canPlayType(bMime); - //return a true of the browser can play this file natively, or if the //file is an mp3 and flash is installed (jPlayer will fall back to flash to play mp3s). //Note that checking the navigator.mimeTypes value does not work for IE7, but the alternative diff --git a/airtime_mvc/public/js/airtime/playlist/playlist.js b/airtime_mvc/public/js/airtime/playlist/playlist.js index 3041ce9e7..5c1f2b5c0 100644 --- a/airtime_mvc/public/js/airtime/playlist/playlist.js +++ b/airtime_mvc/public/js/airtime/playlist/playlist.js @@ -487,25 +487,46 @@ var AIRTIME = (function(AIRTIME){ $(".input_date").datetimepicker(); } + function checkPlayability($contents) { + + $contents.each(function(index, element) { + var $el = $(element), + mime = $el.data("mimeType"); + + if (!AIRTIME.playerPreview.isAudioSupported(mime)) { + $el.find(".big_play").attr("class", "big_play_disabled dark_class"); + } + }); + } + mod.redrawPlaylist = function redrawPlaylist(data) { var $wrapper = $("div.wrapper"), - $playlist = $("#side_playlist"); + $playlist = $("#side_playlist"), + $newContent = $(data.html), + $contents; $playlist.detach(); - + $playlist.find("#playlist_lastmod").val(data.modified); $playlist.find("#playlist_length").text(data.length); - $playlist.find("#spl_sortable").html(data.html).sortable("refresh"); + $playlist.find("#spl_sortable").html($newContent).sortable("refresh"); + + $contents = $playlist.find("#spl_sortable").find("li"); + checkPlayability($contents); $wrapper.append($playlist); }; mod.drawPlaylist = function drawPlaylist(data) { - var $playlist = $("#side_playlist"); + var $playlist = $("#side_playlist"), + $newContent = $(data.html), + $contents = $newContent.find("#spl_sortable").find("li"); + + checkPlayability($contents); $playlist .empty() - .append(data.html); + .append($newContent); makeSortable(); }; @@ -629,11 +650,12 @@ var AIRTIME = (function(AIRTIME){ mod.onReady = function() { - var $playlist = $("#side_playlist"); + var $playlist = $("#side_playlist"), + $contents = $("#spl_sortable").find("li"); setupCriteriaOptions(); - addDatePickers(); + checkPlayability($contents); $playlist.on("click", "#spl_AND", function(e) { e.preventDefault();