// function to reset dynamic aspects of form if page is reloaded or form is cleared
function resetForm() {
document.feedback.subject.value='';
document.feedback.recipient.selectedIndex=0;
document.feedback.Reply[0].checked=false;
document.feedback.Reply[1].checked=false;
toggleDisplay('PersonalInformation','none');
toggleDisplay('MailingAddressMessage','none');
toggleDisplay('NameEmailMessage','none');
}

// function to ensure user can't disable personal information displays if message to the minister
function checkMinister() {
	if (document.feedback.subject.value=='Message to the Minister') {
		alert("All messages to the Minister require a reply.  If you do not want to provide personal information, please select another subject from the drop-down box");
		document.feedback.Reply[0].checked=true;
		toggleDisplay('PersonalInformation','inline');
		toggleDisplay('NameEmailMessage','inline');
		toggleDisplay('MailingAddressMessage','inline');
	} else {
	toggleDisplay('PersonalInformation','none');
	toggleDisplay('NameEmailMessage','none');
	toggleDisplay('MailingAddressMessage','none');
	}

}
// global function to show/hide dependent elements
function toggleDisplay(id,state) {
	document.getElementById(id).style.display = state;
}

// function to customize email subject line based on drop-down box selection
// required due to limitations of Formmail 
function createSubject(element) {
var elementID = element.selectedIndex;
	switch (elementID)  {
	   case 0: {document.feedback.subject.value='';break }
	   case 1: {document.feedback.subject.value='Message to the Minister'; break }
	   case 2: {document.feedback.subject.value='Conservation Officer'; break }
	   case 3: {document.feedback.subject.value='Fishing'; break }
	   case 4: {document.feedback.subject.value='Hunting'; break }
	   case 5: {document.feedback.subject.value='Ontario Parks'; break }
	   case 6: {document.feedback.subject.value='Outdoors Card'; break }
	   case 7: {document.feedback.subject.value='Lands and Waters'; break }
	   case 8: {document.feedback.subject.value='Other MNR Programs'; break }
	   case 9: {document.feedback.subject.value='MNR Store'; break }
	   case 10: {document.feedback.subject.value='MNR Website (technical)'; break }
/*       default: {document.feedback.subject.value='MNR Website Feedback' ; break }*/
	 }
	// displays personal information fields if message is to minister
	if (document.feedback.subject.value=='Message to the Minister') {
		document.feedback.Reply[0].checked=true;
		toggleDisplay('PersonalInformation','inline');
		toggleDisplay('NameEmailMessage','inline');
		toggleDisplay('MailingAddressMessage','inline');
	} else {
		toggleDisplay('MailingAddressMessage','none');
	}
}

// form validation function
function validate(form) {

if (form.recipient.selectedIndex == 0)
  { alert("Please indicate what your message is about");
  form.recipient.focus(); 
  return false; 
 }

if (form.Message.value == "")
  { alert("Please provide a message, question or comment");
  form.Message.focus(); 
  return false; 
 }
 
if (form.Reply[0].checked==false&&form.Reply[1].checked==false) { 
  alert("Please indicate whether you want a reply");
  return false; 
}
// if reply is required, name and email fields are validated
if (form.Reply[0].checked==true) {
	
	if (form.Name.value == "") { 
		alert("Please provide your name");
  		form.Name.focus(); 
  		return false; 
	 }
	
	if (form.email.value == "") { 
		alert("Please provide your email address");
  		form.email.focus(); 
  		return false; 
	 } 
   
   if (form.email.value != "") {
	if (!validateEmail(form)) {
  		return false;  }
    }
	// if reply is required and message is for minister, mailing address fields are validated
   if (form.subject.value=="Message to the Minister" && (form.Street.value==""||form.City.value==""||form.Province.value==""||form.Country.value==""||form.PostalCode.value=="")) {
		alert("For messages to the Minister, you must provide your full mailing address");
  		form.Street.focus(); 
  		return false; 
		} 
}
// for debugging 
/* alert("Form is valid");
return false; */

// used to customize the generated email with these values if from an anonymouse user 
if (form.Name.value=="") {	form.Name.value="Anonymous"; }
if (form.email.value=="") { form.email.value="webmaster@mnr.gov.on.ca"; }

}
  
// function to validate email format  
function validateEmail(form) {
  var str = form.email.value;   
   if (str.indexOf('@', 0) == -1 ||  str.indexOf('.', 0) == -1) { 
   alert("\nPlease enter a valid e-mail address");
   form.email.focus(); 
   return false; 
   } else {
   return true;
	}
}
