diff --git a/platform/safari/sitepatch-safari.js b/platform/safari/sitepatch-safari.js index 8f55928d6..7dce52e23 100644 --- a/platform/safari/sitepatch-safari.js +++ b/platform/safari/sitepatch-safari.js @@ -1,22 +1,22 @@ /******************************************************************************* - µBlock - a browser extension to block requests. - Copyright (C) 2014 The µBlock authors +µBlock - a browser extension to block requests. +Copyright (C) 2014 The µBlock authors - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. - You should have received a copy of the GNU General Public License - along with this program. If not, see {http://www.gnu.org/licenses/}. +You should have received a copy of the GNU General Public License +along with this program. If not, see {http://www.gnu.org/licenses/}. - Home: https://github.com/gorhill/uBlock +Home: https://github.com/gorhill/uBlock */ /******************************************************************************/ @@ -29,82 +29,76 @@ var vAPI = self.vAPI = self.vAPI || {}; -if ( /^www\.youtube(-nocookie)?\.com/.test(location.host) ) { - vAPI.sitePatch = function() { - // disable spf - window.ytspf = {}; - Object.defineProperty(ytspf, 'enabled', {'value': false}); +vAPI.sitePatch = function() { + // disable spf + window.ytspf = {}; + Object.defineProperty(ytspf, 'enabled', {'value': false}); - // Based on ExtendTube's ad removing solution - var p; - var yt = {}; - var config_ = {}; - var ytplayer = {}; - var playerConfig = { args: {} }; + // Based on ExtendTube's ad removing solution + var p; + var yt = {}; + var config_ = {}; + var ytplayer = {}; + var playerConfig = { args: {} }; - Object.defineProperties(yt, { - 'playerConfig': { - get: function() { return playerConfig; }, - set: function(data) { - if ( data && typeof data === 'object' - && data.args && typeof data.args === 'object' ) { - var nope = /ad\d?_|afv|watermark|adsense|xfp/; + Object.defineProperties(yt, { + 'playerConfig': { + get: function() { return playerConfig; }, + set: function(data) { + if ( data && typeof data === 'object' + && data.args && typeof data.args === 'object' ) { + var nope = /ad\d?_|afv|watermark|adsense|xfp/; - for ( var prop in data.args ) { - if ( nope.test(prop) && !/policy/.test(prop) ) { - delete data.args[prop]; - } + for ( var prop in data.args ) { + if ( nope.test(prop) && !/policy/.test(prop) ) { + delete data.args[prop]; } } - - playerConfig = data; - - var playerRoot = document.querySelector('[data-swf-config]'); - - if ( playerRoot ) { - playerRoot.dataset.swfConfig = JSON.stringify(yt.playerConfig); - } } - }, - 'config_': { - get: function() { return config_; }, - set: function(value) { config_ = value; } + + playerConfig = data; + + var playerRoot = document.querySelector('[data-swf-config]'); + + if ( playerRoot ) { + playerRoot.dataset.swfConfig = JSON.stringify(yt.playerConfig); + } } + }, + 'config_': { + get: function() { return config_; }, + set: function(value) { config_ = value; } + } + }); + + Object.defineProperty(config_, 'PLAYER_CONFIG', { + get: function() { return yt.playerConfig; }, + set: function(value) { yt.playerConfig = value; } + }); + + Object.defineProperty(ytplayer, 'config', { + get: function() { return playerConfig; }, + set: function(value) { yt.playerConfig = value; } + }); + + if ( window.yt ) { + var oldyt = window.yt; + delete window.yt; + for ( p in oldyt ) { yt[p] = oldyt[p]; } + } + Object.defineProperty(window, 'yt', { + get: function() { return yt; }, + set: function() {} + }); + + if ( window.ytplayer ) { + for ( p in window.ytplayer ) { ytplayer[p] = window.ytplayer[p]; } + window.ytplayer = ytplayer; + } + else { + Object.defineProperty(window, 'ytplayer', { + get: function() { return ytplayer; }, + set: function() {} }); - - Object.defineProperty(config_, 'PLAYER_CONFIG', { - get: function() { return yt.playerConfig; }, - set: function(value) { yt.playerConfig = value; } - }); - - Object.defineProperty(ytplayer, 'config', { - get: function() { return playerConfig; }, - set: function(value) { yt.playerConfig = value; } - }); - - if ( window.yt ) { - for ( p in window.yt ) { yt[p] = window.yt[p]; } - window.yt = yt; - } - else { - Object.defineProperty(window, 'yt', { - get: function() { return yt; }, - set: function() {} - }); - } - - if ( window.ytplayer ) { - for ( p in window.ytplayer ) { ytplayer[p] = window.ytplayer[p]; } - window.ytplayer = ytplayer; - } - else { - Object.defineProperty(window, 'ytplayer', { - get: function() { return ytplayer; }, - set: function() {} - }); - } - }; -} -/*else if ( check url ) { - vAPI.sitePatch do something -}*/ + } +};