   function id(val){
   return document.getElementById(val);
   }
 function element(el,att){
	var ele=document.createElement(el);
	if(att)	for(var i in att){if(i!="innerHTML")	ele.setAttribute(i,att[i]);else ele.innerHTML=att[i];}
	return ele;
   }
   function msg(url,width,height){
	window.open("http://www.teflcourse.com"+url,'teflcourse.com',"width="+width+",height="+height+"");
   }
   
   function validateForm(){
   var val=validationFields;
   var validate=true;
   var errorStr="";
   var ov;
   var m;
	for(i in val){
	if(val[i]["type"]=="input"||val[i]["type"]=="select"){
    //alert(val[i]["name"]);
		if((!id(val[i]["name"]).value)||id(val[i]["name"]).value==""||id(val[i]["name"]).value==" "){
			errorStr+=val[i]["text"]+". \n";
			validate=false;
		}
		else if(val[i]["otherValidate"]){
			for(m in val[i]["otherValidate"]){
			eval("ov="+val[i]["otherValidate"][m]["funcName"]+"(id(val[i]['name']))");
				if(!ov){
					errorStr+=val[i]["otherValidate"][m]["text"]+". \n";
					validate=false;
				}
			}
		}
		}
		if(val[i]["type"]=="textarea"){
		if((!id(val[i]["name"]))||id(val[i]["name"]).value==""||id(val[i]["name"]).value==" "){
			errorStr+=val[i]["text"]+". \n";
			validate=false;
		}
		}
		if(val[i]["type"]=="checkbox"){
		if((!id(val[i]["name"]).checked)||id(val[i]["name"]).value==""||id(val[i]["name"]).value==" "){
			errorStr+=val[i]["text"]+". \n";
			validate=false;
		}
		}
	}
	if(!validate) alert(errorStr);
	else{}
	return validate;
   }
   function emailValidate(val){
		var str=val.value;	
		var at="@";
		var dot=".";
		var lat=str.indexOf(at);
		var lstr=str.length;
		var ldot=str.indexOf(dot);
		if (str.indexOf(at)==-1){
		   return false;
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   return false;
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    return false;
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    return false;
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    return false;
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    return false;
		 }
		
		 if (str.indexOf(" ")!=-1){
		    return false;
		 }

 		 return true					
	}
	
	
//-------------------------------------------------------------------------

var digits = "0123456789";
var phoneNumberDelimiters = "()- ";
var validWorldPhoneChars = phoneNumberDelimiters + "+";
var minDigitsInIPhoneNumber = 10;

function isInteger(s){   var i;
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }

    return true;
}
function trim(s){   var i;
    var returnString = "";
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if (c != " ") returnString += c;
    }
    return returnString;
}
function stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    for (i = 0; i < s.length; i++)
    {   
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function checkInternationalPhone(val){
strPhone=val.value;
var bracket=3
strPhone=trim(strPhone);
if(strPhone.indexOf("+")>1) return false;
if(strPhone.indexOf("-")!=-1)bracket=bracket+1
if(strPhone.indexOf("(")!=-1 && strPhone.indexOf("(")>bracket)return false
var brchr=strPhone.indexOf("(")
if(strPhone.indexOf("(")!=-1 && strPhone.charAt(brchr+2)!=")")return false
if(strPhone.indexOf("(")==-1 && strPhone.indexOf(")")!=-1)return false
s=stripCharsInBag(strPhone,validWorldPhoneChars);
return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}
function checkZipCode(val){
/*
DEPRECATED by tburre@soliantconsulting.com on April 20, 2010 per Steve Reilly's request.
var code=val.value;
if(!isInteger(code))return false;
return true;
*/
return true;
}
function f(){

var re= /^[0-9]{4}\-(0[1-9]|1[012])\-(0[1-9]|[12][0-9]|3[01])/;
var el= document.getElementById('00N60000001Jusp');
var M= el.value.match(re);
//var mesaj = M?  alert("date format is right" ) : alert("0");
return M? true : false;
}
//*********************************************************

 var validationFields= {
 "0":{"name":"first_name","text":"Please provide your First Name","type":"input"},
"1":{"name":"last_name","text":"Please provide your Last Name","type":"input"},
"2":{"name":"email","text":"Please provide a valid Email address","type":"input","otherValidate":{"0":{"funcName":"emailValidate","text":"Email Id need to be in a valid email format"}}},
//"28":{"name":"00N60000001KWWE","text":"Please provide a valid Emergency Email address","type":"input","otherValidate":{"0":{"funcName":"emailValidate","text":"Emergency Email Id need to be in a valid email format"}}},
"3":{"name":"phone","text":"Please provide your Phone Number","type":"input"},
"12":{"name":"00N60000001Jusp","text":"Please provide your Date of Birth","type":"input","otherValidate":{"0":{"funcName":"f","text":"Please provide birth date in yyyy-mm-dd format"}}},
//"12":{"name":"00N60000001Jusp","text":"Please provide your Date of Birth","type":"input"},
"29":{"name":"00N60000001Jusz","text":"Please provide your Place of Birth","type":"input"},
"4":{"name":"00N60000001KkrE","text":"Please select your Gender","type":"select"},
"7":{"name":"street","text":"Please provide your Street Address","type":"textarea"},
"8":{"name":"city","text":"Please provide your City Name","type":"input"},
"9":{"name":"state","text":"Please provide your State Name","type":"input"},
"10":{"name":"zip","text":"Please provide your Zip Code","type":"input","otherValidate":{"0":{"funcName":"checkZipCode","text":"Zipcode need tp be numbers only"}}},
"11":{"name":"country","text":"Please provide your Country Name","type":"input"},
//"4":{"name":"00N60000001KkrE","text":"Please select your Gender","type":"select"},
"5":{"name":"00N60000001Jut9","text":"Please provide your Emergency Name","type":"input"},
"6":{"name":"00N60000001JutE","text":"Please provide your Emergency Phone Number","type":"input"},
"28":{"name":"00N60000001KWWE","text":"Please provide a valid Emergency Email address","type":"input","otherValidate":{"0":{"funcName":"emailValidate","text":"Emergency Email Id need to be in a valid email format"}}},
//"7":{"name":"street","text":"Please provide your Street Address","type":"textarea"},
//"8":{"name":"city","text":"Please provide your City Name","type":"input"},
//"9":{"name":"state","text":"Please provide your State Name","type":"input"},
//"10":{"name":"zip","text":"Please provide your Zip Code","type":"input","otherValidate":{"0":{"funcName":"checkZipCode","text":"Zipcode need tp be numbers only"}}},
//"11":{"name":"country","text":"Please provide your Country Name","type":"input"},
//"12":{"name":"00N60000001Jusz","text":"Please provide your Place of Birth","type":"input"},
//"12":{"name":"00N60000001Jusp","text":"Please provide your Date of Birth","type":"input"},
"13":{"name":"00N60000001JoJF","text":"Please select your 1st  Program Choice","type":"select"},
"15":{"name":"00N60000001JoJl","text":"Please select your 1st  Program Location","type":"select"},
"17":{"name":"weekPlan","text":"Please select your 1st Start Date","type":"select"},
"14":{"name":"00N60000001JoJF-second","text":"Please select your 2nd Program Choice","type":"select"},
//"15":{"name":"00N60000001JoJl","text":"Please select your Program Location","type":"select"},
"16":{"name":"00N60000001JoJl-second","text":"Please select your 2nd Program Location","type":"select"},
//"17":{"name":"weekPlan","text":"Please select your Start Date","type":"select"},
"18":{"name":"weekPlan-second","text":"Please select your 2nd Start Date","type":"select"},
"19":{"name":"00N60000001JnGZ","text":"Please select your Education Status","type":"select"},
"27":{"name":"00N60000001Juts","text":"Please agree with the terms and conditions","type":"checkbox"}
};

//**************************Jquery functions *******************************
