//
// tools.js

function inc(filename)
{
	var script = document.createElement('script'); 
	script.type = 'text/javascript'; 
	script.src = "/javascript/" + filename; 
	document.getElementsByTagName('head')[0].appendChild(script); 
}

//
// Cookie functions
//

// get cookie value
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;
}

// write a session cookie
function writeSessionCookie (cookieName, cookieValue)
{
	document.cookie = escape(cookieName) + "=" + escape(cookieValue) + "; path=/";
	return true;
}

// write a persistent cookie
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=/";
}  

// delete persistent cookie
function deleteCookie (cookieName)
{
	if (getCookieValue (cookieName))
		writePersistentCookie (cookieName, "Pending delete", "years", -1);  

	return true;     
}