diff --git a/airtime_mvc/public/js/airtime/preferences/streamsetting.js b/airtime_mvc/public/js/airtime/preferences/streamsetting.js index 4d07eeff3..5282d11f6 100644 --- a/airtime_mvc/public/js/airtime/preferences/streamsetting.js +++ b/airtime_mvc/public/js/airtime/preferences/streamsetting.js @@ -9,7 +9,7 @@ function showErrorSections() { }); } function rebuildStreamURL(ele){ - div = ele.closest("div") + var div = ele.closest("div") host = div.find("input:[id$=-host]").val() port = div.find("input:[id$=-port]").val() mount = div.find("input:[id$=-mount]").val() @@ -27,19 +27,36 @@ function rebuildStreamURL(ele){ } div.find("#stream_url").html(streamurl) } - +function restrictOggBitrate(ele, on){ + var div = ele.closest("div") + if(on){ + div.find("select[id$=data-bitrate]").find("option[value='48']").attr('selected','selected'); + div.find("select[id$=data-bitrate]").find("option[value='24']").attr("disabled","disabled"); + div.find("select[id$=data-bitrate]").find("option[value='32']").attr("disabled","disabled"); + }else{ + div.find("select[id$=data-bitrate]").find("option[value='24']").attr("disabled",""); + div.find("select[id$=data-bitrate]").find("option[value='32']").attr("disabled",""); + } +} function hideForShoutcast(ele){ - ele.closest("div").find("#outputMountpoint-label").hide() - ele.closest("div").find("#outputMountpoint-element").hide() - ele.closest("div").find("#outputUser-label").hide() - ele.closest("div").find("#outputUser-element").hide() + var div = ele.closest("div") + div.find("#outputMountpoint-label").hide() + div.find("#outputMountpoint-element").hide() + div.find("#outputUser-label").hide() + div.find("#outputUser-element").hide() + div.find("select[id$=data-type]").find("option[value='mp3']").attr('selected','selected'); + div.find("select[id$=data-type]").find("option[value='ogg']").attr("disabled","disabled"); + + restrictOggBitrate(ele, false) } function showForIcecast(ele){ - ele.closest("div").find("#outputMountpoint-label").show() - ele.closest("div").find("#outputMountpoint-element").show() - ele.closest("div").find("#outputUser-label").show() - ele.closest("div").find("#outputUser-element").show() + var div = ele.closest("div") + div.find("#outputMountpoint-label").show() + div.find("#outputMountpoint-element").show() + div.find("#outputUser-label").show() + div.find("#outputUser-element").show() + div.find("select[id$=data-type]").find("option[value='ogg']").attr("disabled",""); } $(document).ready(function() { @@ -62,7 +79,21 @@ $(document).ready(function() { return false; }).next().hide(); - $("select[id$=-output]").change(function(){ + $("select[id$=data-type]").change(function(){ + if($(this).val() == 'ogg'){ + restrictOggBitrate($(this), true) + }else{ + restrictOggBitrate($(this), false) + } + }) + + $("select[id$=data-type]").each(function(){ + if($(this).val() == 'ogg'){ + restrictOggBitrate($(this), true) + } + }) + + $("select[id$=data-output]").change(function(){ if($(this).val() == 'shoutcast'){ hideForShoutcast($(this)) }else{ @@ -70,7 +101,7 @@ $(document).ready(function() { } }) - $("select[id$=-output]").each(function(){ + $("select[id$=data-output]").each(function(){ if($(this).val() == 'shoutcast'){ hideForShoutcast($(this)) }