From f82659d582f6dedd1e5e33986466176205cf42cd Mon Sep 17 00:00:00 2001 From: Naomi Date: Tue, 30 Apr 2013 17:03:40 -0400 Subject: [PATCH] CC-2301 : stopping playlist editor to make sure audio isn't stuck playing in the background. --- airtime_mvc/public/js/airtime/library/spl.js | 37 ++++++++++++++------ 1 file changed, 27 insertions(+), 10 deletions(-) diff --git a/airtime_mvc/public/js/airtime/library/spl.js b/airtime_mvc/public/js/airtime/library/spl.js index 3174bcb4b..6f8da35f6 100644 --- a/airtime_mvc/public/js/airtime/library/spl.js +++ b/airtime_mvc/public/js/airtime/library/spl.js @@ -1150,6 +1150,13 @@ var AIRTIME = (function(AIRTIME){ playlistEditor, id1, id2; + function removeDialog() { + playlistEditor.stop(); + + $html.dialog("destroy"); + $html.remove(); + } + if ($fadeOut.length > 0) { tracks.push({ @@ -1202,15 +1209,15 @@ var AIRTIME = (function(AIRTIME){ width: dim.width - 100, height: dim.height - 100, buttons: [ - {text: "Cancel", click: function() { - $(this).dialog("destroy"); - }}, + {text: "Cancel", click: removeDialog}, {text: "Save", click: function() { var json = playlistEditor.getJson(), offset, fadeIn, fadeOut, fade; + playlistEditor.stop(); + if (json.length === 1) { fade = json[0]["fades"][0]; @@ -1251,7 +1258,8 @@ var AIRTIME = (function(AIRTIME){ playlistEditor = new PlaylistEditor(); playlistEditor.setConfig(config); playlistEditor.init(tracks); - } + }, + close: removeDialog }); }; @@ -1267,7 +1275,15 @@ var AIRTIME = (function(AIRTIME){ }], cueIn = $li.find('.spl_cue_in').data("cueIn"), cueOut = $li.find('.spl_cue_out').data("cueOut"), - dim = AIRTIME.utilities.findViewportDimensions(); + dim = AIRTIME.utilities.findViewportDimensions(), + playlistEditor; + + function removeDialog() { + playlistEditor.stop(); + + $html.dialog("destroy"); + $html.remove(); + } $html.find('.editor-cue-in').val(cueIn); $html.find('.editor-cue-out').val(cueOut); @@ -1292,13 +1308,13 @@ var AIRTIME = (function(AIRTIME){ width: dim.width - 100, height: dim.height - 100, buttons: [ - {text: "Cancel", click: function() { - $(this).dialog("destroy"); - }}, + {text: "Cancel", click: removeDialog}, {text: "Save", click: function() { var cueIn = $html.find('.editor-cue-in').val(), cueOut = $html.find('.editor-cue-out').val(); + playlistEditor.stop(); + changeCues($html, id, cueIn, cueOut); }} ], @@ -1313,10 +1329,11 @@ var AIRTIME = (function(AIRTIME){ timeFormat: 'hh:mm:ss.u' }); - var playlistEditor = new PlaylistEditor(); + playlistEditor = new PlaylistEditor(); playlistEditor.setConfig(config); playlistEditor.init(tracks); - } + }, + close: removeDialog }); };