<!--
function isEmailAddr(email)
{
  var result = false;
  var theStr = new String(email);
  var index = theStr.indexOf("@");
  if (index > 0)
  {
    var pindex = theStr.indexOf(".",index);
    if ((pindex > index+1) && (theStr.length > pindex+1))
	result = true;
  }
  return result;
}

function validRequired(formField,fieldLabel,defaultVal)
{
	var result = true;
	var errDisplay = document.getElementById("err"+formField.name);
	if (formField.value == "" || formField.value == defaultVal)
	{
		errDisplay.innerHTML = "Please enter a value for the \"" + fieldLabel +"\" field."
		//alert('Please enter a value for the "' + fieldLabel +'" field.');
		formField.focus();
		result = false;
	}
	
	return result;
}

function allDigits(str)
{
	return inValidCharSet(str,"0123456789");
}

function inValidCharSet(str,charset)
{
	var result = true;

	// Note: doesn't use regular expressions to avoid early Mac browser bugs	
	for (var i=0;i<str.length;i++)
		if (charset.indexOf(str.substr(i,1))<0)
		{
			result = false;
			break;
		}
	
	return result;
}

function validEmail(formField,fieldLabel,defaultVal,required)
{
	var result = true;
	var errDisplay = document.getElementById("err"+formField.name);
	if (required && !validRequired(formField,fieldLabel))
		result = false;

	if (result && ((formField.value.length < 3) || !isEmailAddr(formField.value)) )
	{
		errDisplay.innerHTML = "Please enter a complete email address in the form: yourname@yourdomain.com"
		formField.focus();
		result = false;
	}
   
  return result;

}

function validNum(formField,fieldLabel,defaultVal,required)
{
	var result = true;
	var errDisplay = document.getElementById("err"+formField.name);
	if (required && !validRequired(formField,fieldLabel))
		result = false;
  
 	if (result)
 	{
 		if (!allDigits(formField.value))
 		{
 			errDisplay.innerHTML = "Please enter a complete email address in the form: yourname@yourdomain.com"
			formField.focus();		
			result = false;
		}
	} 
	
	return result;
}


function validInt(formField,fieldLabel,required)
{
	var result = true;

	if (required && !validRequired(formField,fieldLabel))
		result = false;
  
 	if (result)
 	{
 		var num = parseInt(formField.value,10);
 		if (isNaN(num))
 		{
 			alert('Please enter a number for the "' + fieldLabel +'" field.');
			formField.focus();		
			result = false;
		}
	} 
	
	return result;
}


function validDate(formField,fieldLabel,required)
{
	var result = true;

	if (required && !validRequired(formField,fieldLabel))
		result = false;
  
 	if (result)
 	{
 		var elems = formField.value.split("/");
 		
 		result = (elems.length == 3); // should be three components
 		
 		if (result)
 		{
 			var month = parseInt(elems[0],10);
  			var day = parseInt(elems[1],10);
 			var year = parseInt(elems[2],10);
			result = allDigits(elems[0]) && (month > 0) && (month < 13) &&
					 allDigits(elems[1]) && (day > 0) && (day < 32) &&
					 allDigits(elems[2]) && ((elems[2].length == 2) || (elems[2].length == 4));
 		}
 		
  		if (!result)
 		{
 			alert('Please enter a date in the format MM/DD/YYYY for the "' + fieldLabel +'" field.');
			formField.focus();		
		}
	} 
	
	return result;
}

function validateForm(frm)
{
	// Customize these calls for your form

	// Start ------->
	if (!validRequired(frm.Name,"Name", "Your Name"))
		return false;

	if (!validEmail(frm.Email,"Email Address","Your Email Address",true))
		return false;

	//if (!validDate(frm.available,"Date Available",true))
	//	return false;

	if (!validNum(frm.Phone,"Phone Number",true))
		return false;
		
	if (!validRequired(frm.AddressLine1,"Address",true))
		return false;
		
	if (!validRequired(frm.City,"City",true))
		return false;
		
	if (!validRequired(frm.State,"State",true))
		return false;
	// <--------- End
	
	return true;
}

function newWin(loc, w, h) {
	if (!w) { w = 630;}
	if (!h) { h = 500;}
	window.open(loc,"images","height="+h+",width="+w+",status=yes,toolbar=no,menubar=no,location=no,resizable=yes,scrollbars=yes");
	return false;
	
}

function setActiveStyleSheet(title) {
  var i, a, main;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
      a.disabled = true;
      if(a.getAttribute("title") == title) a.disabled = false;
    }
  }
}

function getActiveStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled) return a.getAttribute("title");
  }
  return null;
}

function getPreferredStyleSheet() {
  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1
       && a.getAttribute("rel").indexOf("alt") == -1
       && a.getAttribute("title")
       ) return a.getAttribute("title");
  }
  return null;
}

function createCookie(name,value,days,path,domain,secure) {
  if (days) {
    var date = new Date();
    date.setTime(date.getTime() + (days*24*60*60*1000) );
   		expires = date.toGMTString();
  	}
   document.cookie = name + "=" + escape(value) +
    ((expires) ? "; expires=" + expires : "") +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    ((secure) ? "; secure" : "");
}

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;
}

window.onload = function(e) {
  	var cookie = readCookie("style");
  	var title = cookie ? cookie : getPreferredStyleSheet();
	setActiveStyleSheet(title);
}

window.onunload = function(e) {
  var title = getActiveStyleSheet();
  createCookie("style", title, 180, "/");
}

var cookie = readCookie("style");
var title = cookie ? cookie : getPreferredStyleSheet();
setActiveStyleSheet(title);

csize = 0;
szs = ['80%','90%','100%','110%','120%','130%','140%'];

function textSize(dir) {
	var cs = parseFloat(readCookie("txtsize"));
	if (!cs) { cs = csize; }
	if (dir=="up") {
			if (cs < szs.length-1) { 
				cs += 1;
				setSize(cs); 
			}
	} else {
			if (cs >= 1) { 
				cs -= 1;
				setSize(cs); 
			}
		}
}
function setSize(size) {
		createCookie("txtsize", size, 180, "/");
		csize = size;
		document.body.style.fontSize = szs[size];
}
function getAccessButtons(){
		html = "";	return html;
}

function adjustClass(node, debug) {

  	if (node.nodeName=="LI") {
  		node.onmouseover=function() {
  			this.className="hover";
  				
    	}
  		node.onmouseout=function() {
  			this.className=this.className.replace("hover", "");
   		}
	}
}
startList = function() {
	
		if (document.all && document.getElementById) {	
			n = document.getElementById("topnav").childNodes[0];
			
			if (n) {
			l = n.childNodes.length;
			
			for (i=0; i<l; i++) {
 				node = n.childNodes[i];
 				adjustClass(node);
 				nl = node.childNodes.length;
 				
 				for (j=0;j<nl;j++) {
 					cn = node.childNodes[j];
 					
 					if (cn.nodeName=="UL") {
 						cl = cn.childNodes.length;
 						
 						for (k=0; k<cl; k++) {
 							cnode = cn.childNodes[k];	
 							adjustClass(cnode);
 						}
 					}
 				}	
			}
		}
	}
}
window.onload=startList;



//Scroll Bar Object
function ScrollBar() {
	var content;
	var d=document;
	var mm = "mousemove";
	var omm = "onmousemove";
	var md = "mousedown";
	var omd = "onmousedown";
	var mu = "mouseup";
	var omu = "onmouseup";
	
	this.init = function() {
		
		//this.attach();
	}
	
	
	// creates the scrollbar and attaches itself to the element
	this.attach = function(obj) {
		this.content = obj;
		
	DEBUG('attach(' + obj.getAttribute('class') +')', "attaching myself to " + this.content.parentNode.getAttribute('id'));
		
		this._createScroller();
									
		if (d.addEventListener) {
			this.handler.addEventListener(md,Scroll,false);
		} else if(d.attachEvent) {
			this.handler.attachEvent(omd,Scroll);
		}	
		
	}
	
	
	var scroller = this;

	
	Scroll = function(e) {  
  		e = e || window.event;
		var t = e.target || e.srcElement;
		
		_pD(e);

		if (d.addEventListener) {
			d.addEventListener(mu, stopScroll, true);
			d.addEventListener(mm, drag, true);
		} else {
			d.attachEvent(omu, stopScroll);
			d.attachEvent(omm, drag);
		}
		
		nh = this;
		n = this.parentNode;
		
		if (!n) { n=t.parentNode; }
		
		c = n.parentNode.childNodes[1];

	}
	
	drag = function(e) {	
			e = e || window.event;
			var t = e.target || e.srcElement;
			
			_pD(e);
			
      		if (e.pageY) {
           		 py = e.pageY - n.parentNode.offsetTop;
      		}
      		else if (e.clientY) {
            	 py = e.clientY - n.parentNode.offsetTop;
      		}
			
			if (py > -1 && py < 190) {	
				n.style.top = py + 'px';
				
				c.scrollTop = Math.round((py/180) * (c.scrollHeight-180));	
				
			}
					
		}
	stopScroll = function(e) {	
				
		e = e || window.event;
		var t = e.target || e.srcElement;
		_pD(e); 
		 		
   			if (d.removeEventListener) {
   				d.removeEventListener(mm, drag, true); 
   				d.removeEventListener(mu, stopScroll, true);		
   				nh.removeEventListener(mm, drag, true); 
   				nh.removeEventListener(mu, stopScroll, true);
   			} else {
   				d.detachEvent(omm, drag);
   				d.detachEvent(omu, stopScroll); 				
   				nh.detachEvent(omm, drag); 
   				nh.detachEvent(omu, stopScroll);
   			}
	
			py = 0;
			d.onmousemove = null;
		}
	
	_pD = function(e) {
		if (e.stopPropagation) {
   			 e.stopPropagation();
  		} else {
    		e.cancelBubble = true;
		}
		
		if (e.preventDefault) {
    		e.preventDefault();
    	} else {
   			e.returnValue = false;
    		return false; 
  		}
	}
	
	
	this._createScroller = function() {
		oPar = this.content.parentNode;
		oPar.style.position = 'relative';
		oParNm = oPar.getAttribute('id');
		
		sb = document.createElement('div');
		sb.setAttribute('id', 'scroll'+oParNm);
		//sb.setAttribute('class', 'scroller');
		sb.className = 'scroller';
		
		sba = document.createElement('a');
		sba.setAttribute('href', '#');
		sba.setAttribute('id', oParNm + 'sa');
		sba.setAttribute('title', 'Drag to Scroll');
		sbat = document.createTextNode('scroll');
		sba.appendChild(sbat);
		sb.appendChild(sba);
				
		sb.style.position = 'absolute';
		sb.style.width = '9px';
		sb.style.height = '34px';
		sb.style.backgroundColor = '#ccc';
		
		sb.style.top = '0';
		sb.style.right = '0';
		
		oPar.appendChild(sb);
		
		this.handler = sba;
		this.handle = sb;
		
		
		if (!this.handle)
			return false;
			
	}

}


window.onload = function() {
	
	cb = document.getElementById("fragnews");
	cp = document.getElementById("fragpa");
	
	if (cb) {
		ob = setScrollBar(cb);
		
		if (ob)
			attachScroller(ob);
		
	}	
	
	if (cp) {
		oc = setScrollBar(cp);
	 
		if (oc)
			attachScroller(oc);
	
	}
	
}

var cT = 0;
var	cB = 190;

function setScrollBar(c) {

	
	var notWSN = /\S/;
		
	for (i=0;i<c.childNodes.length;i++){
		if ((c.childNodes[i].nodeType == 3) && (!notWSN.test(c.childNodes[i].nodeValue))) {
			 
			c.removeChild(c.childNodes[i]);
			//Easy way to make IE's DOM consistent with Gekko's
			//if this causes problems in Gekko, need to comeup with some other method
			i--;
		}
	}
	
	c = c.childNodes[1];
	
	
	if (c.className == 'fragcontent') {
		oC = c;
	}

	if(!oC || !checkForScroll(oC))
		return false;
	
	return oC;
	
}
function checkForScroll(obj) {
	
	DEBUG('checkForScroll(' + obj +')', obj.offsetHeight);
	
	if (obj.scrollHeight > cB) {
		return true;
	}
}	
function attachScroller(obj) {
	obj.scroller = new ScrollBar;
	obj.scroller.attach(obj);
}
 
function DEBUG(fn, msg) {
	debug = 0;
	
	if (debug) {
		alert(fn + ' : ' + msg);
	}



}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
--> 
 
 
