// Check the domain-wide CS data and pre-set Hubspot tracking values (if available)
function check_cs_data() {

    // We'll lock these cookies to our hostname
    var hostname = document.location.hostname;

    // Get the domain-wide CS cookie
    var cscookie = cookiejar.fetch('hubspottrackingcookie');

    var hubspotutk = null;
    var hsfirstvisit = null;

    if (cscookie !== null) {

        // Test pattern for Hubspot tracking code
        var pattern = /^[0-9a-f]{32}$/;

        // First check for a 'legacy' value, i.e. not using subcookies
        if (cscookie.match(pattern) !== null)
        {
            hubspotutk = cscookie;
            cookiejar.bake('hubspotutk',hubspotutk,3650,'/',hostname);

            // TODO:  Bounce to WWW in an attempt to grab hsfirstvisit
            var host_pattern = /^(.+)\.cloudswitch\.com$/;

            var target_url_base = "http://www.cloudswitch.com/cshrefresh.html";
            var target_url = null;

            if (hostname.match(host_pattern) !== null) {

                var csh_env = hostname.replace(host_pattern, "$1");

                if (csh_env !== null) {
                    switch (csh_env) {
                        case 'home':
                            target_url = target_url_base + "?env=prod";
                            break;
                        case 'cshtest':
                            target_url = target_url_base + "?env=test";
                            break;
                        case 'cshdev':
                            target_url = target_url_base + "?env=dev";
                            break;
                        default:
                            // No idea
                            break;
                    }

                    if (target_url !== null) {
                        window.location = target_url;
                    }
                }
            }
        }

        // If that didn't work, check for a subcookie
        else
        {

            hubspotutk = subcookiejar.fetch('hubspottrackingcookie', 'hubspotutk');
            hsfirstvisit = subcookiejar.fetch('hubspottrackingcookie', 'hsfirstvisit');

            if (hubspotutk !== null && hubspotutk.match(pattern) !== null)
            {
                cookiejar.bake('hubspotutk',hubspotutk,3650,'/',hostname);
            }

            // Also set hsfirstvisit if it's available (no format check needed)
            if (hsfirstvisit !== null)
            {
                cookiejar.bake('hsfirstvisit',hsfirstvisit,3650,'/',hostname);
            }
        }
    }
}

check_cs_data();

// Hubspot-supplied tracking code
var hs_portalid=51831; 
var hs_salog_version = "2.00";
var hs_ppa = "cloudswitch.app5.hubspot.com";
document.write(unescape("%3Cscript src='" + document.location.protocol + "//" + hs_ppa + "/salog.js.aspx' type='text/javascript'%3E%3C/script%3E"));

