﻿
var subCookieUtil = {
    getCookie: function(name, subName) {

        var subCookies = this.getAll(name);

        if (subCookies) {

            return subCookies[subName];
        }
        else {
            return null;
        }
    },

    getAll: function(name) {
        var cookieName = encodeURIComponent(name) + "=";

        cookieStart = document.cookie.indexOf(cookieName);
        //alert("document.cookie : " + document.cookie);
        cookieValue = null;
        result = {};

        if (cookieStart > -1) {
            var cookieEnd = document.cookie.indexOf(";", cookieStart);

            if (cookieEnd == -1) {
                cookieEnd = document.cookie.length;
            }
            cookieValue = document.cookie.substring(cookieStart + cookieName.length, cookieEnd);

            if (cookieValue.length > 0) {
                var subCookies = cookieValue.split("&");

                for (var i = 0; i < subCookies.length; i++) {
                    var parts = subCookies[i].split("=");
                    result[decodeURIComponent(parts[0])] = decodeURIComponent(parts[1]);
                }
                return result;
            }
        }

        return null;
    },

    setCookie: function(name, subName, value, expires) {

        var subCookies = this.getAll(name) || {};

        subCookies[subName] = value;
        this.setAll(name, subCookies, expires);
    },

    setAll: function(name, subCookies, expires) {
        var cookieText = encodeURIComponent(name) + "=";
        var subCookieParts = new Array();

        for (var subName in subCookies) {
            if (subName.length > 0 && subCookies.hasOwnProperty(subName)) {
                subCookieParts.push(encodeURIComponent(subName) + "=" + encodeURIComponent(subCookies[subName]));
            }
        }
        if (subCookieParts.length > 0) {
            cookieText += subCookieParts.join("&");
            if (expires instanceof Date) {

                cookieText += ";expires=" + expires.toGMTString();
            }

        }
        else {
            cookieText += "; expires=" + (new Date(0)).toGMTString();
            //cookieText += expires;
        }
        //alert(" cookieText : " + cookieText);
        document.cookie = cookieText + ";path=/";
    }

}

function trackNewsletterClick(validationgroup, arg)
{
        if (!Page_ClientValidate(validationgroup)) return false;
        
        s.eVar1 = arg;        
        s.customLinkTrackingCall = true;  
        s.linkTrackVars = s.eVar1;    
        s.tl(true, "o", "Internal Campaign Click");
 }


////Function to create a cookie
//function createCookie(name, value, days) {
//    if (days) {
//        var date = new Date();
//        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
//        var expires = "; expires=" + date.toGMTString();
//    }
//    else var expires = "";
//    document.cookie = name + "=" + value + expires + "; path=/";
//}

////Function to get/read a specified cookie
//function readCookie(name) {
//    var nameEQ = name + "=";
//    var ca = document.cookie.split(';');
//    for (var i = 0; i < ca.length; i++) {
//        var c = ca[i];
//        while (c.charAt(0) == ' ') c = c.substring(1, c.length);
//        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
//    }
//    return null;
//}

////Function to delete a specified cookie
//function delete_cookie(cookie_name) {
//    var cookie_date = new Date();  // current date & time
//    cookie_date.setTime(cookie_date.getTime() - 1);
//    document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString();
//}
