	function getVars(){
	this.fieldN =  new Array();	// Field name
	this.fieldV =  new Array();	// Field value
	this.fieldT =  new Array();	// Field type (text, editor, checkbox, radio, select, multiselect, date)
	this.fieldI =  new Array();	// Field Id
	this.fieldC =  new Array();	// Check for equal field
	this.fieldEQ = new Array();	// Check for equal supplied string match
	this.fieldNM = new Array();	// if 1 Check for field is Numeric
	this.fieldGT = new Array();	// Check for Greater than supplied string	(works for field type text and date only)	
	this.fieldLT = new Array();	// Check for Less than supplied string	(works for field type text and date only)
	this.fieldGE = new Array();	// Check for Grter thn o equal to supplied str(works for field type text & date only)
	this.fieldLE = new Array(); // Check for Less than o equal to supplied string(works for field type text & date only)
	this.fieldBT = new Array();	// Check for between 2 values	(works for field type text only)
}

function checkEmpty(formN, objvar){
	var err = "";
	var frmObj = eval("document." + formN);
	for(var i=0; i<objvar.fieldN.length; i++){
	
		if(objvar.fieldT[i] == "date"){
			var frmElm = eval("frmObj." + objvar.fieldN[i]);
			if(typeof(frmElm) == 'undefined')
				continue;
			var dateSplit = new Array();
			dateSplit = frmElm.value.split('-');
			
			var isDate = checkDate(formN, dateSplit[0], dateSplit[1], dateSplit[2]);

			if(!isDate) {
				if(!document.getElementById('errorDiv' + objvar.fieldI[i])){
					addErrorDiv(frmElm, objvar, i);
				}
				err += objvar.fieldV[i] + "\n";
			}else if(objvar.fieldEQ[i]){
				if(!compareDate(formN, 'EQ', objvar.fieldEQ[i], dateSplit[0], dateSplit[1], dateSplit[2])) {
					err += objvar.fieldV[i] + " (Invalid match)\n";
				}
			}else if(objvar.fieldGT[i]){
				if(!compareDate(formN, 'GT', objvar.fieldGT[i], dateSplit[0], dateSplit[1], dateSplit[2])) {
					err += objvar.fieldV[i] + " (Invalid match)\n";
				}
			}else if(objvar.fieldGE[i]){
				if(!compareDate(formN, 'GE', objvar.fieldGE[i], dateSplit[0], dateSplit[1], dateSplit[2])) {
					if(!document.getElementById('errorDiv' + objvar.fieldI[i])){
						addErrorDiv(frmElm, objvar, i);
					}
					err += objvar.fieldV[i] + " (Invalid match)\n";
				}else if(document.getElementById('errorDiv' + objvar.fieldI[i])) {
						removeErrorDiv(objvar, i);
				}
			}else if(objvar.fieldLT[i]){
				if(!compareDate(formN, 'LT', objvar.fieldLT[i], dateSplit[0], dateSplit[1], dateSplit[2])) {
					err += objvar.fieldV[i] + " (Invalid match)\n";
				}
			}else if(objvar.fieldLE[i]){
				if(!compareDate(formN, 'LE', objvar.fieldLE[i], dateSplit[0], dateSplit[1], dateSplit[2])) {
					if(!document.getElementById('errorDiv' + objvar.fieldI[i])){
						addErrorDiv(frmElm, objvar, i);
					}
					err += objvar.fieldV[i] + " (Invalid match)\n";
				}else if(document.getElementById('errorDiv' + objvar.fieldI[i])) {
						removeErrorDiv(objvar, i);
				}
			}else if(objvar.fieldBT[i]){
				if(!compareDate(formN, 'BT', objvar.fieldBT[i], dateSplit[0], dateSplit[1], dateSplit[2])) {
					err += objvar.fieldV[i] + " (Invalid match)\n";
				}
			}else if(document.getElementById('errorDiv' + objvar.fieldI[i])) {
				removeErrorDiv(objvar, i);
			}
		}
		if(objvar.fieldT[i] == "editor"){
			var frmName = objvar.fieldN[i] + '___Frame';
			editor_frame = document.getElementById(frmName);
			editor_source = editor_frame.contentWindow.document.getElementById('eEditorArea');
			var mContents = editor_source.contentWindow.document.body.innerHTML
			re= /<\S[^>]*>/g; 
			mContents = mContents.replace(re,""); 
			if((mContents == "") || (mContents == " ")) {
				err += objvar.fieldV[i] + "\n";
			}

		}
		if(objvar.fieldT[i] == "text"){
			
			var frmElm = eval("frmObj." + objvar.fieldN[i]);
			if(typeof(frmElm) == 'undefined')
				continue;
			if((frmElm.value == "") || (frmElm.value == " ")) {
				if(!document.getElementById('errorDiv' + objvar.fieldI[i])){
					addErrorDiv(frmElm, objvar, i);
				}

				err += objvar.fieldV[i] + "\n";
			}else if(objvar.fieldNM[i] == 1){
				var chkInt = frmElm.value;
				if(isNaN(chkInt)){
					if(!document.getElementById('errorDiv' + objvar.fieldI[i])){
						addErrorDiv(frmElm, objvar, i);
					}
					err += objvar.fieldV[i] + " (Not a Number)\n";
				
				}else if(document.getElementById('errorDiv' + objvar.fieldI[i])) {
					removeErrorDiv(objvar, i);
				}						
			}else if(objvar.fieldC[i]){
				var frmCElm = eval("frmObj." + objvar.fieldC[i]);
				if(frmElm.value != frmCElm.value){
					if(!document.getElementById('errorDiv' + objvar.fieldI[i])){
						addErrorDiv(frmElm, objvar, i);
					}
					err += objvar.fieldV[i] + " mismatch\n";
				}else if(document.getElementById('errorDiv' + objvar.fieldI[i])) {
					removeErrorDiv(objvar, i);
				}
			}else if(objvar.fieldN[i].indexOf("email") >= 0){
				if(!checkEmail(frmElm.value)) {
					if(!document.getElementById('errorDiv' + objvar.fieldI[i])){
						addErrorDiv(frmElm, objvar, i);
					}
					err += objvar.fieldV[i] + " (Invalid Email Id)\n";
				}else if(document.getElementById('errorDiv' + objvar.fieldI[i])) {
					removeErrorDiv(objvar, i);
				}
			}else if(objvar.fieldN[i].indexOf("url") >= 0){
				if(!checkUrl(frmElm.value)) {
					if(!document.getElementById('errorDiv' + objvar.fieldI[i])){
						addErrorDiv(frmElm, objvar, i);
					}
					err += objvar.fieldV[i] + " (Invalid URL)\n";
				}else if(document.getElementById('errorDiv' + objvar.fieldI[i])) {
					removeErrorDiv(objvar, i);
				}
			}else if(objvar.fieldN[i].indexOf("website") >= 0){
				if(!checkUrl(frmElm.value)) {
					if(!document.getElementById('errorDiv' + objvar.fieldI[i])){
						addErrorDiv(frmElm, objvar, i);
					}
					err += objvar.fieldV[i] + " (Invalid URL)\n";
				}else if(document.getElementById('errorDiv' + objvar.fieldI[i])) {
					removeErrorDiv(objvar, i);
				}
			}else if(objvar.fieldEQ[i]) {
				if(frmElm.value != objvar.fieldEQ[i]) {
					err += objvar.fieldV[i] + " (Invalid entry)\n";
				}
			}else if(objvar.fieldGT[i]) {
				if(parseFloat(frmElm.value) <= parseFloat(objvar.fieldGT[i])) {
				err += objvar.fieldV[i] + " (Invalid entry)\n";
				}
			}else if(objvar.fieldLT[i]) {
				if(frmElm.value >= objvar.fieldLT[i]) {
					if(!document.getElementById('errorDiv' + objvar.fieldI[i])){
						addErrorDiv(frmElm, objvar, i);
					}
					err += objvar.fieldV[i] + " (Invalid entry)\n";
				}
			}else if(objvar.fieldGE[i]) {
				if(frmElm.value < objvar.fieldGE[i]) {
					err += objvar.fieldV[i] + " (Invalid entry)\n";
				}
			}else if(objvar.fieldLE[i]) {
				if(frmElm.value > objvar.fieldLE[i]) {
					err += objvar.fieldV[i] + " (Invalid entry)\n";
				}
			}else if(objvar.fieldBT[i]) {
				var btSplit = new Array();
				btSplit = objvar.fieldBT[i].split('|');
				if(btSplit[0] > btSplit[1]) {
					var tmpSplit = btSplit[0];
					btSplit[0] = btSplit[1];
					btSplit[1] = tmpSplit;
				}
				if((frmElm.value < btSplit[0]) || (frmElm.value > btSplit[1])) {
					err += objvar.fieldV[i] + " (Invalid entry)\n";
				}
			}else if(document.getElementById('errorDiv' + objvar.fieldI[i])) {
				removeErrorDiv(objvar, i);
			}			
		}


		if(objVar.fieldT[i]=="textarea")
		{
			var frmElm = eval("frmObj." + objvar.fieldN[i]);
			if(typeof(frmElm) == 'undefined')
			continue;
			if((frmElm.value == "") || (frmElm.value == " ")) 
				{
				if(!document.getElementById('errorDiv' + objvar.fieldI[i]))
					{
					addErrorDiv(frmElm, objvar, i);
					err += objvar.fieldV[i] + "\n";
				}
				}
				else if(document.getElementById('errorDiv' + objvar.fieldI[i])) {
				removeErrorDiv(objvar, i);
			}			


		}



		if(objvar.fieldT[i] == "checkbox"){
			var frmElm = eval("frmObj." + objvar.fieldN[i]);
			if(typeof(frmElm) == 'undefined')
				continue;
			if(frmElm.checked === false) {
				if(!document.getElementById('errorDiv' + objvar.fieldI[i])){
					addErrorDiv(frmElm, objvar, i);
				}
				err += objvar.fieldV[i] + "\n";
			}else if(document.getElementById('errorDiv' + objvar.fieldI[i])) {
				removeErrorDiv(objvar, i);
			}
		}
		if((objvar.fieldT[i] == "select")||(objvar.fieldT[i] == "mselect")){
			var frmElm = eval("frmObj." + objvar.fieldN[i]);
			if(typeof(frmElm) == 'undefined')
				continue;
			var selectedI = false;
			for(var j=0; j< frmElm.length; j++) {
				if(frmElm[j].selected == true) {
					selectedI = true;
					if(objvar.fieldT[i] == "select") {
						if((frmElm.value == "") || (frmElm.value == 0)){
							selectedI = false;
						}
					}
				}
			}
			if(selectedI == false) {
				if(!document.getElementById('errorDiv' + objvar.fieldI[i])){
					addErrorDiv(frmElm, objvar, i);
				}
				err += objvar.fieldV[i] + "\n";
			}else if(document.getElementById('errorDiv' + objvar.fieldI[i])) {
				removeErrorDiv(objvar, i);
			}
		}

		if(objvar.fieldT[i] == "radio"){
			var frmElm = eval("frmObj." + objvar.fieldN[i]);
			if(typeof(frmElm) == 'undefined')
				continue;
			var checkedI = false;
			for(var j=0; j< frmElm.length; j++) {
				if(frmElm[j].checked == true) {
					checkedI = true;
				}
			}
			if(checkedI === false) {
				if(!document.getElementById('errorDiv' + objvar.fieldI[i])){
					addErrorDiv(frmElm[0], objvar, i);
				}
				err += objvar.fieldV[i] + "\n";
			}else if(document.getElementById('errorDiv' + objvar.fieldI[i])) {
				removeErrorDiv(objvar, i);
			}
		}		
	}

	if(err != "") {
		//var errShow = "Following fields are empty or not entered correctly: \n\n";
		//errShow += err;
		//alert(errShow);
		return false;
	}
	return true;
}

function checkDate(frmname, yy, mm, dd){

	if(!dd) {
		return false;
	}
	var daySplit = new Array();
	daySplit =	dd.split(' ');
	
	var day = parseInt(daySplit[0], 10);
	
	var month = parseInt(mm, 10);
	var year = parseInt(yy, 10);
	var checkLeep = year%4;
	if((checkLeep > 0) && (month == 2) && (day > 28)) {
		return false;
	}
	if((checkLeep == 0) && (month == 2) && (day > 29)) {
		return false;
	}
	if((day > 30) && ( (month == 4) || (month == 6) || (month == 9) || (month == 11))) {
		return false;
	}
	if((day > 31) || (month > 12)) {
		return false;
	}
	if(isNaN(day) || isNaN(month) || isNaN(year)) {
		return false;
	}
	return true;
}

function compareDate(frmname, cmpType, cmpStr, yy, mm, dd){
	if(cmpType == 'BT') {
		var cmpSplit = new Array();
		cmpSplit =  cmpStr.split('|');
		cmpStr = cmpSplit[0];
		cmpStrEnd = cmpSplit[1];
		dateSplitEnd =  cmpStrEnd.split(',');
		var eday = parseInt(dateSplitEnd[0], 10);
		var emonth = parseInt(dateSplitEnd[1], 10);
		var eyear = parseInt(dateSplitEnd[2], 10);

		var empStr = eyear + "," + appendZero(emonth) + "," + appendZero(eday);
		empStr = empStr.replace(/,/g, "");
	}
	var dateSplit = new Array();
	dateSplit =  cmpStr.split(',');
	var cday = parseInt(dateSplit[0], 10);
	var cmonth = parseInt(dateSplit[1], 10);
	var cyear = parseInt(dateSplit[2], 10);
	frmobj = eval("document." + frmname);

	if(!dd){
	return false;
	}
	var daySplit = new Array();
	daySplit =	dd.split(' ');
	
	var day = parseInt(daySplit[0], 10);
	var month = parseInt(mm, 10);
	var year = parseInt(yy, 10);	
	
	var cmpStr = cyear + "," + appendZero(cmonth) + "," + appendZero(cday);
	var curStr = year + "," + appendZero(month) + "," + appendZero(day);

	cmpStr = cmpStr.replace(/,/g, "");
	curStr = curStr.replace(/,/g, "");

	if(cmpType == 'EQ') {
		if(curStr != cmpStr) {
			return false;
		}
	}
	if(cmpType == 'GT') {
		if(curStr <= cmpStr) {
			return false;
		}
	}
	if(cmpType == 'LT') {
		if(curStr >= cmpStr) {
			return false;
		}
	}
	if(cmpType == 'GE') {
		if(curStr < cmpStr) {
			return false;
		}
	}
	if(cmpType == 'LE') {
		if(curStr > cmpStr) {
			return false;
		}
	}
	if(cmpType == 'BT') {
		if(cmpStr > empStr) {
			var tmpStr = cmpStr;
			cmpStr = empStr;
			empStr = tmpStr;
		}
		if((curStr < cmpStr) || (curStr > empStr)) {
			return false;
		}
	}
	return true;
}
function checkEmail(fieldValue){
	var chkAt = fieldValue.indexOf("@");
	var chkDot= fieldValue.indexOf(".");
	var chkHack= fieldValue.indexOf("@.");
	var chkHackA= fieldValue.indexOf(".@");

	if((chkAt >= 0) && (chkDot >= 0) && (chkHack == -1) && (chkHackA == -1) ) {
		return true;
	}
	return false;
}

function checkUrl(fieldValue){

	var chkAt = fieldValue.indexOf("@");
	var chkDot= fieldValue.indexOf(".");

	if(fieldValue.length <= 8) {
		return false;
	}	
	if((fieldValue.substr(0,7) == "http://") ||  (fieldValue.substr(0,8) == "https://")) {
		return true;
	}
	return false;
}

function appendZero(val){
	var str = "";
	str = '' + val + '';
	if(str.length == 1) {
		str = "0" + str;
	}	
	return str;	
}	

function addErrorDiv(frmElm, objvar, i) {
	var divObj = document.createElement('DIV');
	divObj.className = 'error';
	divObj.id = 'errorDiv' + objvar.fieldI[i];
	var errTxt = document.createTextNode(objvar.fieldV[i]);
	divObj.appendChild(errTxt);
	frmElm.parentNode.appendChild(divObj);	
}

function removeErrorDiv(objvar, i) {
	var parObj = document.getElementById('errorDiv' + objvar.fieldI[i]).parentNode;
	parObj.removeChild(document.getElementById('errorDiv' + objvar.fieldI[i]));
}


	function Validurl(fieldValue)
	{	var chkDot= fieldValue.value.indexOf(".");
		if(chkDot==-1)
		{
			alert("Invalid Url");
			fieldValue.value='';
			return;
		}
		if(fieldValue.value.length <= 8)
		{
			alert("Invalid Url");
			return false;
		}
		var url=fieldValue.value.toLowerCase();
		
		if((url.substr(0,7) == "http://") ||  (url.substr(0,8) == "https://")) 
		{
			return true;
		}
		else
		{
			alert("Invalid Url.Url Start With : http://");
			return false;
		}
	}
	