var pgLoaded = false;
var PgScroller = true;
var gobjHolder;
var wndo = new Array();	
function initScrLyr(localwn, localhold) {

	if (PgScroller){
		pgLoaded=true;	
		if (arguments.length > 0) {
			wndo[0] = new dynObj(localwn);
			gobjHolder = localhold;
		}
		else {
			wndo[0] = new dynObj('wn');
			gobjHolder = "hold";
		}
		loadScrLyr(0,'lyr1');	

		if (navigator.userAgent.indexOf("Gecko")>-1) {
			for (var i=0; i<wndo.length; i++) {
					if (wndo[i].el.parentNode.id.indexOf(gobjHolder)!=-1) {
						var holderId = wndo[i].el.parentNode.id;
						wndo[i].holder = document.getElementById(holderId);
						var scrWn = wndo[i].holder.removeChild(wndo[i].el);
						document.body.appendChild(wndo[i].el);
						wndo[i].css.zIndex = 1000;
						var y = wndo[i].holder.offsetTop;
						var x = wndo[i].holder.offsetLeft;
						wndo[i].shiftTo(x,y);
					}
  			}
		}
	}
}

function rePosGecko() {
  for (var i=0; i<wndo.length; i++) {
    var y = wndo[i].holder.offsetTop;
		var x = wndo[i].holder.offsetLeft;
		wndo[i].shiftTo(x,y);
  }
}

var step=0

function rotoPhoto(){
		
	step = step+1
	
	if (!document.images) {
		return;
	}
		
	if (document.all) {
		if (step > 4){
			document.images['rollimage'+(step-4)].filters.blendTrans.apply();
		} else {
			document.images['rollimage'+step].filters.blendTrans.apply();
		}
	}
			
	if (step > 4){
		document.images['rollimage'+(step-4)].src=eval("rollimage"+step+".src");
	} else {
		document.images['rollimage'+step].src=eval("rollimage"+step+".src");
	}
	
	if (document.all) {
		if (step > 4) {
			document.images['rollimage'+(step-4)].filters.blendTrans.play();
		} else {
			document.images['rollimage'+step].filters.blendTrans.play();
		}
	}
	
	if (step == 8) {
		step = 0;
		setTimeout("rotoPhoto()",1400);
	} else {
		setTimeout("rotoPhoto()",700);
	}
}



function isValidEmail(emailStr) {
	
	emailStr = emailStr;

	var checkTLD=1;
	var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum|COM|NET|ORG|EDU|INT|MIL|GOV|ARPA|BIZ|AERO|NAME|COOP|INFO|PRO|MUSEUM)$/;
	var emailPat=/^(.+)@(.+)$/;
	var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
	var validChars="\[^\\s" + specialChars + "\]";
	var quotedUser="(\"[^\"]*\")";
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var atom=validChars + '+';
	var word="(" + atom + "|" + quotedUser + ")";
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
	var matchArray=emailStr.match(emailPat);
	if (matchArray==null) {
        gErrorLog = "Please enter a valid email address. (check @ and .'s)."
		return false;
	}
	
	var user=matchArray[1];
	var domain=matchArray[2];
	
	for (i=0; i<user.length; i++) {
		if (user.charCodeAt(i)>127) {
        	gErrorLog = "Please enter a valid email address."
			return false;
		}
	}
	
	for (i=0; i<domain.length; i++) {
		if (domain.charCodeAt(i)>127) {
        	gErrorLog = "Please enter a valid email address."
		return false;
		}
	}
	
	if (user.match(userPat)==null) {
        	gErrorLog = "Please enter a valid email address."
		return false;
	}
	
	var IPArray=domain.match(ipDomainPat);
	
	if (IPArray!=null) {
		for (var i=1;i<=4;i++) {
			if (IPArray[i]>255) {
        		gErrorLog = "Please enter a valid email address."
				return false;
	   		}
		}
		return true;
	}
	
	var atomPat=new RegExp("^" + atom + "$");
	var domArr=domain.split(".");
	var len=domArr.length;
	
	if (domArr[0].length < 1) {
       	gErrorLog = "Please enter a valid email address."
		return false;
	}
	
	for (i=0;i<len;i++) {
		if (domArr[i].search(atomPat)==-1) {
        	gErrorLog = "Please enter a valid email address."
			return false;
		}
	}
	
	if (checkTLD && domArr[domArr.length-1].length!=2 && 
		domArr[domArr.length-1].search(knownDomsPat)==-1) {
        	gErrorLog = "Please enter a valid email address. The address must end in a well-known domain or two letter country."
		return false;
	}
	
	if (len<2) {
        gErrorLog = "Please enter a valid email address."
		return false;
	}
	
	return true;
}

	var boxheight=200;
	var boxwidth=148;
	var boxcolor="";
	var speed=100;
	var pixelstep=1;
	var godown=false;
	
	var outer,inner,elementheight,ref,refX,refY;
	var w3c=(document.getElementById)?true:false;
	var ns4=(document.layers)?true:false;
	var ie4=(document.all && !w3c)?true:false;
	var ie5=(document.all && w3c)?true:false;
	var ns6=(w3c && navigator.appName.indexOf("Netscape")>=0)?true:false;
	var txt='';
	
	function getElHeight(el){
		if(ns4)return (el.document.height)? el.document.height : el.clip.bottom-el.clip.top;
		else if(ie4||ie5)return (el.style.height)? el.style.height : el.clientHeight;
		else return (el.style.height)? parseInt(el.style.height):parseInt(el.offsetHeight);
	}
	
	function getPageLeft(el){
		var x;
		if(ns4)return el.pageX;
		if(ie4||w3c){
			x = 0;
			while(el.offsetParent!=null){
				x+=el.offsetLeft;
				el=el.offsetParent;
			}
			x+=el.offsetLeft;
			return x;
		}
	}
	
	function getPageTop(el){
		var y;
		if(ns4)return el.pageY;
			if(ie4||w3c){
			y=0;
			while(el.offsetParent!=null){
				y+=el.offsetTop;
				el=el.offsetParent;
			}
			y+=el.offsetTop;
			return y;
		}
	}
	
	function scrollbox(){
		if(ns4){
			inner.top+=(godown)? pixelstep: -pixelstep;
			if(godown){
				if(inner.top>boxheight)inner.top=-elementheight;
			}else{
				if(inner.top<2-elementheight)inner.top=boxheight+2;
			}
		}else{
			inner.style.top=parseInt(inner.style.top)+((godown)? pixelstep: -pixelstep)+'px';
			if(godown){
				if(parseInt(inner.style.top)>boxheight)inner.style.top=-elementheight+'px';
				}else{
					if(parseInt(inner.style.top)<2-elementheight)inner.style.top=boxheight+2+'px';
				}
			}
		}
	
	window.onresize=function(){
		if(ns4)setTimeout('history.go(0)', 400);
		else{
		outer.style.left=getPageLeft(ref)+'px';
		outer.style.top=getPageTop(ref)+'px';
		}
	}
	
	function startScroller(){
		outer=(ns4)?document.layers['outer']:(ie4)?document.all['outer']:document.getElementById('outer');
		inner=(ns4)?outer.document.layers['inner']:(ie4)?document.all['inner']:document.getElementById('inner');
		ref=(ns4)?document.layers['ref']:(ie4)?document.all['ref']:document.getElementById('ref');
		elementheight=getElHeight(inner);
		if(ns4){
			outer.moveTo(getPageLeft(ref),getPageTop(ref));
			outer.clip.width=boxwidth;
			outer.clip.height=boxheight;
			inner.top=(godown)? -elementheight : boxheight-2;
			inner.clip.width=boxwidth-4;
			inner.clip.height=elementheight;
			outer.visibility="show";
			inner.visibility="show";
		}else{
			outer.style.left=getPageLeft(ref)+'px';
			outer.style.top=getPageTop(ref)+'px';
			inner.style.top=((godown)? -elementheight : 10)+'px';
			inner.style.clip='rect(0px, '+(boxwidth-4)+'px, '+(elementheight)+'px, 0px)';
			outer.style.visibility="visible";
		}
	setInterval('scrollbox()',speed);
	}
	

	function resourcepopUp(URL) {
		eval("resource_pop" + " = window.open(URL, 'resourcepop', 'toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizable=0,width=400,height=450');");
	}

