	var expDays = 700; // number of days the cookie should last
	
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;
	}

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" : "");
	}

function DeleteCookie (name) {  
		var exp = new Date();  
		exp.setTime (exp.getTime() - 1);  
		var cval = GetCookie (name);  
		document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
	}
	
	var exp = new Date(); 
	exp.setTime(exp.getTime() + (expDays*24*60*60*1000));
	
	function getCookieVal(offset) {
		var endstr = document.cookie.indexOf (";", offset);
		if (endstr == -1)
			endstr = document.cookie.length;
		return unescape(document.cookie.substring(offset, endstr));
	}

function createNamedWindowEx(page, name, w, h, refresh){
    var xOffset, yOffset, wname, ua;
	if (page == '') 
		return;
	if (w == '') 
	 	w = 640;
	if (h == '') 
	  	h = 480;
	xOffset = getNextLoc('xpos', screen.availWidth - w); 
	yOffset = getNextLoc('ypos', screen.availHeight - h); 
	wname = name
	if (refresh == '1')
		wname = wname + '_refresh';
	remote=window.open('',wname,'width='+w+',height='+h+',screenX='+xOffset+',screenY='+yOffset+',top='+yOffset+',left='+xOffset+',scrollbars=1,toolbar=0,directories=0,status=0,menubar=0,resizable=1'); 	
	remote.location.href = page;
	if (remote.opener == null) 
		remote.opener = window; 
	remote.opener.name = "opener";
	remote.focus();   
}

function createNoScrollWindow(page, w, h){
	xOffset = 20;
	yOffset = 20;
	wname = 'remotewin';
	remote=window.open('',wname,'width='+w+',height='+h+',screenX='+xOffset+',screenY='+yOffset+',top='+yOffset+',left='+xOffset+',scrollbars=0,toolbar=0,directories=0,status=0,menubar=0,resizable=1'); 	
	remote.location.href = page;
	if (remote.opener == null) 
		remote.opener = window; 
	remote.opener.name = "opener";
	remote.focus();   
}

function createNamedWindow(page, name){
	createNamedWindowEx(page, name, 695, 500, '0');
}

function createWindow(page, w, h){
	createNamedWindowEx(page, 'remotewin', w, h, '1');
}

function closeWindow(){
	window.close();
	if (window.name.indexOf('_refresh') != -1) {
		if (opener.location.href.indexOf('#') != -1)
			// if there is a hash mark then toggle the space between the url and the hash
			if (opener.location.href.indexOf(' #') != -1)
				opener.location.href = opener.location.href.substr(0, opener.location.href.indexOf('#')-1) + opener.location.href.substr(opener.location.href.indexOf('#'));
			else if (opener.location.href.indexOf('%20#') != -1)
				opener.location.href = opener.location.href.substr(0, opener.location.href.indexOf('#')-3) + opener.location.href.substr(opener.location.href.indexOf('#'));
			else
				opener.location.href = opener.location.href.substr(0, opener.location.href.indexOf('#')) + ' ' + opener.location.href.substr(opener.location.href.indexOf('#'));
		else
		    opener.location.href = opener.location.href+' ';   				
	}	
	opener.focus();
}

function closeWindowHref(href) {
	if (window.opener) {
		opener.location.href=href;
		opener.focus();
		window.close();
	}
	return void(0);
}

function getNextLoc(cookiename, max) {
	var pos = GetCookie(cookiename);
	if (pos == null)
		pos=0;	
	pos = parseInt(pos) + 20;
	if (pos > max) 
		pos = 20;
	SetCookie(cookiename, pos);
	return pos;
}

function showCalendar(field) {
 	window.open('calpop.asp?tbm='+field,'ncal','width=220,height=250');
}