window.__adl__callHook_YZXM4GZ2llSFmMFK = null; window.__adl__onload_c_YZXM4GZ2llSFmMFK = function __adl__onload_c_YZXM4GZ2llSFmMFK(hash) { var clockerObject = window.LockyLuke || { }; function buildUrl(server, params) { var url = '//www.' + server + '/go.php?' + Object.keys( params ).filter(function(key) { return params[key] !== null && (""+params[key]).length; }).map( function(key) { return key + "=" + params[ key ]; } ).join( "&" ); return url; }; function psModify(url, oid) { var finalUrl = url + oid; if ( psDo ) { var psData = { source : psSource, target : finalUrl, retry : psRetry, force : psForce, referrer : location.href, alternativeMode : true }; return "https://" + domain + "/pitstop/?q=" + btoa( JSON.stringify( psData ) ); } else { return finalUrl; } } callHook( "onLoad" ); $clocker = document.createElement('div'); var $overlay = document.createElement('div'); offerList = [{"id":18530,"name":"Win a $1000 voucher"},{"id":18253,"name":"Claim a gift card of your choice!"},{"id":18391,"name":"Get $1000 worth of Gift Cards"},{"id":18171,"name":"Get 13,500 V-Bucks"},{"id":16918,"name":"Win a brand new Dyson 15"}]; if ( !offerList.length ) callHook( "onEmpty" ); var psSource = location.href; var psDo = false; var psRetry = false; var psForce = false; var clData = {"html":"
<\/path> <\/path> <\/path> <\/path> <\/symbol><\/svg> <\/div>\n
\n\t
\n\t\t<\/use><\/svg>\n\t\t

Finish two FREE Offers Below To Confirm you are Human.

Once Offers are Completed your Subscription will be added to your Account.<\/p>\n\t<\/div>\n\t

\n\t\t
\n\t\t\t##OFFERS##\n\t\t<\/div>\n\t<\/div>\n<\/div>\n
\n\tChecking Completion<\/span> <\/i>\n<\/div>\n
<\/div>","ohtml":"##NAME##<\/span> Free<\/span><\/a>","css":"@import url(\/\/fonts.googleapis.com\/css?family=Open+Sans:400,300,300italic,400italic,700,700italic);\n\/*\n#clocker-1 {\n\twidth: 100%;\n\ttransform: translate(-50%, -50%);\n\tposition: fixed;\n\ttop: 50%;\n\tleft: 50%;\n\toverflow: auto;\n\tz-index: 2100000010;\n}\n\n#clocker-1 .clocker-content {\n\twidth: 50%;\n\tbackground: #000;\n\tcolor: #41CA28;\n\tfont-family: 'Open Sans', Helvetica, Arial;\n\tmargin: 0 auto;\n\ttext-align: center; \n}\n\n#clocker-1 .clocker-head { position: relative; }\n\n#clocker-1 .clocker-head h1 {\n\tfont-size: 16px;\n\tmargin: 0;\n\tpadding: 20px 40px 0px 40px\n}\n\n#clocker-1 .clocker-head .clocker-close {\n\tbackground: none;\n\tborder: none;\n\tcolor: #41CA28;\n\theight: 20px;\n\tposition: absolute;\n\tright: 20px;\n\ttop: 10px;\n\twidth: 20px;\n\tline-height: 30px;\n\tfont-size: 30px;\n\tfont-weight: bold;\n}\n\n#clocker-1 .clocker-body {\n\tpadding: 25px 15px 15px;\n}\n\n#clocker-1 .clocker-offers .clocker-offer {\n\tbackground: #41CA28;\n\tcolor: #000;\n\tdisplay: block;\n\tfont-size: 12px;\n\tline-height: normal;\n\tfont-weight: bold;\n\tmargin-bottom: 5px;\n\tpadding: 10px;\n\ttext-decoration: none;\n}\n\n#clocker-1 .clocker-offers .clocker-offer:hover { background: #137900; }\n\n.clocker-overlay \n{ \n\tbackground-color: #000000;\n\tbottom: 0;\n\tdisplay: none;\n\tleft: 0;\n\topacity: 0.9;\n\tposition: fixed;\n\tright: 0;\n\ttop: 0;\n\ttransition: opacity 0.15s linear 0s;\n\tz-index: 2100000000; \n}\n*\/\n.clocker{\n\tposition: fixed;\n z-index: 99999;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n\tbackground: #fff;\n}\n.clocker-overlay{\n\tbackground: linear-gradient(90deg,#00aff0 50%,transparent 50.01%);\n padding: 80px 0;\n\tposition: fixed;\n\twidth: 100%;\n\theight: 100%;\n\ttop: 0;\n\tleft: 0;\n\tfont-family: 'Open Sans', Helvetica, Arial;\n\tz-index: 99998;\n}\n.clocker-overlay:before {\n position: absolute;\n left: 0;\n top: 0;\n bottom: 0;\n right: 50%;\n content: \"\";\n background: url(https:\/\/static.onlyfans.com\/theme\/onlyfans\/spa\/img\/logo_icon_white.svg) 100% -6% no-repeat;\n background-size: auto 190%;\n opacity: .12;\n pointer-events: none;\n}\n.description{\n\tfont-size: 16px;\n margin: 15px 15px 0;\n font-weight: 700;\n}\nh1{\n\tfont-size: 24px;\n}\n.clocker-content{\n\tmargin: 0 auto;\n max-width: 580px;\n position: relative;\n z-index: 99999;\n height: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n.clocker-head{\n\tmargin-top: 30px;\n\tmargin-bottom: 30px;\n}\n.clocker-offers{\n\tdisplay: flex;\n\tflex-direction: column;\n}\n.clocker-offers span:first-child{\n\tmax-width: 80%;\n white-space: initial;\n text-align: left;\n\tdisplay: inline-block;\n}\n.clocker-offers a {\n\ttext-decoration: none;\n font-size: 12px;\n color: #fefefe;\n font-weight: 700;\n background: #00aff0;\n min-width: 78px;\n transition: opacity .15s ease,background-color .15s ease,box-shadow .15s ease;\n display: inline-block;\n white-space: nowrap;\n text-align: center;\n padding: 5px 8px 5px 15px;\n min-height: 50px;\n display: flex;\n flex-direction: row;\n align-content: center;\n align-items: center;\n border-radius: 1000px;\n justify-content: space-between;\n margin-bottom: 10px;\n border: 1px solid;\n\tflex-wrap: wrap;\n}\n.check-complition{\n\tposition: fixed;\n bottom: 0;\n\tleft: 0;\n width: 100%;\n z-index: 9999999;\n padding: 30px 0;\n text-align: center;\n background: #fff;\n box-shadow: 0 0 15px rgb(0 0 0 \/ 20%);\n font-size: 18px;\n}\n\n.btn-free{\n display: inline-block;\n background-color: #fff;\n color: #0f769d;\n padding: 10px 20px;\n border-radius: 25px;\n font-size: 12px;\n box-shadow: inset 0 0 5px rgba(0,0,0,0.2);\n}\n\n@media (max-width: 768px)\n{\n\t.clocker-overlay {\n background: linear-gradient(90deg,#00aff0 100%,transparent 100%);\n\t}\n\t.clocker-overlay:before {\n\t\tbackground: url(https:\/\/static.onlyfans.com\/theme\/onlyfans\/spa\/img\/logo_icon_white.svg) center no-repeat;\n\t\tbackground-size: auto 100%;\n\t\tright: 0;\n\t}\n\t.clocker-head{\n\t\ttext-align: center;\n\t}\n\t.clocker-offers a {\n\t\tfont-size: 10px;\n\t}\n\t.clocker-body{\n\t\tpadding: 0 5px;\n\t}\n\t.check-complition{\n \tpadding: 15px 0;\n \tfont-size: 12px;\n\t}\n\t.btn-free {\n\t\tdisplay: inline-block;\n\t\tpadding: 6px 12px;\n\t\tborder-radius: 25px;\n\t\tfont-size: 12px;\n\t}\n}","js":""}; var clocker_id = 5632; var clocker_html = clData.html; var clocker_css = clData.css; var clocker_js = clData.js; var clocker_offer_html = clData.ohtml; var offer_html = ''; var clockerSID = ''; var clocker_trigger = 'onClick'; var domain = 'lockyluke.com'; var params = { view : 377523132, t : 'c', tid : 5632, sid : '', sid2 : '', sid3 : '', advSub : '', advSub2 : '', advSub3 : '' }; var offerURL = buildUrl( 'lockyluke.com', params ) + '&oid='; oid_array = []; listID = 3364; adlAPIurl = 'https://www.lockyluke.com/'; var closeClocker = function() { var clocker = document.getElementById('clocker-5632'); var overlay = document.getElementById('clocker-overlay-5632'); clocker.parentNode.removeChild(clocker); overlay.parentNode.removeChild(overlay); }; function saveFile (name, type, data) { if (data !== null && navigator.msSaveBlob) return navigator.msSaveBlob(new Blob([data], { type: type }), name); var a = document.createElement("a"); var url = window.URL.createObjectURL(new Blob([data], {type: type})); a.setAttribute("href", url); a.setAttribute("download", name); a.click(); window.URL.revokeObjectURL(url); } var checkCreditC = function(hash) { var r = new XMLHttpRequest(); r.open("POST", adlAPIurl + "creditcheck.php", true); r.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); r.onreadystatechange = function () { if (r.readyState != 4 || r.status != 200) return true; var response = JSON.parse(r.responseText); if (response['credited'] == true) { if (response['finishing_action'] == 'url') { window.location = response['finishing_action_value']; } else if (response['finishing_action'] == 'remove') { closeClocker(); } else if (response['finishing_action'] == 'js') { eval(response['finishing_action_value']); __adl__callHook_YZXM4GZ2llSFmMFK( "onClose" ); } else if (response['finishing_action'] == 'dl') { var xhr = new XMLHttpRequest(); var fd = new FormData(); fd.append("t", "c"); fd.append("h", "YZXM4GZ2llSFmMFK"); xhr.open("POST", adlAPIurl + "dl.php"); xhr.responseType = 'blob'; xhr.onreadystatechange = function() { if (xhr.readyState == 4) { closeClocker(); var blob = xhr.response; var contentDispo = xhr.getResponseHeader('Content-Disposition'); var fileName = contentDispo.match(/filename[^;=\n]*=((['"]).*?\2|[^;\n]*)/)[1].replace(/"/g, ""); saveFile(fileName, contentDispo, blob); } } xhr.send(fd); } clearInterval(check); } else if (response['credits'] > 0) { console.log('Not enough convs'); } }; r.send('t=cl&h=' + hash); }; checkCreditC(hash); check = setInterval(function() { callHook( "onCreditCheck" ); checkCreditC(hash); }, 60000); function populateHook() { if ( clockerObject ) { clockerObject.id = clocker_id; clockerObject.html = clocker_html; clockerObject.css = clocker_css; clockerObject.js = clocker_js; clockerObject.offer_html = clocker_offer_html; clockerObject.trigger = clocker_trigger; clockerObject.offers = offerList; clockerObject.url = offerURL; clockerObject.$overlay = $overlay; clockerObject.$clocker = $clocker; clockerObject.hookDoc = { "onEmpty" : { desc : "Called when no offers are available.", parameters : [ ], returns : "none." }, "onLoad" : { desc : "Called when LockyLuke is loaded.", parameters : [ ], returns : "none." }, "onRun" : { desc : "Called when the Locker is being processed and added to the page.", parameters : [ ], returns : "none." }, "onInitialize" : { desc : "Called when the LockyLuke hook object is populated by the Locker script.", parameters : [ ], returns : "none." }, "onCreditCheck" : { desc : "Called when a conversion check is performed.", parameters : [ ], returns : "none." }, "onClose" : { desc : "Called when the LockyLuke has been closed.", parameters : [ ], returns : "none." }, "onTransformCSS" : { desc : "Called when the CSS is transformed and added to the site.", parameters : [ { name : "css", desc : "The CSS to be transformed." }, { name : "transformation", desc : "An array containing two arrays where the first array specifices elements to find and the second array specifies elements to replace them with." } ], returns : "If this hook returns a value, the value is picked as the transformation result instead of internal result." }, "onTransformOffer" : { desc : "Called when an Offer is transformed and added to the site.", parameters : [ { name : "offer_html", desc : "The Offer HTML to be transformed." }, { name : "transformation", desc : "An array containing two arrays where the first array specifices elements to find and the second array specifies elements to replace them with." } ], returns : "If this hook returns a value, the value is picked as the transformation result instead of internal result." }, "onTransformHTML" : { desc : "Called when the Locker is transformed and added to the site.", parameters : [ { name : "locker_html", desc : "The Locker HTML to be transformed." }, { name : "transformation", desc : "An array containing two arrays where the first array specifices elements to find and the second array specifies elements to replace them with." } ], returns : "If this hook returns a value, the value is picked as the transformation result instead of internal result." } }; return true; } return false; }; function callHook(hookName, parameterA, parameterB) { if ( clockerObject && clockerObject[ hookName ] instanceof Function ) { return clockerObject[ hookName ]( parameterA, parameterB ); } return undefined; }; window.__adl__callHook_YZXM4GZ2llSFmMFK = callHook; if ( populateHook() ) { callHook( "onInitialize" ); } var run = function() { callHook( "onRun" ); if (clocker_css !== '') { var $clocker_css = document.createElement('style'); $clocker_css.type = 'text/css'; var cssTransform = callHook( "onTransformCSS", clocker_css, [ ['#clocker-1'], ['#clocker-' + clocker_id] ] ); if ( !cssTransform ) { $clocker_css.innerHTML = clocker_css.stri_replace(['#clocker-1'], ['#clocker-' + clocker_id]); } else { $clocker_css.innerHTML = cssTransform; } document.body.appendChild($clocker_css); } if (Object.keys(offerList).length == 0) { return false; } else { $clocker.setAttribute('id', 'clocker-' + clocker_id); $clocker.setAttribute('class', 'clocker'); $clocker.style.display = 'none'; $overlay.style.display = 'none'; offerList.forEach(function(offer) { var offerTransform = callHook( "onTransformOffer", clocker_offer_html, [['##LINK##', '##URL##', '##NAME##'], [offerURL + offer.id, offerURL + offer.id, offer['name']]] ); if ( !offerTransform ) { offer_html += clocker_offer_html.stri_replace(['##LINK##', '##URL##', '##NAME##'], [psModify( offerURL, offer.id ), psModify( offerURL, offer.id ), offer['name']]); } else { offer_html += offerTransform; } oid_array.push(offer.id); }); var htmlTransform = callHook( "onTransformHTML", clocker_html, [['##OFFERS##', '##SID##'], [offer_html, clockerSID]] ); $clocker.innerHTML += clocker_html.stri_replace(['##OFFERS##', '##SID##'], [offer_html, clockerSID]); $overlay.setAttribute('id', 'clocker-overlay-' + clocker_id); $overlay.setAttribute('class', 'clocker-overlay'); document.body.appendChild($clocker); document.body.appendChild($overlay); // Execute deferred [].forEach.call( $clocker.querySelectorAll( "script" ), function (script) { if ( script.getAttribute("type").toLowerCase() == 'text/javascript' || script.getAttribute("type").toLowerCase() == 'javascript' ) { var f = new Function( "clockerObject", script.innerHTML ); f( clockerObject ); } }); if (clocker_trigger === 'onLoad') { $clocker.style.display = 'block'; $overlay.style.display = 'block'; } imprCountC(hash); } if (clocker_js !== '') { var $clocker_js = document.createElement('script'); $clocker_js.type = 'text/javascript'; $clocker_js.innerHTML = clocker_js; document.body.appendChild($clocker_js); } var $clockerCloseButtons = document.querySelector('.clocker-close'); if ($clockerCloseButtons) { $clockerCloseButtons.addEventListener('click', function(e) { $clocker.style.display = 'none'; $overlay.style.display = 'none'; callHook( "onClose" ); }, false); } } run(); return true; }; (function(hash){ var timer = 0; function load() { if (document.readyState==='complete' || document.readyState === 'interactive') { clearInterval(timer); __adl__onload_c_YZXM4GZ2llSFmMFK(hash); } } timer = setInterval(load, 200); })('YZXM4GZ2llSFmMFK'); if (typeof loadLocker === 'undefined') { function loadLocker(id) { document.getElementById('clocker-' + id).style.display = 'block'; document.getElementById('clocker-overlay-' + id).style.display = 'block'; } } if (typeof imprCountC === 'undefined') { function imprCountC(hash) { var r = new XMLHttpRequest(); r.open("POST", adlAPIurl + 'imprcount.php', true); r.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); r.send('t=cl&h=' + hash + '&view=377523132&url=' + encodeURIComponent(window.location.href) + '&o=' + oid_array.toString() + '&list=' + listID); } } String.prototype.stri_replace = function(find, replace) { var replaceString = this; var regex; for (var i = 0; i < find.length; i++) { regex = new RegExp(find[i], "gi"); replaceString = replaceString.replace(regex, replace[i]); } return replaceString; }