﻿
function SetCookie (name, value, day)
{
 var argv=SetCookie.arguments;
 var argc=SetCookie.arguments.length;
 
 var expires=(argc > 2) ? argv[2] : null;
 var path=(argc > 3) ? argv[3] : null;
 path = "/";
 var domain=(argc > 4) ? argv[4] : null;
 var secure=(argc > 5) ? argv[5] : false;
 //domain = null;
 
 var currentTime = new Date();
 var oneDay=24*60*60*1000; 
 var dateThreeDaysAhead=new Date(new Date().valueOf() + parseInt(day) * oneDay);
 expires = dateThreeDaysAhead;
 if (parseInt(day) == 0 )
	expires = null;
 document.cookie=name+"="+encode(value)+((expires==null) ? "" : ("; expires="+expires.toGMTString()))+((path==null) ? "" : ("; path="+path))+((domain==null) ? "" : ("; domain="+domain))+((secure==true) ? "; secure" : "");
}

function eraseCookie(name) {
	SetCookie(name,"",-1);
}


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 encode (str) {

  var dest = "";

  var len = str.length;

  var index = 0;

  var code = null;

  for (var i = 0; i < len; i++) {

    var ch = str.charAt(i);

    if (ch == " ") code = "%20";

    else if (ch == "%") code = "%25";

    else if (ch == ",") code = "%2C";

    else if (ch == ";") code = "%3B";

    else if (ch == "\b") code = "%08";

    else if (ch == "\t") code = "%09";

    else if (ch == "\n") code = "%0A";

    else if (ch == "\f") code = "%0C";

    else if (ch == "\r") code = "%0D";

    if (code != null) {

      dest += str.substring(index,i) + code;

      index = i + 1;

      code = null;

    }

  }

  if (index < len)

    dest += str.substring(index, len);

  return dest;

}

