Add support for mobile ads

This commit is contained in:
Kira 2019-10-12 12:42:13 -07:00
parent 2c9f9ee1a3
commit 9d3de75e52
2 changed files with 30 additions and 12 deletions

View File

@ -1,12 +1,34 @@
<% if Danbooru.config.ads_enabled? %>
<div id="ad-leaderboard" class='section'>
<div id="ad-leaderboard-content" class="adzone">
<ins data-revive-zoneid="<%= Danbooru.config.ads_desktop_zone %>" data-revive-id="<%= Danbooru.config.ads_desktop_revive_id %>"></ins>
<script async src="//ads.dragonfru.it/www/delivery/asyncjs.php"></script>
<ins id="ad-insert-element"></ins>
<script>
(function() {
var zones = {
desktop: <%= raw(Danbooru.config.ads_zone_desktop.to_json) %>,
mobile: <%= raw(Danbooru.config.ads_zone_mobile.to_json) %>
};
var zone = zones.desktop;
var width = window.innerWidth || screen.width;
if(width <= 900) {
zone = zones.mobile;
}
var el = document.getElementById('ad-insert-element');
if(!el)
return;
el.setAttribute("data-revive-zoneid", zone.zone.toString());
el.setAttribute("data-revive-id", zone.revive_id);
var s = document.createElement('script');
s.async = true;
s.src = "//ads.dragonfru.it/www/delivery/asyncjs.php";
document.body.appendChild(s);
})();
</script>
<% ad_rand = Random::DEFAULT.rand(50000000) %>
<% ad_zone = Danbooru.config.ads_zone_desktop %>
<noscript class="adzone">
<a href='https://ads.dragonfru.it/www/delivery/ck.php?zoneid=<%= Danbooru.config.ads_desktop_zone %>&n=<%= Danbooru.config.ads_desktop_checksum %>&cb=<%= ad_rand %>' target='_blank' rel="nofollow noopener">
<img src='https://ads.dragonfru.it/www/delivery/avw.php?zoneid=<%= Danbooru.config.ads_desktop_zone %>&cb=<%= ad_rand %>&n=<%= Danbooru.config.ads_desktop_checksum %>' border='0' alt='' />
<a href='https://ads.dragonfru.it/www/delivery/ck.php?zoneid=<%= ad_zone[:zone] %>&n=<%= ad_zone[:checksum] %>&cb=<%= ad_rand %>' target='_blank' rel="nofollow noopener">
<img src='https://ads.dragonfru.it/www/delivery/avw.php?zoneid=<%= ad_zone[:zone] %>&cb=<%= ad_rand %>&n=<%= ad_zone[:checksum] %>' border='0' alt='' />
</a>
</noscript>
</div>

View File

@ -925,16 +925,12 @@ fart'
false
end
def ads_desktop_zone
nil
def ads_zone_desktop
{zone: nil, revive_id: nil, checksum: nil}
end
def ads_desktop_revive_id
nil
end
def ads_desktop_checksum
nil
def ads_zone_mobile
{zone: nil, revive_id: nil, checksum: nil}
end
end