﻿Type.registerNamespace("Communicator");
Communicator.Cookies = {    
    EXPIRE:{
        IN_1_MINUTE:(eval("new Date((new Date()).getTime() + 600000).toGMTString()")),
        IN_15_MINUTES:(eval("new Date((new Date()).getTime() + 900000).toGMTString()")),
        IN_1_HOUR:(eval("new Date((new Date()).getTime() + 3600000).toGMTString()")),
        IN_12_HOURS:(eval("new Date((new Date()).getTime() + 43200000).toGMTString()")),
        IN_24_HOURS:(eval("new Date((new Date()).getTime() + 86400000).toGMTString()")),
        IN_1_WEEK:(eval("new Date((new Date()).getTime() + 604800000).toGMTString()")),
        IN_1_MONTH:(eval("new Date((new Date()).getTime() + 2419200000).toGMTString()")),
        IN_1_YEAR:(eval("new Date((new Date()).getTime() + 29030400000).toGMTString()"))   
    },

    expirationDate:(eval("new Date((new Date()).getTime() + 600000).toGMTString()")),
    
    setCookie:function(name, value, cookieType){
       var extraParms = "";
       if(cookieType){
            for(var key in cookieType){
                extraParms += "; " + key + "=" + cookieType[key];
            }
       }
       document.cookie = name + "=" + escape(value) +"; expires=" + Communicator.Cookies.expirationDate + extraParms;
    },

    getCookie:function(name) {
	    var search = name + "=";
	    var returnvalue = false;
	    if (document.cookie.length > 0) {
		    start = document.cookie.indexOf(search)
		    if (start != -1) {
			    start += search.length;
			    end = document.cookie.indexOf(";", start);
			    if (end == -1) end = document.cookie.length;
			        returnvalue=unescape(document.cookie.substring(start, end));
		    }
	    }
	    return returnvalue;
    },      
    
    removeCookie:function(name){
	    document.cookie = name + "; expires=" + (eval("new Date((new Date()).getTime() - 600000).toGMTString()"));
    },
    
    clearCookies:function(){
        while (document.cookie.length > 0) {
            Communicator.Cookies.removeCookie(document.cookie.split("=")[0]);
        }
    }   
}