
function clearform(){
   var frm=document.forms[0];
   frm.reset();
   resetlist(frm.country_id);
}
function clearlist(lst){
   while(lst.options.length>0)lst.options[0]=null;
}
function resetlist(lst){
   var num=0,id=0;
   for(i=0;i<lst.options.length;i++)if(lst.options[i].defaultSelected){
      num=i;
	   id=lst.options[i].value;
	}
   lst.selectedIndex=num;
   loadstates(id);
   document.forms[0].firstname.focus();
}
function loadstates(cid){
    var frm=document.forms[0],nostates;
    var defstate = frm.state_val.value;
    clearlist(frm.state_id);
	 nostates=true;
    for(i=0;i<statelist.length;i++){
	   if(statelist[i][0]==cid){
		   currdiv=statelist[i][1];
	      frm.state_id.options[0]=new Option("Select your "+currdiv,0,1,1);
	      for(j=2;j<statelist[i].length;j++){
			thisopt=statelist[i][j].split("^");
			frm.state_id.options[j-1]=new Option(thisopt[1],thisopt[0]);
		  }
		  nostates=false;
		  break;
	   }
	}
   if(nostates)frm.state_id.options[0]=new Option("N/A",0,1,1);
   else for(i=1;i<frm.state_id.options.length;i++)
      if(frm.state_id.options[i].value==defstate){
          frm.state_id.selectedIndex=i;
		  break;
	      }
}

function numchecked(ctl){
  var n=0;
	for(i=0;i<ctl.length;i++)if(ctl[i].checked)n++;
	return n;
}

function trim(s){
   for(i=s.length;i>=0;i--){
      if(s.charAt(i-1)!=" ") return s.slice(0,i);
   }
   return "";
}

function formOK(frm){
	var msg="",optnum,chk,eml,bad;
	if(frm.lastname.value=="")msg+="Please provide a last name.\n";
	if(frm.firstname.value=="")msg+="Please provide a first name.\n";
	eml=trim(frm.email.value);
	if((eml!="")&&(eml.search(/.+@.+(\..+){1,4}/)<0))msg+="An email address should look something like: aaaa@bbbb.cccc\n";
	else if(eml.search(/\S\s+\S/)>=0)msg+="An email address cannot contain spaces.\n";
	else if(eml.search(/\.$/)>=0)msg+="An email address cannot end with a period.\n";
	else if(eml.search(/[:;]/)>=0){
	   bad=eml.search(/[:;]/);
		 msg+="Invalid character '"+eml.charAt(bad)+"' in your email address.\n";
	}
	if(frm.organization.value=="")msg+="Please provide an organization name.\n";
	if(frm.orgtypecode.selectedIndex<=0)msg+="Please select an organization type.\n";
	if(frm.jobtitle.value=="")msg+="Please provide a job title.\n";
	if(frm.address1.value=="")msg+="Please provide a street address.\n";
	if(frm.workcity.value=="")msg+="Please provide a city.\n";
	if(frm.state_id.options.length>1)if(frm.state_id.selectedIndex<=0)msg+="Please "+frm.state_id.options[0].text+"\n";
	if(frm.workpostal.value=="")msg+="Please provide a postal code.\n";
	if(frm.workphone.value=="")msg+="Please provide a daytime phone number.\n";
	optnum=frm.professionid.selectedIndex;
	if(optnum<=0)msg+="Please select a profession, or 'Other', from the list.\n";
	else if((frm.professionid.options[optnum].value=="99")&&(frm.otherprofessn.value==""))msg+="If your profession is 'Other', please describe it.\n";
	var ctype = frm.cecredittype.type;
	if(ctype=='select-one'){
      optnum=frm.cecredittype.selectedIndex;
      if(optnum<=0)msg+="Please indicate what kind of Continuing Education credit you prefer.\n";
      else if((frm.cecredittype.options[optnum].value=="CHES")&&(frm.ches_id.value==""))msg+="In order to receive CHES credit, Please provide your membership number.\n";
	}
	chk=false;
	for(i=0;i<frm.sph_alum.length;i++)if(frm.sph_alum[i].checked)chk=true;
	if(!chk)msg+="Please indicate whether you are a graduate of the UNC-CH School of Public Health.\n";
	if(msg=="")return true;
	else{
		alert("MISSING OR INVALID INPUT:\n"+msg+"\nPlease correct the above omission(s) and resubmit.");
		return false;
	}
}
function popup(url){
   var wid = screen.width - 200;
	 var ht  = screen.height - 200;
	 var opts = "width="+wid+",height="+ht+",scrollbars=yes,resizable=yes";
	 // alert(opts);
	 var rwin = window.open(url,"rwin",opts);
	 rwin.focus();
	 return false;
}
