var insight = {
    pageId: "7c7c92d5-e07d-499c-b0e2-7bc2bd52538e",
    //get page title from guid
    pageTitle: "#pageTitle#",
    singletonEvents: {},
    trackEvent: function (type, value) {
        var xhr = new XMLHttpRequest();
        
        xhr.open("post", "/profile/track");
        xhr.onload = function () {
            console.log(this);
        };
        //profile track page view
        xhr.setRequestHeader("Content-Type", "application/json");
        xhr.send(JSON.stringify({ pageId: insight.pageId, eventType: type, value: value }));
    },

    trackEventOnce: function (type, value) {


        if (this.singletonEvents[type]) {
            return;
        }


        this.singletonEvents[type] = true;
        this.trackEvent(type, value);
    },

    listenForPageView: function (time) {
        setTimeout(function () {
            insight.trackEvent('ViewedPage', time);
        }, time * 1000);
    }
};

//page view listener
window.addEventListener("load", function () {
    insight.trackEventOnce("epiPageView");
});

//adds listener for scrolling -- this would be good for bot traffic
window.addEventListener("scroll", function () {
    insight.trackEventOnce("Scrolled");
});

//listener for when user clicks submit button
window.addEventListener("submit", function () {
    insight.trackEventOnce("Clicked Submit");
});

//listener for info input on fields
window.addEventListener("input", function () {
    insight.trackEventOnce("Input Info");
});

//listener for leaving page
window.addEventListener("click", function (evt) {

    if (evt.target.href && evt.target.href.origin) {
        if (evt.target.href.origin !== window.location.origin) {

                console.log(evt.target.href);
                insight.trackEventOnce("Left Page", evt.target.href);
            }
    }
    

});

insight.listenForPageView(30);
insight.listenForPageView(60);
