diff --git a/airtime_mvc/application/controllers/PreferenceController.php b/airtime_mvc/application/controllers/PreferenceController.php index a78bfd6e2..b50469c1f 100644 --- a/airtime_mvc/application/controllers/PreferenceController.php +++ b/airtime_mvc/application/controllers/PreferenceController.php @@ -217,12 +217,21 @@ class PreferenceController extends Zend_Controller_Action Application_Model_Preference::SetAutoTransition($values["auto_transition"]); if (!$isSaas) { - $master_connection_url = "http://".$_SERVER['SERVER_NAME'].":".$values["master_harbor_input_port"]."/".$values["master_harbor_input_mount_point"]; - $live_connection_url = "http://".$_SERVER['SERVER_NAME'].":".$values["dj_harbor_input_port"]."/".$values["dj_harbor_input_mount_point"]; - - Application_Model_Preference::SetMasterDJSourceConnectionURL($master_connection_url); - Application_Model_Preference::SetLiveDJSourceConnectionURL($live_connection_url); - + if (!Application_Model_Preference::GetMasterDjConnectionUrlOverride()) { + $master_connection_url = "http://".$_SERVER['SERVER_NAME'].":".$values["master_harbor_input_port"]."/".$values["master_harbor_input_mount_point"]; + Application_Model_Preference::SetMasterDJSourceConnectionURL($master_connection_url); + } else { + Application_Model_Preference::SetMasterDJSourceConnectionURL($values["master_dj_connection_url"]); + } + + if (!Application_Model_Preference::GetLiveDjConnectionUrlOverride()) { + $live_connection_url = "http://".$_SERVER['SERVER_NAME'].":".$values["dj_harbor_input_port"]."/".$values["dj_harbor_input_mount_point"]; + Application_Model_Preference::SetLiveDJSourceConnectionURL($live_connection_url); + } + else { + Application_Model_Preference::SetLiveDJSourceConnectionURL($values["live_dj_connection_url"]); + } + // extra info that goes into cc_stream_setting Application_Model_StreamSetting::SetMasterLiveSteamPort($values["master_harbor_input_port"]); Application_Model_StreamSetting::SetMasterLiveSteamMountPoint($values["master_harbor_input_mount_point"]); @@ -359,12 +368,16 @@ class PreferenceController extends Zend_Controller_Action $request = $this->getRequest(); $type = $request->getParam("type", null); $url = urldecode($request->getParam("url", null)); + $override = $request->getParam("override", false); if($type == 'masterdj'){ Application_Model_Preference::SetMasterDJSourceConnectionURL($url); + Application_Model_Preference::SetMasterDjConnectionUrlOverride($override); }elseif($type == 'livedj'){ Application_Model_Preference::SetLiveDJSourceConnectionURL($url); + Application_Model_Preference::SetLiveDjConnectionUrlOverride($override); } + die(); } } diff --git a/airtime_mvc/application/models/Preference.php b/airtime_mvc/application/models/Preference.php index cfb5d8f39..248442af5 100644 --- a/airtime_mvc/application/models/Preference.php +++ b/airtime_mvc/application/models/Preference.php @@ -831,7 +831,7 @@ class Application_Model_Preference public static function GetMasterDJSourceConnectionURL(){ return self::GetValue("master_dj_source_connection_url"); } - + public static function SetLiveDJSourceConnectionURL($value){ self::SetValue("live_dj_source_connection_url", $value, false); } @@ -840,6 +840,24 @@ class Application_Model_Preference return self::GetValue("live_dj_source_connection_url"); } + /* Source Connection URL override status starts */ + public static function GetLiveDjConnectionUrlOverride(){ + return self::GetValue("live_dj_connection_url_override"); + } + + public static function SetLiveDjConnectionUrlOverride($value){ + self::SetValue("live_dj_connection_url_override", $value, false); + } + + public static function GetMasterDjConnectionUrlOverride(){ + return self::GetValue("master_dj_connection_url_override"); + } + + public static function SetMasterDjConnectionUrlOverride($value){ + self::SetValue("master_dj_connection_url_override", $value, false); + } + /* Source Connection URL override status ends */ + public static function SetAutoTransition($value){ self::SetValue("auto_transition", $value, false); } diff --git a/airtime_mvc/public/js/airtime/preferences/streamsetting.js b/airtime_mvc/public/js/airtime/preferences/streamsetting.js index 9ed14ff78..2aabd635e 100644 --- a/airtime_mvc/public/js/airtime/preferences/streamsetting.js +++ b/airtime_mvc/public/js/airtime/preferences/streamsetting.js @@ -127,7 +127,7 @@ function setLiveSourceConnectionOverrideListener(){ live_dj_input.val(url) live_dj_input.attr("readonly", "readonly") live_dj_actions.hide() - $.get("/Preference/set-source-connection-url/", {format: "json", type: "livedj", url:encodeURIComponent(url)}); + $.get("/Preference/set-source-connection-url/", {format: "json", type: "livedj", url:encodeURIComponent(url), override: true}); event.preventDefault() }) @@ -139,7 +139,7 @@ function setLiveSourceConnectionOverrideListener(){ live_dj_input.val(url) live_dj_input.attr("readonly", "readonly") live_dj_actions.hide() - $.get("/Preference/set-source-connection-url", {format: "json", type: "livedj", url:encodeURIComponent(url)}); + $.get("/Preference/set-source-connection-url", {format: "json", type: "livedj", url:encodeURIComponent(url), override: false}); event.preventDefault() }) @@ -148,7 +148,7 @@ function setLiveSourceConnectionOverrideListener(){ master_dj_input.val(url) master_dj_input.attr("readonly", "readonly") master_dj_actions.hide() - $.get("/Preference/set-source-connection-url", {format: "json", type: "masterdj", url:encodeURIComponent(url)}) + $.get("/Preference/set-source-connection-url", {format: "json", type: "masterdj", url:encodeURIComponent(url), override: true}) event.preventDefault() }) @@ -159,7 +159,7 @@ function setLiveSourceConnectionOverrideListener(){ master_dj_input.val(url) master_dj_input.attr("readonly", "readonly") master_dj_actions.hide() - $.get("/Preference/set-source-connection-url", {format: "json", type: "masterdj", url:encodeURIComponent(url)}) + $.get("/Preference/set-source-connection-url", {format: "json", type: "masterdj", url:encodeURIComponent(url), override: false}) event.preventDefault() }) }