Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <script>
- function waitFor(fn, {interval=150, timeout=5000} = {}) {
- return new Promise((resolve, reject) => {
- const t0 = Date.now();
- const id = setInterval(() => {
- try {
- const v = fn();
- if (v) { clearInterval(id); resolve(v); }
- else if (Date.now() - t0 > timeout) { clearInterval(id); reject(new Error('timeout')); }
- } catch (e) { clearInterval(id); reject(e); }
- }, interval);
- });
- }
- function insertClickioScripts() {
- const s1 = document.createElement('script');
- s1.async = true;
- s1.type = 'text/javascript';
- s1.src = '//s.clickiocdn.com/t/215795/360_light.js';
- document.head.appendChild(s1);
- const s2 = document.createElement('script');
- s2.className = '__lxGc__';
- s2.type = 'text/javascript';
- s2.text = "((__lxGc__=window.__lxGc__||{'s':{},'b':0})['s']['_215795']=__lxGc__['s']['_215795']||{'b':{}})['b']['_733774']={'i':__lxGc__.b++};";
- document.body.appendChild(s2);
- const s3 = document.createElement('script');
- s3.className = '__lxGc__';
- s3.type = 'text/javascript';
- s3.text = "((__lxGc__=window.__lxGc__||{'s':{},'b':0})['s']['_215795']=__lxGc__['s']['_215795']||{'b':{}})['b']['_733773']={'i':__lxGc__.b++};";
- document.body.appendChild(s3);
- }
- async function getSubscriberStatus() {
- await waitFor(() =>
- window.site && site.session && (site.session.isSuscriber || site.session.isSubscriber)
- );
- const api = site.session.isSuscriber || site.session.isSubscriber;
- if (typeof api === 'function' && api.length >= 1) {
- return await new Promise(resolve => {
- let done = false;
- const timer = setTimeout(() => { if (!done) resolve(undefined); }, 3000);
- api(function(val) {
- done = true;
- clearTimeout(timer);
- resolve(!!val);
- });
- });
- }
- if (typeof api === 'function') {
- const ret = api();
- if (ret && typeof ret.then === 'function') {
- return !!(await ret);
- }
- return !!ret;
- }
- if (typeof api === 'boolean') return api;
- return undefined;
- }
- (async () => {
- try {
- const val = await getSubscriberStatus();
- if (val !== true) {
- console.log('Pasted');
- insertClickioScripts();
- } else {
- console.log('Not pasted');
- }
- } catch (e) {
- console.warn('Unknown', e);
- insertClickioScripts();
- }
- })();
- </script>
Advertisement