//Return decoding value in Cookie value
function getCookieVal(offset) {
	endstr = document.cookie.indexOf(";", offset);
	if(endstr == -1)
		endstr = document.cookie.length;
	return unescape(document.cookie.substring(offset, endstr));
}
//Return value of Cookie including name
function GetCookie(name) {
	var arg = name + "=";
	var alen = arg.length;
	var clen = document.cookie.length;
	var i = 0;
	while(i < clen) {
		var j = i + alen;
		if(document.cookie.substring(i,j) == arg)
			return getCookieVal(j);
		i = document.cookie.indexOf(" ",i) + 1;
		
		if(i == 0) break;
	}
		
	return null;
}
//Cookie value create or update
function SetCookie(name, value) {
	var argv = SetCookie.arguments;
	var argc = SetCookie.arguments.length;
	var expires = (argc > 2)? argv[2] : null;
	var path = (argc > 3)? argv[3] : null;
	var domain = (argc > 4)? argv[4] : null;
	var secure = (argc > 5)? argv[5] : false;
	document.cookie = name + "=" + escape(value) + ((expires == null)? "" : ("; expires ="+expires.toGMTString())) + ((path == null) ? "":(";path="+path))+((domain == null)?"":(";domain="+domain)) + ((secure == true) ? "; secure":"");
}
//Cookie value delete(apply available time to now time and date)
function DeleteCookie(name) {
	var exp = new Date();
	exp.setTime(exp.getTime() - 1); 
	var cval = GetCookie(name);
	document.cookie = name + "=" + cval + "; expires =" + exp.toGMTString();
}


