Test

function resize(event) {
    // Do we trust the sender of this message?  (might be
    // different from what we originally opened, for example).
    if (event.origin == "https://notes.pioneerreg.com" || event.origin.indexOf("localhost:") > 0 || event.origin == "https://dev.bikereg.com" || event.origin == "https://dev3.bikereg.com" || event.origin == "https://dev2.bikereg.com" || event.origin == "https://www.bikereg.com")
        athleteRegResizeIframe(event.data);
    else if (event.origin == "https://dev.runreg.com" || event.origin == "https://www.runreg.com")
        athleteRegResizeIframe(event.data);
    else if (event.origin == "https://dev.trireg.com" || event.origin == "https://www.trireg.com")
        athleteRegResizeIframe(event.data);
    else if (event.origin == "https://dev.skireg.com" || event.origin == "https://www.skireg.com")
        athleteRegResizeIframe(event.data);
    else
        return;
}

function insertAfter(referenceNode, newNode) {
    referenceNode.parentNode.insertBefore(newNode, referenceNode.nextSibling);
}

window.addEventListener('scroll', function () {

    var iframe = document.getElementById('regFrame');
    if (iframe) {

        var bodyRect = document.body.getBoundingClientRect(),
        elemRect = iframe.getBoundingClientRect(),
        offset = elemRect.top - bodyRect.top;

        if (offset >= 0) {
            //page current scroll
            var currentScrol = document.documentElement.scrollTop || document.body.scrollTop;

            var fakeiframescroll = currentScrol - offset;
            if (fakeiframescroll >= 0) {
                document.getElementById('regFrame').contentWindow.postMessage('FakeIframeScroll:' + fakeiframescroll, '*');
            }
        }
    }
});

function getPosition(element) {
    var rect = element.getBoundingClientRect();
    return { x: rect.left, y: rect.top };
}

window.addEventListener("load", function () {
    var thisScript = document.CurrentScript || document.getElementById('athleteRegWidget');

    if (thisScript && !document.getElementById('regFrame')) {
        var eventID_vanity = thisScript.getAttribute('data-event');
        if (eventID_vanity) {
            var frame = document.createElement("iframe");
            var frameDiv = document.createElement("div");

            var iframeaddr = thisScript.src;
            var domainstart = iframeaddr.indexOf("//");
            var domainend = iframeaddr.indexOf("/", domainstart + 2);
            var addr = iframeaddr.substring(0, domainend);

            frame.setAttribute("src", addr + '/' + eventID_vanity + "?if=1");
            frame.setAttribute("id", "regFrame");
            frame.setAttribute("onload", "checkThirdParty()");
            frame.frameBorder = 0;
            frame.style.width = 100 + "%";
            frame.style.height = 2000 + "px";
            frameDiv.appendChild(frame);
            insertAfter(thisScript, frameDiv);

            var div = document.createElement("div");
            div.style.width = 100 + "%";
            div.style.textAlign = "center";
            var loadingImg = document.createElement("img");
            loadingImg.setAttribute("src", addr + "/i/DoubleRing-200px.gif");
            loadingImg.setAttribute("style", "vertical-align: middle; ");
            div.setAttribute("id", "loadingRegFrame");
            loadingImg.style.width = 50 + 'px';
            div.appendChild(loadingImg);

            var loadingmessage = document.createElement("i");
            loadingmessage.setAttribute("style", "font-family: 'Open Sans',arial,helvetica,sans-serif; font-weight: bold; vertical-align: middle;");
            loadingmessage.innerHTML = " Loading Registration...";

            div.appendChild(loadingmessage);

            insertAfter(thisScript, div);

            if (!HasMetaViewport()) {
                var viewportMeta = document.createElement("meta");
                viewportMeta.name = 'viewport';
                viewportMeta.content = "width=device-width";
                document.getElementsByTagName('head')[0].appendChild(viewportMeta);
            }
        }
    }

    if (top != self && top.location.href.indexOf("brag") <= 0) top.location.href = location.href;

    AppendScript(GetSiteAddr() + '/users/Public/ReadWriteCookie.aspx?rw=w');
});

function HasMetaViewport() {
    var metas = document.getElementsByTagName('meta');

    for (var i = 0; i < metas.length; i++) {
        if (metas[i].getAttribute("property") == "viewport") {
            return true;
        }
    }

    return false;
}
function checkThirdParty() {
    if (window.SendThirdPartyMessage) {
        window.SendThirdPartyMessage = false;
        document.getElementById('regFrame').contentWindow.postMessage('NoThirdPartiesCookiesAllowed', '*');
    }
}

window.SendThirdPartyMessage = false;
window.ThirdPartyCookiesNotAllowed = function () {
    window.SendThirdPartyMessage = true; // mark it in case the window isn't ready
    document.getElementById('regFrame').contentWindow.postMessage('NoThirdPartiesCookiesAllowed', '*');
};

window.Step2 = function stepTwo() {
    AppendScript(GetSiteAddr() + '/users/Public/ReadWriteCookie.aspx?rw=r');
};

function AppendScript(scriptURL) {
    var resultsEl = document.getElementById('regFrame')
    var step2El = document.createElement('script');
    step2El.type = "application/javascript";
    step2El.setAttribute('src', scriptURL);
    resultsEl.appendChild(step2El);
}

if (!window.addEventListener) {
    window.attachEvent("onmessage", resize);
    window.attachEvent("onscroll", ScrollMessage);
}
else {
    window.addEventListener("message", resize, false);
    window.addEventListener("scroll", ScrollMessage);
}



function ScrollMessage() {
    //console.log(document.body.scrollTop);
    if (document.getElementById('regFrame') != null) {
        document.getElementById('regFrame').contentWindow.postMessage('getscroll:' + document.body.scrollTop, '*');
    }
}

function athleteRegResizeIframe(newHeight) {

    if (typeof newHeight == 'string' && newHeight.indexOf('scrollto') != -1) {

        var tokens = newHeight.split(':');
        var newoffset = 0;
        if (tokens.length > 1) {
            newoffset = parseInt(tokens[1]);
        }

        setTimeout(function () {
            var bodyRect = document.body.getBoundingClientRect();
            var iframe = document.getElementById('regFrame').getBoundingClientRect();
            document.body.scrollTop = document.documentElement.scrollTop = (iframe.top - bodyRect.top) + newoffset;
        }, 50);
    }

    if (typeof newHeight == 'string' && newHeight.indexOf('NewHeight:') != -1) {
        var myHeight = newHeight.replace('NewHeight:', '');

        myHeight = parseInt(myHeight, 10);
        if (!isNaN(myHeight)) {
            //            if (myHeight < 1500) {
            //                myHeight = 1500;
            //            }
            document.getElementById('regFrame').style.height = myHeight + 'px';

        }


        return;
    }

    if (typeof newHeight == 'string' && newHeight.indexOf('GetCurrentURL') != -1) {
        var splittedDomain = location.hostname.split(".");
        if (splittedDomain.length > 2) {
            document.getElementById('regFrame').contentWindow.postMessage('SITE|' + splittedDomain[splittedDomain.length - 2] + '.' + splittedDomain[splittedDomain.length - 1], '*');
        }
        else {
            document.getElementById('regFrame').contentWindow.postMessage('SITE|' + location.hostname, '*');
        }

    }


    if (typeof newHeight == 'string' && newHeight.indexOf('SendToBaseSite') != -1) {
        var EventIdOrVanity = document.getElementById('regFrame').src.replace(GetSiteAddr(), '').replace('?if=1', '');
        var baseAddr = GetSiteAddr() + EventIdOrVanity + '?nif=1';

        var theWindow = window;
        while (theWindow.parent != null && theWindow.parent != theWindow) {
            theWindow = theWindow.parent
        }
        theWindow.location.href = baseAddr;
    }

    if (newHeight == 'redirect') {
        var cartAddr = "[SITE]/Registration/Cart/CheckoutCart.aspx?rd=" + window.location.href;
        if (document.getElementById('regFrame').src.indexOf('dev.bikereg') != -1)
            cartAddr = cartAddr.replace('[SITE]', 'https://dev.bikereg.com');
        else if (document.getElementById('regFrame').src.indexOf('www.bikereg') != -1)
            cartAddr = cartAddr.replace('[SITE]', 'https://www.bikereg.com');
        else if (document.getElementById('regFrame').src.indexOf('dev3.bikereg') != -1)
            cartAddr = cartAddr.replace('[SITE]', 'https://dev3.bikereg.com');
        else if (document.getElementById('regFrame').src.indexOf('www.runreg') != -1)
            cartAddr = cartAddr.replace('[SITE]', 'https://www.runreg.com');
        else if (document.getElementById('regFrame').src.indexOf('www.skireg') != -1)
            cartAddr = cartAddr.replace('[SITE]', 'https://www.skireg.com');
        else if (document.getElementById('regFrame').src.indexOf('www.trireg') != -1)
            cartAddr = cartAddr.replace('[SITE]', 'https://www.trireg.com');
        else if (document.getElementById('regFrame').src.indexOf('localhost') != -1)
            cartAddr = cartAddr.replace('[SITE]', 'http://localhost:56255');
        var theWindow = window;
        while (theWindow.parent != null && theWindow.parent != theWindow) {
            theWindow = theWindow.parent
        }

        theWindow.location.href = cartAddr;
    }

    var height = parseInt(newHeight, 10);
    if (!isNaN(height)) {


        document.getElementById('regFrame').style.height = height + 'px';
        var loadingImg = document.getElementById('loadingRegFrame');
        if (loadingImg) {
            loadingImg.style.display = 'none';
        }
    }
}

function getParameterByName(name) {
    name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
    var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
        results = regex.exec(location.search);
    return results === null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
}

//window.onload = CheckQS();

//if (window.addEventListener)
//    window.addEventListener('load', CheckQS, false)
//else if (window.attachEvent)
//    window.attachEvent('onload', CheckQS)


var timer;

timer = setTimeout(CheckQS, 50);


function CheckQS() {
    if (document.getElementById('regFrame') != null) {
        clearTimeout(timer);
        if (getParameterByName('cf') != '') {
            document.getElementById('regFrame').src = GetSiteAddr() + '/Confirmation?if=1';
        }
        if (getParameterByName('who') != '') {
            document.getElementById('regFrame').src = GetSiteAddr() + '/confirmed/' + getParameterByName('who') + '?if=1';
        }
    }
}

function GetSiteAddr() {
    if (document.getElementById('regFrame')) {
        var iframeaddr = document.getElementById('regFrame').src;
        var domainstart = iframeaddr.indexOf("//");
        var domainend = iframeaddr.indexOf("/", domainstart + 2);
        return iframeaddr.substring(0, domainend);
    }
    else {
        return 'https://www.bikereg.com'
    }
    //var addr = "[SITE]";
    //if (document.getElementById('regFrame').src.indexOf('dev.bikereg') != -1)
    //    return addr.replace('[SITE]', 'https://dev.bikereg.com');
    //else if (document.getElementById('regFrame').src.indexOf('www.bikereg') != -1)
    //    return addr.replace('[SITE]', 'https://www.bikereg.com');
    //else if (document.getElementById('regFrame').src.indexOf('www.runreg') != -1)
    //    return addr.replace('[SITE]', 'https://www.runreg.com');
    //else if (document.getElementById('regFrame').src.indexOf('www.skireg') != -1)
    //    return addr.replace('[SITE]', 'https://www.skireg.com');
    //else if (document.getElementById('regFrame').src.indexOf('www.trireg') != -1)
    //    return addr.replace('[SITE]', 'https://www.trireg.com');
    //else if (document.getElementById('regFrame').src.indexOf('localhost') != -1)
    //    return addr.replace('[SITE]', 'http://localhost:56255');
}