function requiredChk(frm) {
	var err = 0;
	var err_msg;
	var idx;
	var dbg_msg;
	var objSel;
	
	//Required check
	if (!frm.last_name.value && (err == 0)) {
		//Last Name
		err_msg = "Please input Last Name";
		err = 1;
		frm.last_name.focus();
	}
	if (!frm.email.value && (err == 0)) {
		//E-mail
		err_msg = "Please input E-mail";
		err = 2;
		frm.email.focus();
	}
	if (!frm.phone.value && (err == 0)) {
		//Phone
		err_msg = "Please input Phone";
		err = 3;
		frm.phone.focus();
	}
	if (!frm.company.value && (err == 0)) {
		//Company Name
		err_msg = "Please input Company Name";
		err = 4;
		frm.company.focus();
	}
	if (err == 0) {
		idx = frm.country.selectedIndex; 
		idx1 = frm.state.selectedIndex;
		if (frm.country.options[idx].value == "-") {
			if (frm.state.options[idx1].value == "-") {
				//US state
				err_msg = "Please input your state if you are in USA, or\nyour country if your reside outside USA.";
				err = 5;
				frm.state.focus();
			}
		/*	else {
				// I hope you were honest.
			} */
		}
		else {
			if (frm.state.options[idx1].value != "-") {
				//Confliction between country and US state
				err_msg = "Ambigous selection between state and country\n";
				err_msg = err_msg + "Click OK if you are in USA";
				objSel = (confirm(err_msg))? frm.country: frm.state;
				for (idx = 0; idx < objSel.length; idx++) {
					objSel.options[idx].selected = (objSel.options[idx].value == "-")? true: false;
				}
			}
		/*	else {
				// I hope you were honest.
			} */
		}
	}
	idx = frm.lead_source.selectedIndex; 
	if ((frm.lead_source.options[idx].value == "-") && (err == 0)) {
		//Lead Source
		err_msg = "Please choose a Source";
		err = 6;
		frm.lead_source.focus();
	}
	//Format check
	if (!err) {
		//Common part
		idx = frm.lead_source.selectedIndex; 
		if ((frm.lead_source.options[idx].value == "Web") && (document.getElementById("txtSourceDetail").value == "")) {
			document.getElementById("txtSourceDetail").value = frm.lead_source.options[idx].text;
		}
		if (frm.chk1.type == "checkbox") { 
			if (frm.chk1.checked) {
				frm.description.value += frm.chk1.value + "\n";
			}
		}
		if (frm.chk2.type == "checkbox") { 
			if (frm.chk2.checked) {
				frm.description.value += frm.chk2.value + "\n";
			}
		}
		if (frm.chk3.type == "checkbox") { 
			if (frm.chk3.checked) {
				frm.description.value += frm.chk3.value + "\n";
			}
		}
		if (frm.chk4.type == "checkbox") { 
			if (frm.chk4.checked) {
				frm.description.value += frm.chk4.value + "\n";
			}
		}
		if (frm.chk5.type == "checkbox") { 
			if (frm.chk5.checked) {
				frm.description.value += frm.chk5.value + "\n";
			}
		}
		if (frm.chk6.type == "checkbox") { 
			if (frm.chk6.checked) {
				frm.description.value += frm.chk6.value + "\n";
			}
		}
		//Particular part
		if (frm.name != 'ask') {
			formatChk(frm);
		}		 
		return true;
	}
	else {
		alert(err_msg);
		return false;
	}
} 
