diff options
| author | RblSb <msrblsb@gmail.com> | 2023-06-21 20:15:52 +0300 |
|---|---|---|
| committer | RblSb <msrblsb@gmail.com> | 2023-06-21 20:51:11 +0300 |
| commit | 452ac109e0a1309ff0e7212de271b2b6d3641353 (patch) | |
| tree | 492f0afbc1f025fc73607374fc897f2f96074c67 /res/client.js | |
| parent | c476a16ad982e778580d74b8e4120ed29118129a (diff) | |
Skip proxy for local subs
Diffstat (limited to 'res/client.js')
| -rw-r--r-- | res/client.js | 38 |
1 files changed, 33 insertions, 5 deletions
diff --git a/res/client.js b/res/client.js index 830c25c..7c2b695 100644 --- a/res/client.js +++ b/res/client.js @@ -3111,7 +3111,35 @@ client_players_Raw.prototype = { this.initHlsSource(this.video,url); } this.restartControlsHider(); - client_players_RawSubs.loadSubs(item,this.video); + var subsUrl; + var tmp = item.subs; + if(tmp != null) { + subsUrl = tmp; + } else { + return; + } + if(subsUrl.length == 0) { + return; + } + if(StringTools.startsWith(subsUrl,"/")) { + client_players_RawSubs.loadSubs(subsUrl,this.video); + return; + } + if(!StringTools.startsWith(subsUrl,"http")) { + var protocol = $global.location.protocol; + subsUrl = "" + protocol + "//" + subsUrl; + } + var subsUri; + try { + subsUri = new URL(subsUrl); + } catch( _g ) { + client_Main.serverMessage("Failed to add subs: bad url (" + subsUrl + ")"); + return; + } + if(subsUri.hostname == this.main.host || subsUri.hostname == this.main.globalIp) { + subsUrl = subsUri.pathname; + } + client_players_RawSubs.loadSubs(subsUrl,this.video); } ,restartControlsHider: function() { var _gthis = this; @@ -3180,15 +3208,15 @@ client_players_Raw.prototype = { }; var client_players_RawSubs = function() { }; client_players_RawSubs.__name__ = true; -client_players_RawSubs.loadSubs = function(item,video) { - if(item.subs == null || item.subs.length == 0) { +client_players_RawSubs.loadSubs = function(subsUrl,video) { + if(subsUrl == null || subsUrl.length == 0) { return; } - var ext = PathTools.urlExtension(item.subs); + var ext = PathTools.urlExtension(subsUrl); if(client_JsApi.hasSubtitleSupport(ext)) { return; } - var url = encodeURI(item.subs); + var url = encodeURI(subsUrl); if(!StringTools.startsWith(url,"/")) { var protocol = $global.location.protocol; if(!StringTools.startsWith(url,"http")) { |
