(function ( w, d, $ ) { var css_class = {}; var plugin = {}; // cross browser way to add an event listener function addListener(event, obj, fn) { if (obj.addEventListener) { obj.addEventListener(event, fn, false); // modern browsers } else { obj.attachEvent("on"+event, fn); // older versions of IE } } function daadb_get_data() { $.ajax( { url: daau_app.this_url, type: 'POST', dataType: 'JSON', cache: false, data: { action: 'get_daau_settings', nonce: daau_app.nonces.get_plugin_data }, success: function( data ) { initCss( data ); createHtmlElements( data ); initEvents( data); setModalContent( data ); setModalStyle( data ); buildModal( data ); showModal(); setTimer( data ); }, error: function( jqXHR, textStatus, errorThrown ) { console.log( ' Error: ' + textStatus ); } } ); } function initCss( data ) { css_class.wrapper = data['adunblocker-file-name'] + '-wrapper'; css_class.container = data['adunblocker-file-name'] + '-container'; css_class.blanket = data['adunblocker-file-name'] + '-blanket'; css_class.scroll = data['adunblocker-file-name'] + '-disable-scroll'; } function createHtmlElements( data ) { plugin.blanket = d.createElement("div"); plugin.wrapper = d.createElement("div"); plugin.container = d.createElement("div"); plugin.h2 = d.createElement("h2"); plugin.p = d.createElement("p"); if(data['adunblocker-type'] == 'dismissible') { plugin.close_button = d.createElement("button"); plugin.close_button.classList = "dashicons dashicons-no-alt"; } } function setModalStyle( data ) { plugin.blanket.id = css_class.blanket; plugin.blanket.style.background = convertHex(data['adunblocker-overlay-color'], 95); plugin.h2.style.color = data['adunblocker-title-color']; plugin.p.style.color = data['adunblocker-text-color']; plugin.container.style.background = data['adunblocker-bg-color']; } function setModalContent( data ) { plugin.h2.innerHTML = data['adunblocker-title']; plugin.p.innerHTML = data['adunblocker-content']; } function buildModal( data ) { plugin.container.appendChild(plugin.h2); plugin.container.appendChild(plugin.p); plugin.wrapper.appendChild(plugin.container); plugin.blanket.appendChild(plugin.wrapper); if(data['adunblocker-type'] == 'dismissible') { plugin.container.appendChild(plugin.close_button); } } function initEvents( data ) { if(data['adunblocker-type'] == 'dismissible') { addListener('click', plugin.close_button, close); } } function showModal() { d.body.appendChild(plugin.blanket); setTimeout(function() { d.body.className += ' ' + css_class.scroll; }, 1000); } function setTimer( data ) { if(data['adunblocker-type'] == 'temp') { var delay = data['adunblocker-delay']; setTimeout( close(), delay ) } } function close() { d.body.classList.remove( css_class.scroll ); } function convertHex( hex, opacity ){ hex = hex.replace('#', ''); r = parseInt(hex.substring(0,2), 16); g = parseInt(hex.substring(2,4), 16); b = parseInt(hex.substring(4,6), 16); result = 'rgba(' + r + ',' + g + ',' + b + ',' + opacity / 100 +')'; return result; } function run() { if ( typeof adsbygoogle === "undefined" ) { daadb_get_data(); } else if( !adsbygoogle.loaded ) { daadb_get_data(); } } addListener( 'load', w, run ); })( window, document, jQuery );