<!--
function TG(a, changeTo) {
	a.style.backgroundColor = changeTo;
}
function swapImage() {
	var i,j=0,x,a=swapImage.arguments; document.sr=new Array;
	for(i=0;i<(a.length-2);i+=3)
		if ((x=findObj(a[i]))!=null){document.sr[j++]=x;
			if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function swapImgRestore() {
	var i,x,a=document.sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function preloadImages() {
var d=document; if(d.images){ if(!d.p)  d.p=new Array();
	var i,j=d.p.length,a=preloadImages.arguments; for(i=0; i<a.length; i++)
	if (a[i].indexOf("#")!=0){ d.p[j]=new Image;    d.p[j++].src=a[i];}}
}
function jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}
function findObj(n, d) {
var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
	d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
	if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
	for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=findObj(n,d.layers[i].document);
	if(!x && d.getElementById) x=d.getElementById(n);return x;
}
function trim(inputString){
	while(inputString.charAt(0)==" "){
		inputString=inputString.substring(1);
	}
	while(inputString.charAt(inputString.length-1)==" "){
		inputString=inputString.substring(0,inputString.length-1);
	}
	return inputString;
}
function YY_checkform() { //v4.71
//copyright (c)1998,2002 Yaromat.com
  var a=YY_checkform.arguments,oo=true,v='',s='',err=false,r,o,at,o1,t,i,j,ma,rx,cd,cm,cy,dte,at;
  for (i=1; i<a.length;i=i+4){
	if (a[i+1].charAt(0)=='#'){r=true; a[i+1]=a[i+1].substring(1);}else{r=false}
	o=findObj(a[i].replace(/\[\d+\]/ig,""));
	o1=findObj(a[i+1].replace(/\[\d+\]/ig,""));
	v=o.value;t=a[i+2];
	if (o.type=='text'||o.type=='password'||o.type=='hidden'){
		v=trim(v);o.value=v;
	  if (r&&v.length==0){err=true}
	  if (v.length>0)
	  if (t==1){ //fromto
		ma=a[i+1].split('_');if(isNaN(v)||v<ma[0]/1||v > ma[1]/1){err=true}
	  } else if (t==2){
		rx=new RegExp("^[\\w\.=-]+@[\\w\\.-]+\\.[a-zA-Z]{2,4}$");if(!rx.test(v))err=true;
	  } else if (t==3){ // date
		ma=a[i+1].split("#");at=v.match(ma[0]);
		if(at){
		  cd=(at[ma[1]])?at[ma[1]]:1;cm=at[ma[2]]-1;cy=at[ma[3]];
		  dte=new Date(cy,cm,cd);
		  if(dte.getFullYear()!=cy||dte.getDate()!=cd||dte.getMonth()!=cm){err=true};
		}else{err=true}
	  } else if (t==4){ // time
		ma=a[i+1].split("#");at=v.match(ma[0]);if(!at){err=true}
	  } else if (t==5){ // check this 2
			if(o1.length)o1=o1[a[i+1].replace(/(.*\[)|(\].*)/ig,"")];
			if(!o1.checked){err=true}
	  } else if (t==6){ // the same
			if(v!=findObj(a[i+1]).value){err=true}
	  }
	} else
	if (!o.type&&o.length>0&&o[0].type=='radio'){
		  at = a[i].match(/(.*)\[(\d+)\].*/i);
		  o2=(o.length>1)?o[at[2]]:o;
	  if (t==1&&o2&&o2.checked&&o1&&o1.value.length/1==0){err=true}
	  if (t==2){
		oo=false;
		for(j=0;j<o.length;j++){oo=oo||o[j].checked}
		if(!oo){s+='* '+a[i+3]+'\n'}
	  }
	} else if (o.type=='checkbox'){
	  if((t==1&&o.checked==false)||(t==2&&o.checked&&o1&&o1.value.length/1==0)){err=true}
	} else if (o.type=='select-one'||o.type=='select-multiple'){
	  if(t==1&&o.selectedIndex/1==0){err=true}
	}else if (o.type=='textarea'){
	  if(v.length<a[i+1]){err=true}
	}
	if (err){s+='* '+a[i+3]+'\n'; err=false}
  }
  if (s!=''){alert('The required information is incomplete or contains errors:\n\n'+s)}
  document.returnValue = (s=='');
}

function buildStates(x) {
var state = document.forms[0].state;
	if (x == "USA") {
		// statelabel.innerhtml = "State"
		state.options.length = 0;
		state.options[0] = new Option("Select your state","");
		state.options[1] = new Option("Alabama","AL");
		state.options[2] = new Option("Alaska","AK");
		state.options[3] = new Option("Arizona","AZ");
		state.options[4] = new Option("Arkansas","AR");
		state.options[5] = new Option("California","CA");
		state.options[6] = new Option("Colorado","CO");
		state.options[7] = new Option("Connecticut","CT");
		state.options[8] = new Option("Delaware","DE");
		state.options[9] = new Option("District of Columbia","DC");
		state.options[10] = new Option("Florida","FL");
		state.options[11] = new Option("Georgia","GA");
		state.options[12] = new Option("Hawaii","HI");
		state.options[13] = new Option("Idaho","ID");
		state.options[14] = new Option("Illinois","IL");
		state.options[15] = new Option("Indiana","IN");
		state.options[16] = new Option("Iowa","IA");
		state.options[17] = new Option("Kansas","KS");
		state.options[18] = new Option("Kentucky","KY");
		state.options[19] = new Option("Louisiana","LA");
		state.options[20] = new Option("Maine","ME");
		state.options[21] = new Option("Maryland","MD");
		state.options[22] = new Option("Massachusetts","MA");
		state.options[23] = new Option("Michigan","MI");
		state.options[24] = new Option("Minnesota","MN");
		state.options[25] = new Option("Mississippi","MS");
		state.options[26] = new Option("Missouri","MO");
		state.options[27] = new Option("Montana","MT");
		state.options[28] = new Option("Nebraska","NE");
		state.options[29] = new Option("Nevada","NV");
		state.options[30] = new Option("New Hampshire","NH");
		state.options[31] = new Option("New Jersey","NJ");
		state.options[32] = new Option("New Mexico","NM");
		state.options[33] = new Option("New York","NY");
		state.options[34] = new Option("North Carolina","NC");
		state.options[35] = new Option("North Dakota","ND");
		state.options[36] = new Option("Ohio","OH");
		state.options[37] = new Option("Oklahoma","OK");
		state.options[38] = new Option("Oregon","OR");
		state.options[39] = new Option("Pennsylvania","PA");
		state.options[40] = new Option("Rhode Island","RI");
		state.options[41] = new Option("South Carolina","SC");
		state.options[42] = new Option("South Dakota","SD");
		state.options[43] = new Option("Tennessee","TN");
		state.options[44] = new Option("Texas","TX");
		state.options[45] = new Option("Utah","UT");
		state.options[46] = new Option("Vermont","VT");
		state.options[47] = new Option("Virginia","VA");
		state.options[48] = new Option("Washington","WA");
		state.options[49] = new Option("West Virginia","WV");
		state.options[50] = new Option("Wisconsin","WI");
		state.options[51] = new Option("Wyoming","WY");

		if (!document.forms[0].country[0].checked){
			document.forms[0].country[0].checked=true;
		}
		return;
	}

	if (x == "CND") {
		// statelabel.outerhtml = 'Province'
		state.options.length = 0;
		state.options[0] = new Option("Select your province","");
		state.options[1] = new Option("Alberta","AB");
		state.options[2] = new Option("British Columbia","BC");
		state.options[3] = new Option("Manitoba","MB");
		state.options[4] = new Option("New Brunswick","NB");
		state.options[5] = new Option("Newfoundland and Labrador","NL");
		state.options[6] = new Option("Nova Scotia","NS");
		state.options[7] = new Option("Northwest Territories","NT");
		state.options[8] = new Option("Nunavut","NU");
		state.options[9] = new Option("Ontario","ON");
		state.options[10] = new Option("Prince Edward Island","PE");
		state.options[11] = new Option("Quebec","QC");
		state.options[12] = new Option("Saskatchewan","SK");
		state.options[13] = new Option("Yukon Territory","YT");

		if (!document.forms[0].country[1].checked){
			document.forms[0].country[1].checked=true;
		}
		return;
	}
	if (x == "UK") {
		state.options.length = 0;
		state.options[0] = new Option("Select UK","");
		state.options[1] = new Option("UK","UK");
		if (!document.forms[0].country[2].checked){
			document.forms[0].country[2].checked=true;
		}
// 		document.forms[0].state.selectedIndex = 1;
// 		if (fe = document.forms[0].fee)
// 			if (fe.value == 165) fe.value = 87;
// 		return;
	}
	if (!x || x=="reset"){
		state.options.length = 0
		state.options[0] = new Option("Choose a country first","")
	}
}

function selectState(x){
	for (i=0;i<document.forms[0].state.options.length ;i++ ){
		if(x == document.forms[0].state.options[i].value) {
			document.forms[0].state.selectedIndex = i;
			return;
		}
	}
}

// [dFilter] - A Numerical Input Mask for JavaScript
// Written By Dwayne Forehand - March 27th, 2003
// Please reuse & redistribute while keeping this notice.

var dFilterStep

function dFilterStrip (dFilterTemp, dFilterMask) {
	dFilterMask = replace(dFilterMask,'#','');
	for (dFilterStep = 0; dFilterStep < dFilterMask.length++; dFilterStep++) {
		dFilterTemp = replace(dFilterTemp,dFilterMask.substring(dFilterStep,dFilterStep+1),'');
	}
	return dFilterTemp;
}

function dFilterMax (dFilterMask) {
	dFilterTemp = dFilterMask;
	for (dFilterStep = 0; dFilterStep < (dFilterMask.length+1); dFilterStep++) {
		if (dFilterMask.charAt(dFilterStep)!='#') {
			dFilterTemp = replace(dFilterTemp,dFilterMask.charAt(dFilterStep),'');
		}
	}
	return dFilterTemp.length;
}

function dFilter (key, textbox, dFilterMask){
	dFilterNum = dFilterStrip(textbox.value, dFilterMask);
	if (key==9 || key==13){
		return true;
	}
	else if(key==46){
		dFilterNum = dFilterStrip('', dFilterMask);
	}
	else if (key==8&&dFilterNum.length!=0) {
		dFilterNum = dFilterNum.substring(0,dFilterNum.length-1);
	}
	else if ( dFilterNum.length<dFilterMax(dFilterMask) ){
		if (key>47&&key<58){
			dFilterNum=dFilterNum+String.fromCharCode(key);
		}
		else if (key>95&&key<106){
			dFilterNum=dFilterNum+String.fromCharCode(key-48);
		}
	}

	var dFilterFinal='';
	for (dFilterStep = 0; dFilterStep < dFilterMask.length; dFilterStep++){
		if (dFilterMask.charAt(dFilterStep)=='#'){
			if (dFilterNum.length!=0){
				dFilterFinal = dFilterFinal + dFilterNum.charAt(0);
				dFilterNum = dFilterNum.substring(1,dFilterNum.length);
			} else {
				dFilterFinal = dFilterFinal + "";
			}
		}
		else if (dFilterMask.charAt(dFilterStep)!='#') {
		//	if (dFilterNum.length!=0)
				dFilterFinal = dFilterFinal + dFilterMask.charAt(dFilterStep);
		}
// dFilterTemp = replace(dFilterTemp,dFilterMask.substring(dFilterStep,dFilterStep+1),'');
	}
	textbox.value = dFilterFinal;
	return false;
}

function replace(fullString,text,by) {
//  Replaces text with by in string
	var strLength = fullString.length, txtLength = text.length;
	if ((strLength == 0) || (txtLength == 0)) return fullString;

	var i = fullString.indexOf(text);
	if ((!i) && (text != fullString.substring(0,txtLength))) return fullString;
	if (i == -1) return fullString;

	var newstr = fullString.substring(0,i) + by;
	if (i+txtLength < strLength)
		newstr += replace(fullString.substring(i+txtLength,strLength),text,by);
	return newstr;
}

function highlight(checkbox) {
	if (document.getElementById) {
// 		var tr = eval("document.getElementById(checkbox.value)");
		var tr = document.getElementById(checkbox.value);
	} else {
		return;
	}
  if (checkbox.checked) {
		addClassName(tr, 'highlight', 1);
  } else {
		removeClassName(tr, 'highlight');
  }
}

function checkedAll (id, checked) {
	var el = document.getElementById(id);
	for (var i = 0; i < el.elements.length; i++){
		el.elements[i].checked = checked;
			if(el.elements[i].id)
				highlight(el.elements[i]);
	}
}
function hili(radiobox) {
	var dcn = document.getElementsByName(radiobox.name);
	for (i=0;i<dcn.length;i++) {
		highlight(dcn[i]);
	}
}
function clrall(nm) {
	var dcn = document.getElementsByName(nm);
	for (j=0;j<dcn.length;j++) {
		dcn[j].checked = false;
		hili(dcn[j]);
	}
}
//http://www.robertnyman.com/2005/11/07/the-ultimate-getelementsbyclassname/
function getElementsByClassName(oElm, strTagName, strClassName){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	strClassName = strClassName.replace(/\-/g, "\\-");
	var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
	var oElement;
	for(var i=0; i<arrElements.length; i++){
		oElement = arrElements[i];
		if(oRegExp.test(oElement.className)){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements);
}

//http://www.bigbold.com/snippets/posts/show/2630
function addClassName(objElement, strClass, blnMayAlreadyExist){
   if ( objElement.className ){
      var arrList = objElement.className.split(' ');
      if ( blnMayAlreadyExist ){
         var strClassUpper = strClass.toUpperCase();
         for ( var i = 0; i < arrList.length; i++ ){
            if ( arrList[i].toUpperCase() == strClassUpper ){
               arrList.splice(i, 1);
               i--;
            }
         }
      }
      arrList[arrList.length] = strClass;
      objElement.className = arrList.join(' ');
   }
   else{
      objElement.className = strClass;
   }
}

//http://www.bigbold.com/snippets/posts/show/2630
function removeClassName(objElement, strClass){
   if ( objElement.className ){
      var arrList = objElement.className.split(' ');
      var strClassUpper = strClass.toUpperCase();
      for ( var i = 0; i < arrList.length; i++ ){
         if ( arrList[i].toUpperCase() == strClassUpper ){
            arrList.splice(i, 1);
            i--;
         }
      }
      objElement.className = arrList.join(' ');
   }
}

//http://www.bigbold.com/snippets/posts/show/2630
function HasClassName(objElement, strClass){
   if ( objElement.className ){
      var arrList = objElement.className.split(' ');
      var strClassUpper = strClass.toUpperCase();
      for ( var i = 0; i < arrList.length; i++ ) {
         if ( arrList[i].toUpperCase() == strClassUpper ) {
            return true;
         }
      }
	 }
   return false;
}

//http://ejohn.org/projects/flexible-javascript-events/
function addEvent( obj, type, fn ) {
  if ( obj.attachEvent ) {
    obj["e"+type+fn] = fn;
    obj[type+fn] = function() { obj["e"+type+fn]( window.event ) };
    obj.attachEvent( "on"+type, obj[type+fn] );
  }
  else{
    obj.addEventListener( type, fn, false );
  }
}

//http://ejohn.org/projects/flexible-javascript-events/
function removeEvent( obj, type, fn ) {
  if ( obj.detachEvent ) {
    obj.detachEvent( 'on'+type, obj[type+fn] );
    obj[type+fn] = null;
  } else {
    obj.removeEventListener( type, fn, false );
	}
}
//http://www.webreference.com/programming/javascript/onloads/
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}

function saveSelections(frm,duration) {
	// Expire cookie in 5 minutes
	var today = new Date();
	var exp   = new Date(today.getTime()+duration*60*1000);
	var cookieName = frm.name;
	var n = document.getElementsByName('ci');
	for (x=0;x<n.length;x++){
		if (n[x].checked){
			var string = "formname=" + cookieName + "|" + n[x].id;
		}
	}
	setCookie(cookieName, string, exp);
}

function loadSelections(frm) {
	var gtck = getCookie(frm.name);
	if (gtck) {
		var cvalue = gtck.split("\|");
		if (cvalue.length > 1){
			chk = document.getElementById(cvalue[1]);
			chk.checked = true;
			hili(chk);
		}
	}
}

function setCookie(name, value, expires, path, domain, secure) {
// 	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) ? "; expires=" + expires.toGMTString() : "") +
	((path) ? "; path=" + path : "") +
	((domain) ? "; domain=" + domain : "") +
	((secure) ? "; secure" : "");
}

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