function TICM_check(f){
var states = f.elements[4];
var state;
var canstates = ['AB','BC','MB','NB','NF','NS','NT','ON','PE','QC','SK','YT']

	var t, msg, good;
   	state = states.options[states.selectedIndex].value;  
	msg = '';
	if ((f.elements[0].value.search(/[A-Za-z]\s[A-Za-z]/) == -1) || (f.elements[0].value == null) || (f.elements[0].value == '') || isblank(f.elements[0].value)) {msg += 'Please enter your Name.\n';}
	if ((f.elements[1].value == null) || (f.elements[1].value == '') || isblank(f.elements[1].value)) {msg += 'Please enter your Address.\n';}	
	if ((f.elements[3].value == null) || (f.elements[3].value == '') || isblank(f.elements[3].value)) {msg += 'Please enter your City.\n';}	
	if (state=='')msg+='Please enter your State/Province.\n'
    
	msg += checkAtLeastOne(f);

	if(/text/i.test(f.elements[6].type)){
	  good=1; t=f.elements[6].value;
	  if (t==null || t=='' || isblank(t) ) good=0;
	  else good=(t.search(/^(\w|-)+(\.(\w|-)+)*@((\w|-)+\.)+[a-zA-Z]{2,3}$/)==-1)?0:1;

	  if(!good){msg+='Your E-mail address is incorrect.\n\n';}
    	}

	good=1; t = f.elements[5].value;
	if (t==null || t=='' || isblank(t) || t.length<5 || t.length>6 )good=0;
	else{if (state!=''){
			if (t.length==5 && (t.search(/^\d{5}$/) != -1)){ 
				for (d = 0; d<canstates.length;d++){
					if (state==canstates[d])good=0;
				}
			}else good=0;
			if (t.length==6 && t.search(/^[a-zA-Z]\w{5}$/)!=-1){
				good=0;
				for (d = 0; d<canstates.length;d++){
					if (state == canstates[d])good=1;
				}
			}
		}
	}
   
	if (!good){msg+='Zip/Postal code is blank or incorrect,\nor it doesn\'t match the State/Province you selected.\n';}
 	
	if (msg.length) {
		alert ('The form was not submitted because of the following error(s):\n\n' + msg +
			'\n\nPlease correct these error(s) and resubmit your form.\n\nThank you.');
		return false;
	}
	return true;
}

function isblank(s){
	for(var i = 0; i < s.length; i++){
		var c = s.charAt(i);
		if ((c != ' ') && (c != '\n') && (c != '\t')) return false;
	}
return true;
}

function TICM_check_email(f){
	var t, msg, good;
	msg = '';

	msg += checkAtLeastOne(f);

    good=1; t=f.elements[6].value;
	if (t==null || t=='' || isblank(t)) good=0;
	else good=(t.search(/^(\w|-)+(\.(\w|-)+)*@((\w|-)+\.)+[a-zA-Z]{2,3}$/)==-1)?0:1;
    
	if(!good){msg+='Your E-mail address is incorrect.\n\n';}
    
	if (msg.length) {
		alert ('The form was not submitted because of the following error(s):\n\n' + msg +
			'\n\nPlease correct these error(s) and resubmit your form.\n\nThank you.');
		return false;
	}
	return true;
}



function M_readString(delineators){
	if(delineators&&delineators.constructor==Array){
		var theArray=this.split(delineators[0]);
		if(delineators.length>1)
			for(var i=0;i<theArray.length;i++)
				theArray[i]=theArray[i]._read(delineators.slice(1));
		return theArray;
	}
	return false;
}
String.prototype._read=M_readString;


function preFillForm(){
  var queryString = window.location.search.slice(1)._read(["&","="]);

  //read and assign querystring values
  for (var i = 0; i < queryString.length; i++){
    if(queryString[i][0] == "email_ad") {
       if(document.forms["privacyon"]) document.forms["privacyon"].elements[6].value = queryString[i][1];
    }
  }
}

window.onload = preFillForm;



function emailRequired(f){
 var em = f.elements[0].value;
 var msg = "";

 msg += checkAtLeastOne(f);

 var good = (!/(\+.*){4}/.test(em) && /^[\w\-\+]+(\.[\w\-\+]+)*@([\w\-]+\.)+[a-zA-Z]{2,4}$/.test(em));
 if(!good){msg+='Your E-mail address is incorrect.\n\n';}
    
 if (msg.length) {
		alert ('The form was not submitted because of the following error(s):\n\n' + msg +
			'\n\nPlease correct these error(s) and resubmit your form.\n\nThank you.');
		return false;
 }
 return true;

}


function checkAtLeastOne(f){
	var el;
	var hasCheckBoxes = false;		
	for(var c = 0; c<f.elements.length; c++){
		el = f.elements[c];
		if(el.type.toLowerCase() == "checkbox"){
			hasCheckBoxes = true;
			if(el.checked) return "";
		}
	}
	if(hasCheckBoxes)return "Please check at least one checkbox.\n\n";
	else return "";
}

