//Code for FPA Updater form
var submitnib = 'phil-group9'
var ebase = 'lists.ufl.edu'
var submitto = submitnib+'@'+ebase;

function validate() {
	 //1
	 //Last Name,First Name,a form of address,Email
	 //lastname,firstname,middlename,formofaddress,email
	 //required: last, first, email
	 //2
	 //affilorg,affildept,status,depturl,personurl
	 //required: status
	 //3
	 //email2,addr1,addr2,addr3,city,region,postal,country,addrkind
	 //required: addr1,city,region,postal,country
	 //4
	 //type,since,referee,aor,useAOR
	 //required: type, since, if referee, then either aor or useAOR
	 //5
	 //aos,hihgdegree,highedu,highflorida
	 //required: if useAOR then aos
	 //6
	 //affilorg,affildept,status,depturl,personurl
	 //required: if status not Unaffil, then affilorg
	 var textstringArray = new Array()
	 textstringArray = [
	  "lastname,Last Name,1",
	  "firstname,First Name,1",
	  "formofaddress,form of address,1",
	  "email,Email,1",
	  "addr1,Street Address,3",
	  "city,City,3",
	  "region,State/Region,3",
	  "postal,Zip/Postal Code,3"
	 ]
	 var selectstringArray = new Array()
	 selectstringArray = [
	  "type,Membership Type,4",
	  "status,Affiliated Status,2"
	 ]
	
	 var flag = true;
	//do text empties
		for (var i=0;i<textstringArray.length;i++) {
			var sting = textstringArray[i].split(",")
			flag = (flag && testtext(sting[0],sting[1],sting[2]))
		}
	//do non-selects
		for (var i=0;i<selectstringArray.length;i++) {
			var sting = selectstringArray[i].split(",")
			flag = (flag && testselect(sting[0],sting[1],sting[2]))
		}
	//do conditionals
	 //4
	 //type,endorsedby
	 //required: if type is Full, then endoresedby not empty
	 if (flag && getselect("type")=="Full" && gettext("endorsedby")=="") {
	 	alert("You are applying for Full membership, but have not completed the Endorsement part of Section 4. This is required.")
		flag = false;
	 }
	 //5
	 //type,since,referee,aor,useAOR
	 //required: if referee, then either aor or useAOR
	 if (flag && getchecked("referee") && gettext("endorsedby")=="") {
	 	alert("You have kindly expressed your willingness to sometimes referee FPA submissions, but have not completed the part of Section 4 on Refereeing. Please do.")
		flag = false;
	 }
	 //6
	 //affilorg,affildept,status,depturl,personurl
	 //required: if status not Unaffiliated, then affilorg
	 if (flag && gettext("affilorg")=="" && getselect("status")!=="Unaffiliated") {
	 	alert("A status of '"+getselect("status")+"' requires an Institutional Affiliation in Section 2.")
		flag = false;
	 }
	 
	 //7 - complete address (if any)
	 //email2,addr1,addr2,addr3,city,region,postal,country,addrkind
	 //required: addr1,city,region,postal,country
	 if (flag && (gettext("addr1")!=="" | gettext("city")!=="" | gettext("postal")!=="") && (gettext("addr1")=="" | gettext("city")=="" | gettext("region")==""| gettext("postal")=="")) {
	 	alert("The postal address given in Section 3 is incomplete.")
		flag = false;
	 }
	 
	var fromname = document.getElementById('firstname').value + ' ' + document.getElementById('lastname').value
	var fromemail = document.getElementById('email').value
	document.getElementById('from-name').value = fromname
	document.getElementById('from-email').value = fromemail
	if (gettext('usermessage')=='test') {
		alert("test form is:"+flag)
		return false
	} else {
		return flag
	}
}
