
function SetCookie(name, value)
{
	var expireDate = new Date();
	expireDate.setDate(expireDate.getDate()+90);
	
	SetCookieWithExpiration(name, value, expireDate);
}

function SetSessionCookie(name, value)
{
	SetCookieWithExpiration(name, value);
}

function SetCookieWithExpiration(name, value, expires)
{
	var path = "/";
	var domain = ".marketwatch.com";
	var expiresString = (expires)?expires.toGMTString():"";

	value = unescape(value);
    document.cookie= name + "=" + encodeURI(value) +
        "; expires=" + expiresString +
        ((path) ? "; path=" + path : "") +
        ((domain) ? "; domain=" + domain : "");
}

function GetCookie(name)
{
    var dc = document.cookie;
    var prefix = name + "=";
    var begin = dc.indexOf("; " + prefix);
    if (begin == -1)
    {
		begin = dc.indexOf(prefix);
		if (begin !== 0) 
		{
			return null;
		}
    }
    else
    {
        begin += 2;
    }
    var end = document.cookie.indexOf(";", begin);
    if (end === -1)
    {
        end = dc.length;
    }
    return unescape(dc.substring(begin + prefix.length, end));
}

function getCookieValue(ckie,nme)
{
   var splitValues;
   for(var i=0; i<ckie.length; ++i) 
   {
      splitValues=ckie[i].split('=');
      if(splitValues[0]==nme)
      {
			return splitValues[1];
		}
   }
   return "";
}


function DeleteCookie(name)
{
	SetCookie(name,"");
}

function GetCookieSectionValue(cookieName, sectionName)
{
	var cookie = GetCookie(cookieName);
	var key = sectionName + "=";
	var value;
	if (cookie)
	{
		var secBegIndex = cookie.indexOf(key) + key.length;
		var secEndIndex = cookie.indexOf("&", secBegIndex);
		if (secEndIndex < 0)
		{
			secEndIndex = cookie.length;
		}
		value = cookie.substring(secBegIndex, secEndIndex);
	}
	return value;
}

function AreCookiesEnabled()
{
	var testCookie = "mktwCookieEnabledTest";
	var cookiesEnabled = false;
	
	SetCookie(testCookie, "true");
	if (GetCookie(testCookie) != null)
	{
		cookiesEnabled = true;
	}
	
	var yesterday = new Date();
	yesterday.setDate(yesterday.getDate() - 1);
	SetCookieWithExpiration(testCookie, "", yesterday)
	
	return cookiesEnabled; 
}