mirror of
https://github.com/DanielnetoDotCom/YouPHPTube
synced 2025-10-03 01:39:24 +02:00
Improve ad blocker
This commit is contained in:
parent
42420af7c8
commit
fe3de2fd2e
6 changed files with 114 additions and 78 deletions
|
@ -6988,7 +6988,10 @@ function getActivationCode()
|
|||
function fix_parse_url($url, $parameter)
|
||||
{
|
||||
$cleanParameter = str_replace('.', '_', $parameter);
|
||||
return str_replace("{$cleanParameter}=", "{$parameter}=", $url);
|
||||
//var_dump("{$cleanParameter}%3D", "{$parameter}%3D", $url);
|
||||
$url = str_replace("{$cleanParameter}%3D", "{$parameter}%3D", $url);
|
||||
$url = str_replace("{$cleanParameter}=", "{$parameter}=", $url);
|
||||
return $url;
|
||||
}
|
||||
|
||||
function generateHorizontalFlickity($items)
|
||||
|
|
|
@ -37,8 +37,11 @@ class AdBlockerDetector extends PluginAbstract
|
|||
|
||||
public function getStart()
|
||||
{
|
||||
if (!empty($_REQUEST["adBlockerDetected"])) {
|
||||
forbiddenPage("We've detected that you're using an ad blocker. This content is accessible when no ad blocker is detected.");
|
||||
global $global;
|
||||
if (!empty($_REQUEST["adBDetec"]) && empty($global['ignoreAdBlocker'])) {
|
||||
$global['ignoreAdBlocker'] = 1;
|
||||
require_once "{$global['systemRootPath']}plugin/AdBlockerDetector/index.php";
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -46,38 +49,40 @@ class AdBlockerDetector extends PluginAbstract
|
|||
{
|
||||
global $global, $config;
|
||||
$js = '';
|
||||
if (empty($_REQUEST["adBlockerDetected"])) {
|
||||
$js .= '<script src="' . getURL('node_modules/blockadblock/blockadblock.js') . '" type="text/javascript"></script>';
|
||||
$js .= '<script src="' . getURL('plugin/AdBlockerDetector/script.js') . '" type="text/javascript"></script>';
|
||||
|
||||
$js .= "<script>
|
||||
function reloadWithAdBlockerDetected() {
|
||||
var currentUrl = window.location.href;
|
||||
if (currentUrl.indexOf('?') === -1) {
|
||||
currentUrl += '?adBlockerDetected=true';
|
||||
} else {
|
||||
currentUrl += '&adBlockerDetected=true';
|
||||
if(empty($global['ignoreAdBlocker'])){
|
||||
if (empty($_REQUEST["adBDetec"])) {
|
||||
$js .= '<script src="' . getURL('node_modules/blockadblock/blockadblock.js') . '" type="text/javascript"></script>';
|
||||
$js .= '<script src="' . getURL('plugin/AdBlockerDetector/script.js') . '" type="text/javascript"></script>';
|
||||
|
||||
$js .= "<script>
|
||||
function reloadWithadBDetec() {
|
||||
var currentUrl = window.location.href;
|
||||
if (currentUrl.indexOf('?') === -1) {
|
||||
currentUrl += '?adBDetec=1';
|
||||
} else {
|
||||
currentUrl += '&adBDetec=1';
|
||||
}
|
||||
window.location.href = currentUrl;
|
||||
}
|
||||
window.location.href = currentUrl;
|
||||
function adBlockDetected() {
|
||||
modal.showPleaseWait();
|
||||
avideoToastError('Ad Blocker detected');
|
||||
$('.container, .container-fluid').html('');
|
||||
reloadWithadBDetec();
|
||||
}
|
||||
if(typeof blockAdBlock === 'undefined') {
|
||||
avideoToastError('Ad Blocker file not found');
|
||||
adBlockDetected();
|
||||
}
|
||||
if(typeof checkScriptBlocking === 'undefined') {
|
||||
avideoToastError('Ad Blocker JS checkScriptBlocking not found');
|
||||
adBlockDetected();
|
||||
}
|
||||
|
||||
</script>";
|
||||
}else{
|
||||
$js .= '<script>history.replaceState(null, null, "'.getRedirectUri().'");</script>';
|
||||
}
|
||||
function adBlockDetected() {
|
||||
modal.showPleaseWait();
|
||||
avideoToastError('Ad Blocker detected');
|
||||
$('.container, .container-fluid').html('');
|
||||
reloadWithAdBlockerDetected();
|
||||
}
|
||||
if(typeof blockAdBlock === 'undefined') {
|
||||
avideoToastError('Ad Blocker file not found');
|
||||
adBlockDetected();
|
||||
}
|
||||
if(typeof checkScriptBlocking === 'undefined') {
|
||||
avideoToastError('Ad Blocker JS checkScriptBlocking not found');
|
||||
adBlockDetected();
|
||||
}
|
||||
|
||||
</script>";
|
||||
}else{
|
||||
$js .= '<script>history.replaceState(null, null, "'.getRedirectUri().'");</script>';
|
||||
}
|
||||
|
||||
return $js;
|
||||
|
|
|
@ -4,6 +4,34 @@ global $global, $config;
|
|||
if (!isset($global['systemRootPath'])) {
|
||||
require_once '../../videos/configuration.php';
|
||||
}
|
||||
$_GET['redirectUri'] = getRedirectUri();
|
||||
forbiddenPage("We've detected that you're using an ad blocker. This content is accessible when no ad blocker is detected.");
|
||||
|
||||
$global['ignoreAdBlocker'] = 1;
|
||||
$_page = new Page(array('Disable Ad Blocker'));
|
||||
?>
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-md-6 col-md-offset-3">
|
||||
|
||||
<div class="panel panel-danger">
|
||||
<div class="panel-heading">
|
||||
<h2>
|
||||
<i class="fa-solid fa-ban"></i> We see you’re using an ad blocker.
|
||||
</h2>
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<h3>
|
||||
<i class="fa-solid fa-handshake"></i> Please help us continue to provide you with free, quality movie and TV streaming by disabling your ad blocker.
|
||||
</h3>
|
||||
</div>
|
||||
|
||||
<div class="panel-footer">
|
||||
<button class="btn btn-primary btn-lg btn-block" onclick="location.reload();"><i class="fa fa-refresh"></i> Refresh Page</button>
|
||||
<p><small><i class="fa fa-info-circle"></i> Please refresh this page once you have disabled the ad blocker.</small></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<?php
|
||||
$_page->print();
|
||||
?>
|
|
@ -191,7 +191,7 @@ TimeLogEnd($timelogname, __LINE__);
|
|||
<link href="<?php echo getURL('view/bootstrap/css/bootstrap.min.css'); ?>" rel="stylesheet" type="text/css"/>
|
||||
|
||||
<link href="<?php echo getURL('node_modules/video.js/dist/video-js.min.css'); ?>" rel="stylesheet" type="text/css"/>
|
||||
<link href="<?php echo getCDN(); ?>view/css/social.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="<?php echo getURL('view/css/social.css'); ?>" rel="stylesheet" type="text/css"/>
|
||||
<link href="<?php echo getURL('node_modules/fontawesome-free/css/all.min.css'); ?>" rel="stylesheet" type="text/css"/>
|
||||
|
||||
<link href="<?php echo getCDN(); ?>node_modules/videojs-playlist-ui/dist/videojs-playlist-ui.css" rel="stylesheet">
|
||||
|
|
|
@ -80,7 +80,7 @@ if(empty($playListData)){
|
|||
<head>
|
||||
<title><?php echo $playListObj->getName() . $config->getPageTitleSeparator() . $config->getWebSiteTitle(); ?></title>
|
||||
<link href="<?php echo getURL('node_modules/video.js/dist/video-js.min.css'); ?>" rel="stylesheet" type="text/css"/>
|
||||
<link href="<?php echo getCDN(); ?>view/css/social.css" rel="stylesheet" type="text/css"/>
|
||||
<link href="<?php echo getURL('view/css/social.css'); ?>" rel="stylesheet" type="text/css"/>
|
||||
|
||||
<link href="<?php echo getCDN(); ?>node_modules/videojs-playlist-ui/dist/videojs-playlist-ui.css" rel="stylesheet">
|
||||
|
||||
|
|
|
@ -15,109 +15,109 @@ ul.social-network li {
|
|||
}
|
||||
|
||||
/* footer social icons */
|
||||
.social-network a.icoRss:hover {
|
||||
.social-network .icoRss:hover {
|
||||
background-color: #F56505;
|
||||
}
|
||||
.social-network a.icoTelegram:hover {
|
||||
.social-network .icoTelegram:hover {
|
||||
background-color: #26A5E4;
|
||||
}
|
||||
.social-network a.icoThreads:hover {
|
||||
.social-network .icoThreads:hover {
|
||||
background-color: #000;
|
||||
}
|
||||
.social-network a.icoWhatsapp:hover {
|
||||
.social-network .icoWhatsapp:hover {
|
||||
background-color: #25D366;
|
||||
}
|
||||
.social-network a.icoInstagram:hover {
|
||||
.social-network .icoInstagram:hover {
|
||||
background-color: #E4405F;
|
||||
}
|
||||
.social-network a.icoSpreaker:hover {
|
||||
.social-network .icoSpreaker:hover {
|
||||
background-color: #FF0000;
|
||||
}
|
||||
.social-network a.icoFacebook:hover {
|
||||
.social-network .icoFacebook:hover {
|
||||
background-color: #3B5998;
|
||||
}
|
||||
.social-network a.icoTwitter:hover {
|
||||
.social-network .icoTwitter:hover {
|
||||
background-color: #1DA1F2;
|
||||
}
|
||||
.social-network a.icoXTwitter:hover {
|
||||
.social-network .icoXTwitter:hover {
|
||||
background-color: #000;
|
||||
}
|
||||
.social-network a.icoGoogle:hover {
|
||||
.social-network .icoGoogle:hover {
|
||||
background-color: #DB4437;
|
||||
}
|
||||
.social-network a.icoVimeo:hover {
|
||||
.social-network .icoVimeo:hover {
|
||||
background-color: #1AB7EA;
|
||||
}
|
||||
.social-network a.icoLinkedIn:hover {
|
||||
.social-network .icoLinkedIn:hover {
|
||||
background-color: #0077B5;
|
||||
}
|
||||
.social-network a.icoTumblr:hover {
|
||||
.social-network .icoTumblr:hover {
|
||||
background-color: #36465D;
|
||||
}
|
||||
.social-network a.icoPinterest:hover {
|
||||
.social-network .icoPinterest:hover {
|
||||
background-color: #BD081C;
|
||||
}
|
||||
.social-network a.icoReddit:hover {
|
||||
.social-network .icoReddit:hover {
|
||||
background-color: #FF4500;
|
||||
}
|
||||
.social-network a.icoWordpress:hover {
|
||||
.social-network .icoWordpress:hover {
|
||||
background-color: #21759B;
|
||||
}
|
||||
.social-network a.icoPinboard:hover {
|
||||
.social-network .icoPinboard:hover {
|
||||
background-color: #0000FF;
|
||||
}
|
||||
.social-network a.icoCopy:hover {
|
||||
.social-network .icoCopy:hover {
|
||||
background-color: #333;
|
||||
}
|
||||
.social-network a.icoGab:hover {
|
||||
.social-network .icoGab:hover {
|
||||
background-color: #00D178;
|
||||
}
|
||||
.social-network a.icoCloutHub:hover {
|
||||
.social-network .icoCloutHub:hover {
|
||||
background-color: #F16E28;
|
||||
}
|
||||
.social-network a.icoYoutube:hover {
|
||||
.social-network .icoYoutube:hover {
|
||||
background-color: #FF0000;
|
||||
}
|
||||
.social-network a.icoTikTok:hover {
|
||||
.social-network .icoTikTok:hover {
|
||||
background-color: #000000; /* TikTok's primary color is black, but sometimes it's represented with a lighter shade or with the blue from its logo */
|
||||
}
|
||||
.social-network a.icoPatreon:hover {
|
||||
.social-network .icoPatreon:hover {
|
||||
background-color: #F96854; /* Patreon's primary color */
|
||||
}
|
||||
.social-network a.icoAmazon:hover {
|
||||
.social-network .icoAmazon:hover {
|
||||
background-color: #FF9900;
|
||||
}
|
||||
.social-network a.icoGoodreads:hover {
|
||||
.social-network .icoGoodreads:hover {
|
||||
background-color: #372213;
|
||||
}
|
||||
.social-network a.icoShopping:hover {
|
||||
.social-network .icoShopping:hover {
|
||||
background-color: #FF5733; /* This is a price-tag red color */
|
||||
}
|
||||
.social-network a.icoCopy:hover { /* for Website */
|
||||
.social-network .icoCopy:hover { /* for Website */
|
||||
background-color: #333; /* Using a neutral color since "Website" doesn't have a specific brand color */
|
||||
}
|
||||
.social-network a.icoApple:hover {
|
||||
.social-network .icoApple:hover {
|
||||
background-color: #A3AAAE; /* A neutral Apple gray; Apple often uses white, black, or gray for branding */
|
||||
}
|
||||
.social-network a.icoPodcast:hover {
|
||||
.social-network .icoPodcast:hover {
|
||||
background-color: #FF2D55; /* Using the Apple Podcast color as it's a commonly recognized color for podcasts */
|
||||
}
|
||||
.social-network a.icoIMDB:hover {
|
||||
.social-network .icoIMDB:hover {
|
||||
background-color: #E6B91E; /* IMDB's golden yellow color */
|
||||
}
|
||||
|
||||
|
||||
.social-network a.icoRss:hover i,
|
||||
.social-network a.icoFacebook:hover i,
|
||||
.social-network a.icoTwitter:hover i,
|
||||
.social-network a.icoGoogle:hover i,
|
||||
.social-network a.icoVimeo:hover i,
|
||||
.social-network a.icoLinkedIn:hover i ,
|
||||
.social-network a.icoTumblr:hover i ,
|
||||
.social-network a.icoPinterest:hover i ,
|
||||
.social-network a.icoReddit:hover i ,
|
||||
.social-network a.icoWordpress:hover i,
|
||||
.social-network a.icoPinboard:hover i {
|
||||
.social-network .icoRss:hover i,
|
||||
.social-network .icoFacebook:hover i,
|
||||
.social-network .icoTwitter:hover i,
|
||||
.social-network .icoGoogle:hover i,
|
||||
.social-network .icoVimeo:hover i,
|
||||
.social-network .icoLinkedIn:hover i ,
|
||||
.social-network .icoTumblr:hover i ,
|
||||
.social-network .icoPinterest:hover i ,
|
||||
.social-network .icoReddit:hover i ,
|
||||
.social-network .icoWordpress:hover i,
|
||||
.social-network .icoPinboard:hover i {
|
||||
color: #fff;
|
||||
}
|
||||
a.socialIcon:hover,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue