var headersData, admiralChecked = false; function getHeaders() { if (headersData === undefined) { var req = new XMLHttpRequest(); req.open('GET', location, false); req.send(null); // associate array to store all values headersData = new Object(); // get all headers in one call and parse each item var headers = req.getAllResponseHeaders().toLowerCase(), aHeaders = headers.split('\n'); for (var i= 0; i < aHeaders.length; i++) { var thisItem = aHeaders[i], key = thisItem.substring(0, thisItem.indexOf(':')), value = thisItem.substring(thisItem.indexOf(':') + 1); headersData[key] = value; } } } function getCFRay() { var result = 'admiral'; getHeaders(); if (headersData['cf-ray'] !== undefined && headersData['cf-ray'].length > 0) { result = headersData['cf-ray'].split('-')[1]; } else if (headersData['x-served-by'] !== undefined && headersData['x-served-by'].length > 0) { result = headersData['x-served-by']; } return result; } /** * Read Admiral cookie value * @param {string} status */ function readAdmiralCookie() { var cookieArray = document.cookie.split(/; */), ciphertextArray = [], isValid = false, matched = false, plaintext = '', cookieName, bytes, i; for (i = 0; i < cookieArray.length; i++) { ciphertextArray = cookieArray[i].split('='); if (ciphertextArray.length > 0) { bytes = CryptoJS.AES.decrypt(ciphertextArray[0].replace(/@[email protected]/g, '='), getCFRay()); try { plaintext = bytes.toString(CryptoJS.enc.Utf8); isValid = true; } catch { isValid = false; } if (isValid && plaintext.length > 0 && plaintext === (getCFRay() + navigator.userAgent).trim()) { cookieName = ciphertextArray[0] + '='; matched = true; break; } } } if (matched) { var char = cookieArray[i]; if (char.indexOf(cookieName) === 0) { var result = char.substring(cookieName.length, char.length).replace(/@[email protected]/g, '='), decrypted = CryptoJS.AES.decrypt(result, getCFRay()), data = { 'key' : cookieName, 'val' : 'false' }; if (decrypted.toString(CryptoJS.enc.Utf8) === (navigator.userAgent + getCFRay() + '1').trim()) { data['val'] = 'true'; } return data; } } return null; } /** * Save Admiral subscribed status to cookie * @param {string} status */ function updateAdmiralCookie(cipherValue, existingCookie) { var date = new Date(), valuePlainText = cipherValue.replace(/=/g, '@[email protected]'), admiralCookie; if (existingCookie !== null) { admiralCookie = existingCookie + valuePlainText; } else { var title = (getCFRay() + navigator.userAgent).trim(), titleCipher = CryptoJS.AES.encrypt(title, getCFRay()).toString(), titlePlainText = titleCipher.replace(/=/g, '@[email protected]'); admiralCookie = titlePlainText + '=' + valuePlainText; } date.setTime(date.getTime() + (10 * 60 * 1000)); admiralCookie += '; expires=' + date.toUTCString() + '; path=/'; document.cookie = admiralCookie; } checkAdmiralCookiePromise = new Promise(function (resolve, reject) { var cookieData = readAdmiralCookie(); if (cookieData !== null && cookieData['val'] === 'true') { resolve('subscribed'); } else if (window.admiral) { var checkAdmiralStatusPromise; if (window.location.host.replace(/^((sbx)|(dev)|(stg)|(www))\./, '') === 'forums.playstationlifestyle.net') { checkAdmiralStatusPromise = new Promise(function (resolve, reject) { if (typeof window.admiral !== 'undefined') { window.admiral("after", "measure.detected", function({ adblocking, whitelisted, subscribed }){ if (subscribed) { resolve('measure.subscribed'); } else { reject('measure.unsubscribed'); } }); } }); } else { checkAdmiralStatusPromise = new Promise(function (resolve, reject) { setTimeout(function () { reject('resolve'); }, 0); }); } checkAdmiralStatusPromise.then(function () { var cookieName = null; if (cookieData !== null) { cookieName = cookieData['key']; } updateAdmiralCookie(CryptoJS.AES.encrypt((navigator.userAgent + getCFRay() + '1').trim(), getCFRay()).toString(), cookieName); resolve('subscribed'); }) .catch(function (resp) { var cookieName = null; if (cookieData !== null) { cookieName = cookieData['key']; } updateAdmiralCookie(CryptoJS.AES.encrypt((navigator.userAgent + getCFRay() + '0').trim(), getCFRay()).toString(), cookieName); reject('unsubscribed'); }); } }); checkAdmiralCookiePromise.then(function () { console.info("[ADMIRAL] User Subscribed."); }).catch(function (resp) { console.info("[ADMIRAL] User Not Subscribed."); });

It's about time....

Discussion in 'New User Center' started by Cro-_-Han, Aug 28, 2015.

  1. Cro-_-Han

    Cro-_-Han PSLS Level: Newbie

    Joined:
    Aug 28, 2015
    Messages:
    1
    Likes Received:
    0
    That i signed up. After viewing PSLS for like the few years I have made it my number one stop everytime i open a browser. Cant live without you PSLS even for a damn minute.... LOL
     
  2. Stephen Bitto

    Stephen Bitto Administrator Staff Member

    Joined:
    Feb 12, 2015
    Messages:
    321
    Likes Received:
    54
    PSN:
    TYLERxDURDEN
    It really is the number 1 spot for PlayStation news, reviews and opinion.

    Welcome to the forums!

    What consoles are you currently playing on?
     

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice