/*
	THIS FILE INCLUDES CALENDER, IMAGE, EMAIL, RADIO, CHECK BOX BUTTON VALIDATION
*/
/***************** CALENDER VALIDATION BETWEEN START DATE AND END DATE AND TODAY'S DATE **********************/
/*DECLARATION IS LIKE THIS .................................
	var dateflag = calenderStartEndValid(document.frm_add_quotehanger.txtsdate.value, document.frm_add_quotehanger.txtedate.value);
	if(dateflag != "true")
	{
		if(dateflag == "false1")
		{
			document.frm_add_quotehanger.txtsdate.select();
			return false;
		}
		if(dateflag == "false2")
		{
			document.frm_add_quotehanger.txtedate.select();
			return false;
		}
	}
	WHERE    document.frm_add_quotehanger.txtsdate.value = START DATE TEXT BOX VALUE;
	document.frm_add_quotehanger.txtedate.value = END DATE TEXT BOX VALUE;
*/
/********************************************************/
function calenderStartEndValid(startDate, endDate)
{
	var myFlag = "true";
	
// VALIDATION FOR START DATE
	if(startDate == "dd/mm/yyyy"  || startDate == "" )
	{
		alert("Please Select Start Date.");
		return myFlag = "false1";
	}
	var s_one = startDate.indexOf("/");
	var s_two = startDate.lastIndexOf("/");
	
	if(s_one < 2)
	{
		alert("Please Select Correct Start Date.");
		return myFlag = "false1";
	}
	if(s_two < 5)
	{
		alert("Please Select Correct Start Date.");
		return myFlag = "false1";
	}
	
	var s_dd = parseInt(startDate.substring(0, s_one), 10)
	var s_mm = parseInt(startDate.substring(s_one+1, s_two), 10)
	var s_yyyy = parseInt(startDate.substring(s_two+1, s_one.length), 10)
	
	if(s_mm < 10)
		s_mm = "0" + "" + s_mm;
	if(s_dd < 10)
		s_dd = "0" + "" + s_dd;
	
	if(startDate.substring(s_two+1, s_one.length).length < 4)
	{
		alert("Enter Year In Proper Format.");
		return myFlag = "false1";
	}
	
	if(s_dd > 31 || s_dd < 1 || s_mm > 12 || s_mm < 1 || isNaN(s_dd) || isNaN(s_mm) || isNaN(s_yyyy))
	{
		alert("Please Select Correct Start Date.");
		return myFlag = "false1";
	}
	var sdt = s_yyyy + "" + s_mm + "" + s_dd;
	
	var today = new Date();
	var t_yyyy = today.getFullYear();
	var t_mm = today.getMonth()+1;
	var t_dd = today.getDate();
	
	if(t_mm < 10)
		t_mm = "0" + "" + t_mm;
	if(t_dd < 10 )
		t_dd = "0" + "" + t_dd;
	
	var td = t_yyyy + "" + t_mm + "" + t_dd;
	
	if(parseInt(sdt) < parseInt(td))
	{
		alert("Plase Select Start Date Greater Than Today's Date.");
		return myFlag = "false1";
	}
/******************************************/
// VALIDATION FOR END DATE
	if(endDate == "dd/mm/yyyy"  || endDate == "" )
	{
		alert("Please Select End Date.");
		return myFlag = "false2";
	}
	var e_one = endDate.indexOf("/");
	var e_two = endDate.lastIndexOf("/");
	
	if(e_one < 2)
	{
		alert("Please Select Correct End Date.");
		return myFlag = "false2";
	}
	if(e_two < 5)
	{
		alert("Please Select Correct End Date.");
		return myFlag = "false2";
	}
	
	var e_dd = parseInt(endDate.substring(0, e_one), 10)
	var e_mm = parseInt(endDate.substring(e_one+1, e_two), 10)
	var e_yyyy = parseInt(endDate.substring(e_two+1, e_one.length), 10)
	
	if(e_mm < 10)
		e_mm = "0" + "" + e_mm;
	if(e_dd < 10)
		e_dd = "0" + "" + e_dd;
	
	if(endDate.substring(e_two+1, e_one.length).length < 4)
	{
		alert("Enter Year In Proper Format.");
		return myFlag = "false2";
	}
	
	if(e_dd > 31 || e_dd < 1 || e_mm > 12 || e_mm < 1 || isNaN(e_dd) || isNaN(e_mm) || isNaN(e_yyyy))
	{
		alert("Please Select Correct End Date.");
		return myFlag = "false2";
	}
	var edt = e_yyyy + "" + e_mm + "" + e_dd;
	
	if(parseInt(edt) < parseInt(sdt))
	{
		alert("Plase Select End Date Greater Than Start Date.");
		return myFlag = "false2";
	}
/******************************************/
	return myFlag;
}
/***************************************************************************************************************/
/************************** CALENDER VALIDATION  BETWEEN TODAY'S DATE AND USER DATE ****************************/
/*DECLARATION IS LIKE THIS .................................
	var flag = calenderValid(document.add_jobs.end_date.value);
	if( flag == "false" )
	{
		document.add_jobs.end_date.select();
		return false;
	}
	WHERE  document.add_jobs.end_date.value = TEXT BOX VALUE;
/********************************************************/
function calenderValid(txtValue)
{
	var myFlag = "true";
	
	// Validation for blank record of Date	
	if(txtValue == "dd/mm/yyyy"  || txtValue == "")
	{
		alert("Please Select Date.");
		return myFlag = "false";
	}
	
	// Validation for End Date
	var ed = txtValue;
	
	var one = ed.indexOf("/");
	var two = ed.lastIndexOf("/");
	
	if(one < 2)
	{
		alert("Please Select Correct Date.");
		return myFlag = "false";
	}
	if(two < 5)
	{
		alert("Please Select Correct Date.");
		return myFlag = "false";
	}
	
	// Split End Date in to Date  , Month and Year
	var dd = parseInt(ed.substring(0,one),10)
	var mm = parseInt(ed.substring(one+1,two),10)
	var yyyy = parseInt(ed.substring(two+1,one.length),10)
	
	if(mm < 10)
		mm = "0" + "" + mm ;
	if(dd < 10)
		dd = "0" + "" + dd ;
	
	if(ed.substring(two+1, one.length).length < 4)
	{
		alert("Enter Year In Proper Format.");
		return myFlag = "false";
	}
	
	if(dd > 31 || dd < 1 || mm > 12 || mm < 1 || isNaN(dd) || isNaN(mm) || isNaN(yyyy))
	{
		alert("Please Select Correct End Date.");
		return myFlag = "false";
	}
	
	// New End Date Build here
	var edt = yyyy + "" + mm + "" + dd ;
	
	//// Today's Date
	var today = new Date();
	
	var yr = today.getFullYear();
	var mon = today.getMonth()+1;
	var day = today.getDate();
	
	if( mon < 10 )
		mon = "0" + "" + mon;
	if( day < 10 )
		day = "0" + "" + day;
	
	// New Today's Date Build here
	var td = yr + "" + mon + "" + day ;
	
	//Taday's Date compaire with date
	if(parseInt(edt) < parseInt(td))
	{
		alert("Plase Select End Date Greater Than Today's Date.");
		return myFlag = "false";
	}
	return myFlag;
}
/***************************************************************************************************************/
/************************************** IMAGE VALIDATION *******************************************************/
/*DECLARATION IS LIKE THIS
	var flag = chkImgPathAdd(document.add_employers.imgPath.value);
	if(flag == "false")
	{
		document.add_employers.imgPath.select();
		return false;
	}
	// WHERE document.add_employers.imgPath.value = TEXT BOX VALUE
*/
/*******************************************/
function chkImgPathAdd(val_chkImgPathAdd)
{
	var myFlag = "true";
	
	if(val_chkImgPathAdd == "")
	{
		alert("Please Enter Image Path.");
		return myFlag="false";
	}
	else if(val_chkImgPathAdd.indexOf(".") <= 0)
	{
		alert("Invalid Image Name.");
		return myFlag="false";
	}
	else
	{
		if(val_chkImgPathAdd.indexOf(".") > 0)
		{
			var index = val_chkImgPathAdd.indexOf(".");
			var len = val_chkImgPathAdd.length;
			var extn = val_chkImgPathAdd.substring(index+1 ,len);
			
			if(extn == "bmp" || extn == "BMP" || ((extn != "jpg" && extn != "JPG") && (extn!= "jpeg" && extn!= "JPEG") && (extn!= "gif" && extn!= "GIF")))
			{
				alert("Please Enter a gif/jpg/jpeg File For Image");
				return myFlag="false";
			}
		}
	}
	return myFlag;
}

// FOR MODIFY
/*DECLARATION IS LIKE THIS
	var flag = chkImgPathMod(document.add_employers.imgPath.value);
	if(flag == "false")
	{
		document.add_employers.imgPath.select();
		return false;
	}
	// WHERE document.add_employers.imgPath.value = TEXT BOX VALUE
/*******************************************/
function chkImgPathMod(val_chkImgPathMod)
{
	var myFlag = "true";
	
	if(val_chkImgPathMod != "")
	{
		if(val_chkImgPathMod.indexOf(".") <= 0)
		{
			alert("Invalid Image Name.");
			return myFlag = "false";
		}
		else
		{
			if(val_chkImgPathMod.indexOf(".") > 0)
			{
				var index = val_chkImgPathMod.indexOf(".");
				var len = val_chkImgPathMod.length;
				var extn = val_chkImgPathMod.substring(index+1 ,len);

				if(extn == "bmp" || extn == "BMP" || ((extn != "jpg" && extn != "JPG") && (extn!= "jpeg" && extn!= "JPEG") && (extn!= "gif" && extn!= "GIF")))
				{
					alert("Please Enter A gif/jpg/jpeg File For Image");
					return myFlag = "false";
				}
			}
		}
	}
	return myFlag;
}
/***************************************************************************************************************/
/******************************************* EMAIL VALIDATION **************************************************/
/*DECLARATION IS LIKE THIS
	var flag = chkEmail(document.resume.txtemail.value);
	if(flag == "false")
	{
		document.resume.txtemail.select();
		return false;
	}
	WHERE document.resume.txtemail.value = TEXT BOX VALUE;
/*******************************************/
function chkEmail(emailVal)
{
	var myFlag = "true";
	
	//Check for blank record
	if(emailVal == "")
	{
		alert("Please Enter Email Id.");
		return myFlag = "false";
	}
	
	var val = parseInt(emailVal.indexOf('@',0));
	var val1 = parseInt(emailVal.indexOf('.',0));
	
	var first_part = emailVal.substring(0, val);
	first_part = first_part.replace(/^\s+|\s+$/,'');
	
	var second_part = emailVal.substring((val + 1), val1);
	second_part = second_part.replace(/^\s+|\s+$/,'');
	
	var third_part = emailVal.substring((val1 + 1), e_length);
	third_part = third_part.replace(/^\s+|\s+$/,'');

	if ((val == -1) || (val1 == -1) || (first_part == "") || (second_part == "") || (third_part == ""))
	{
		alert("Invalid Email.");
		return myFlag = "false";
	}
	
	var e_length = parseInt(emailVal.length);
	
	if (e_length < 8) 
	{  
		alert("E-mail length is too short");
		return myFlag = "false";
	}

	var pos = 0;
	for (i = 0 ; i < e_length ; i++)    
	{
		var txtEmail = (emailVal.charAt(i));

		if (txtEmail == "@")
			pos = pos + 1;
	}

	if (pos > 1)
	{
		alert("Too many @");
		return myFlag = "false";
	}  

	// var aa = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
	// for (i = 0 ; i < e_length ; i++)   
	// {
		// var charval = emailVal.charAt(i);

		// if ((charval == "@") || (charval == ".") || (charval == "_"))
			// continue;
		// else
		// {
			// if (aa.indexOf(charval)==-1)
			// {
				// alert("No special character");
				// return myFlag="false";
			// }
		// }
	// }
	return myFlag;
}
/*************************************************************************************************************/
/******************************************* RADIO VALIDATION ************************************************/
/*DECLARATION IS LIKE THIS
	var flag = rdoBtnValidation(2, 'add_newpage', 'status');
	if(flag == "false")
	{
		alert("Please Select Status.");
		return false;
	}
	WHERE 2 = NO. OF RADIO BUTTON;
	add_newpage = FORM NAME
	status = RADIO BUTTON NAME
/*******************************************/
function rdoBtnValidation(count, frmName, txtName)
{
	// Create Object
	var bltObj = "document." + frmName + "." + txtName ;
	var bltObjNew = eval(bltObj);
	var myFlag = "false";
	
	for(var i = 0 ; i < count ; i++)
	{
		if(bltObjNew[i].checked == true)
		{
			return myFlag = "true";
		}
	}
	return myFlag;	
}
/*************************************************************************************************************/
/****************************************** CHECK BOX VALIDATION *********************************************/
/*DECLARATION IS LIKE THIS
	var flag = checkBoxValidation(2, 'add_newpage', 'status');
	if(flag == "false")
	{
		alert("Please Select Status.");
		return false;
	}
	WHERE 2 = NO. OF CHECK BOX;
	add_newpage = FORM NAME
	status = CHECK BOX COMMON NAME
/*******************************************/
function checkBoxValidation(count, frmName, txtName)
{
	var myFlag = "true";
	var var_cnt = 0;
	for(var cnt = 1 ; cnt <= count ; cnt++)
	{
		var bltObj = "document." + frmName + "." + txtName + cnt;
		var bltObjNew = eval(bltObj);
		if(bltObjNew.checked == true)
		{
			var_cnt = 0;
			break;
		}
		else
			var_cnt = var_cnt + 1;
	}
	if( var_cnt > 0 )
	{
		alert("Please Select Atleast One Check Box.");
		return myFlag = "false";
	}
	return myFlag;	
}
/*************************************************************************************************************/
function chkAddOtherFile(val_chkImgPathAdd, ext_1, ext_2)
{
	var myFlag = "true";
	
	if(val_chkImgPathAdd == "")
	{
		alert("Please Enter " + ext_1 + " Path.");
		return myFlag="false";
	}
	else if(val_chkImgPathAdd.indexOf(".") <= 0)
	{
		alert("Invalid Path.");
		return myFlag = "false";
	}
	else
	{
		if(val_chkImgPathAdd.indexOf(".") > 0)
		{
			var index = val_chkImgPathAdd.indexOf(".");
			var len = val_chkImgPathAdd.length;
			var extn = val_chkImgPathAdd.substring(index+1 ,len);
			
			if((extn != ext_1 && extn != ext_2))
			{
				alert("Please Enter a " + ext_1 + " File.");
				return myFlag = "false";
			}
		}
	}
	return myFlag;
}