function writeSessionCookie(cookieName, cookieValue) {
    if (testSessionCookie()) { document.cookie = escape(cookieName) + "=" + escape(cookieValue) + "; path=/"; return true; }
    else return false;
}
function getCookieValue(cookieName) {
    var exp = new RegExp(escape(cookieName) + "=([^;]+)"); if (exp.test(document.cookie + ";")) { exp.exec(document.cookie + ";"); return unescape(RegExp.$1); }
    else return false;
}
function testSessionCookie() {
    document.cookie = "testSessionCookie=Enabled"; if (getCookieValue("testSessionCookie") == "Enabled")
        return true
    else
        return false;
}
function testPersistentCookie() {
    writePersistentCookie("testPersistentCookie", "Enabled", "minutes", 1); if (getCookieValue("testPersistentCookie") == "Enabled")
        return true
    else
        return false;
}
function writePersistentCookie(CookieName, CookieValue, periodType, offset) {
    var expireDate = new Date(); offset = offset / 1; var myPeriodType = periodType; switch (myPeriodType.toLowerCase()) { case "years": expireDate.setYear(expireDate.getFullYear() + offset); break; case "months": expireDate.setMonth(expireDate.getMonth() + offset); break; case "days": expireDate.setDate(expireDate.getDate() + offset); break; case "hours": expireDate.setHours(expireDate.getHours() + offset); break; case "minutes": expireDate.setMinutes(expireDate.getMinutes() + offset); break; default: alert("Invalid periodType parameter for writePersistentCookie()"); break; }
    document.cookie = escape(CookieName) + "=" + escape(CookieValue) + "; expires=" + expireDate.toGMTString() + "; path=/";
}
function deleteCookie(cookieName) { if (getCookieValue(cookieName)) writePersistentCookie(cookieName, "Pending delete", "years", -1); return true; }