function callPopUp(url)
{
	//used in "check availability" link of register.aspx
	var username=document.getElementById('txtUsername').value;
	username=username.replace(' ','');
	if(username =='')
	{
		alert('Please enter username.');
		document.getElementById('txtUsername').focus();
		return;
	}
	else
	{
		if(!checkSpecialChar(username))
		{
			alert('Username contains special characters. Please remove them.');
			document.getElementById('txtUsername').focus();
			return;	
		}
		else
		{
			popup(url+'?name='+username);
		}
	}
}
function popup(url)
{
	newwindow=window.open(url,'name','height=400,width=400,toolbar=0,location=0,menubar=0,scrollbars=0,resizable=1,statusbar=0');
	if(!newwindow)
		alert('Please disable your popup blocker to view new window.');
	if (window.focus) {newwindow.focus()}
}

function checkFormIndex()
{
	//index.aspx
	if(document.getElementById('txtUser').value=='')
	{
		alert('Please enter username.');
		document.getElementById('txtUser').focus();
		return false;
	}
	if(document.getElementById('txtPass').value=='')
	{
		alert('Please enter password.');
		document.getElementById('txtPass').focus();
		return false;
	}
	return true;
}

//check special characters
function checkSpecialChar(txtValue)  
{ 	
	var iChars = "!@#$%^&*()+=-[]\';,./{}|\":<>?";   
	for (var i = 0; i < txtValue.length; i++) 
	{   
		if (iChars.indexOf(txtValue.charAt(i)) != -1)    
		{   	
			return false;  
		}  
	}
	return true;
}  


function checkFormRegister()
{
	//register.aspx
	if(document.getElementById('txtUsername').value=='')
	{
		alert('Please enter username.');
		document.getElementById('txtUsername').focus();
		return false;
	}
	else
	{
		if(!checkSpecialChar(document.getElementById('txtUsername').value))
		{
			alert('Username contains special characters. Please remove them.');
			document.getElementById('txtUsername').focus();
			return false;
		}
	}
	if(document.getElementById('txtPassword').value=='')
	{
		alert('Please enter password.');
		document.getElementById('txtPassword').focus();
		return false;
	}
	if(document.getElementById('txtPassword2').value=='')
	{
		alert('Please re-enter password.');
		document.getElementById('txtPassword2').focus();
		return false;
	}
	if(document.getElementById('txtPassword').value != document.getElementById('txtPassword2').value)
	{
		alert('Passwords do not match. Please re-enter correct password.');
		document.getElementById('txtPassword2').value='';
		document.getElementById('txtPassword2').focus();
		return false;
	}
	if(document.getElementById('txtEmail').value=='')
	{
		alert('Please enter your email id.');
		document.getElementById('txtEmail').focus();
		return false;
	}
	evalue = document.getElementById('txtEmail').value;
	if(evalue.length &&(evalue.indexOf("@")==0||evalue.indexOf("@")==-1||evalue.indexOf(".")==-1||evalue.indexOf(".")==0))
	{
		alert("Invalid E-Mail address.\n"+"Format is: abc@domainname.com");
    	document.getElementById("txtEmail").focus();
		return false;
	}
	return true;
}
function checkboxIsChecked(objid,count)
{
	for(i=1;i<=count;i++)
	{
		var checkbox=document.getElementById(objid+i);
		if(checkbox)
		{
			if(checkbox.checked)
				return true;
		}
	}
	return false;
}
function radioGroupIsChecked(objid,count)
{
	for(i=1;i<=count;i++)
	{
		var radio=document.getElementById(objid+i);
		if(radio)
		{
			//alert(radio.checked);
			if(radio.checked)
				return true;
		}
	}
	return false;
}
function checkFormSectionA()
{
		//used in section_a.aspx
		if (document.getElementById('txtUID').value=='')
		{
			alert('Please enter Federal EIN, Tax ID or Social Security Number.')
			document.getElementById('txtUID').focus();
			return false;
		}
		if (document.getElementById('txtLName').value=='')
		{
			alert('Please enter legal name of entity.')
			document.getElementById('txtLName').focus();
			return false;
		}
		if (document.getElementById('txtEName').value=='')
		{
			alert('Please enter name of entity as you would like it to appear on the Approved List.')
			document.getElementById('txtEName').focus();
			return false;
		}
		if (!radioGroupIsChecked('rbEType',2))
		{
			alert('Please select entity type (e.g. "For-profit" or "Non-profit").');
			document.getElementById('rbEType1').focus();
			return false;
		}
		if(!radioGroupIsChecked('rbDescEntity',8))
		{
			alert('Please select one category that best describes your entity.');
			document.getElementById('rbDescEntity1').focus();
			return false;
		}
		
		if(document.getElementById('rbDescEntity8').checked)
		{
			if(document.getElementById('txtDescEntityOther').value == '')
			{
				alert('Other(Specify) field cannot be left blank.');
			    document.getElementById('txtDescEntityOther').focus();
			    return false;
			}
		}
		for(var i=1; i<=2; i++)
		{
			/*if(document.getElementById('ddlTitle'+i).value=='')
			{
				alert('Please select title.');
				document.getElementById('ddlTitle'+i).focus();
				return false;
			}*/
			if(document.getElementById('txtCName'+i).value=='')
			{
				alert('Please enter first name.');
				document.getElementById('txtCName'+i).focus();
				return false;
			}
			else
			{
				if(!IsAlphabet(document.getElementById('txtCName'+i).value))
				{
					alert('Only alphabets are allowed as first name.');
					document.getElementById('txtCName'+i).focus();
					return false;
				}
			}
			if(document.getElementById('txtCLName'+i).value=='')
			{
				alert('Please enter last name.');
				document.getElementById('txtCLName'+i).focus();
				return false;
			}
			else
			{
				if(!IsAlphabet(document.getElementById('txtCLName'+i).value))
				{
					alert('Only alphabets are allowed as last name.');
					document.getElementById('txtCLName'+i).focus();
					return false;
				}
			}

			if(document.getElementById('txtPhone'+i+'1').value=='')
			{
				alert('Please enter phone number.');
				document.getElementById('txtPhone'+i+'1').focus();
				return false;
			}
			else
			{
				if(!IsNumeric(document.getElementById('txtPhone'+i+'1').value))
				{
					alert('Only numeric values are allowed as phone number.');
					document.getElementById('txtPhone'+i+'1').focus();
					return false;
				}
				if(document.getElementById('txtPhone'+i+'1').value.length != 3)
				{
					alert('This phone number seems wrong. Please re-enter a valid one.');
					document.getElementById('txtPhone'+i+'1').focus();
					return false;
				}
			}
			if(document.getElementById('txtPhone'+i+'2').value=='')
			{
				alert('Please enter phone number.');
				document.getElementById('txtPhone'+i+'2').focus();
				return false;
			}
			else
			{
				if(!IsNumeric(document.getElementById('txtPhone'+i+'2').value))
				{
					alert('Only numeric values are allowed as phone number.');
					document.getElementById('txtPhone'+i+'2').focus();
					return false;
				}
				if(document.getElementById('txtPhone'+i+'2').value.length != 3)
				{
					alert('This phone number seems wrong. Please re-enter a valid one.');
					document.getElementById('txtPhone'+i+'2').focus();
					return false;
				}
			}
			if(document.getElementById('txtPhone'+i+'3').value=='')
			{
				alert('Please enter phone number.');
				document.getElementById('txtPhone'+i+'3').focus();
				return false;
			}
			else
			{
				if(!IsNumeric(document.getElementById('txtPhone'+i+'3').value))
				{
					alert('Only numeric values are allowed as phone number.');
					document.getElementById('txtPhone'+i+'3').focus();
					return false;
				}
				if(document.getElementById('txtPhone'+i+'3').value.length != 4)
				{
					alert('This phone number seems wrong. Please re-enter a valid one.');
					document.getElementById('txtPhone'+i+'3').focus();
					return false;
				}
			}
			
			if(document.getElementById('txtFax'+i+'1').value!='')
			{
				if(!IsNumeric(document.getElementById('txtFax'+i+'1').value))
				{
					alert('Only numeric values are allowed as fax number.');
					document.getElementById('txtFax'+i+'1').focus();
					return false;
				}
				if(document.getElementById('txtFax'+i+'1').value.length != 3)
				{
					alert('This fax number seems wrong. Please re-enter a valid one.');
					document.getElementById('txtFax'+i+'1').focus();
					return false;
				}
			}
			if(document.getElementById('txtFax'+i+'2').value!='')
			{
				if(!IsNumeric(document.getElementById('txtFax'+i+'2').value))
				{
					alert('Only numeric values are allowed as fax number.');
					document.getElementById('txtFax'+i+'2').focus();
					return false;
				}
				if(document.getElementById('txtFax'+i+'2').value.length != 3)
				{
					alert('This fax number seems wrong. Please re-enter a valid one.');
					document.getElementById('txtFax'+i+'2').focus();
					return false;
				}
			}
			if(document.getElementById('txtFax'+i+'3').value!='')
			{
				if(!IsNumeric(document.getElementById('txtFax'+i+'3').value))
				{
					alert('Only numeric values are allowed as fax number.');
					document.getElementById('txtFax'+i+'3').focus();
					return false;
				}
				if(document.getElementById('txtFax'+i+'3').value.length != 4)
				{
					alert('This fax number seems wrong. Please re-enter a valid one.');
					document.getElementById('txtFax'+i+'3').focus();
					return false;
				}
			}
			
			if(document.getElementById('txtAddress'+i).value=='')
			{
				alert('Please enter address.');
				document.getElementById('txtAddress'+i).focus();
				return false;
			}
			if(document.getElementById('txtCity'+i).value=='')
			{
				alert('Please enter city.');
				document.getElementById('txtCity'+i).focus();
				return false;
			}
			else
			{
				if(!IsAlphabet(document.getElementById('txtCity'+i).value))
				{
					alert('Only alphabets are allowed as city name.');
					document.getElementById('txtCity'+i).focus();
					return false;
				}
			}
			if(document.getElementById('txtState'+i).value=='')
			{
				alert('Please select state.');
				document.getElementById('txtState'+i).focus();
				return false;
			}
			if(document.getElementById('txtZip'+i).value=='')
			{
				alert('Please enter zip.');
				document.getElementById('txtZip'+i).focus();
				return false;
			}
			else
			{
				if(document.getElementById('txtZip'+i).value.length != 5)
				{
					alert('This zip code seems wrong. Please re-enter a valid one.');
					document.getElementById('txtZip'+i).focus();
					return false;
				}
				if(!IsNumeric(document.getElementById('txtZip'+i).value))
				{
					alert('Only numeric values are allowed in "Zip" field.');
					document.getElementById('txtZip'+i).focus();
					return false;
				}
			}
			if(document.getElementById('txtEmail'+i).value=='')
			{
				alert('Please enter email address.');
				document.getElementById('txtEmail'+i).focus();
				return false;
			}
			else
			{
				var txt=document.getElementById('txtEmail'+i).value;
				if ( txt.indexOf("@") < 1 || txt.indexOf(".") == -1 || txt.length <8 )
				{
					alert("This email address seems wrong. Please re-enter a valid one.");
					document.getElementById('txtEmail'+i).focus();
					return false;
				}
			}
			/*
			if(document.getElementById('txtWebsite'+i).value=='')
			{
				alert('Please enter website.');
				document.getElementById('txtWebsite'+i).focus();
				return false;
			}
			*/
		}
		if(document.forms[0].rbApproved[0].checked) //yes
		{
			if(document.getElementById('txtApproved').value == '')
			{
				alert('Please specify previous provider company name(s).');
				document.getElementById('txtApproved').focus();
				return false;
			}
		}
	
		if(document.forms[0].rbApprovedOtherState[0].checked) //yes
		{
			if(document.getElementById('txtApprovedOtherState').value == '')
			{
				alert('Please specify state(s) in which entity has been an approved SES provider.');
				document.getElementById('txtApprovedOtherState').focus();
				return false;
			}
		}
		
		if(document.forms[0].rbAction[0].checked) //yes
		{
			if(document.getElementById('txtAction').value == '')
			{
				alert('Please explain official action taken against entity.');
				document.getElementById('txtAction').focus();
				return false;
			}
		}

		if(document.getElementById('chkStatewide').checked==false && document.getElementById('lbSelSchools').length==0)
		{
			alert('Please select at least one option for Service Area.\nSelect "Statewide" ONLY if you agree to provide services to any district in the State of Michigan.\n                          OR\nSelect individual school district(s) from given list.');
			document.getElementById('chkStatewide').focus();
			return false;
		}
		else if(document.getElementById('chkStatewide').checked==false)
		{
			var schools=document.getElementById('lbSelSchools');
			for(i=0;i<schools.length;i++)
			{
				schools.options[i].selected=true;
			}
		}
		if(!checkboxIsChecked('chkLoc',6) && document.getElementById('chkLocOther').checked==false)
		{
			alert('Please select at least one location where you will deliver services to students.');
			document.getElementById('chkLoc1').focus();
			return false;
		}
		if(document.getElementById('chkLocOther').checked)
		{
			if(document.getElementById('txtLocOther').value == '')
			{
				alert('Other(Specify) field cannot be left blank.');
			    document.getElementById('txtLocOther').focus();
			    return false;
			}
		}
		if(!checkboxIsChecked('chkSubject',2))
		{
			alert('Please select at least one subject area.');
			document.getElementById('chkSubject1').focus();
			return false;
		}
		if(!checkboxIsChecked('chkGrade',13))
		{
			alert('Please select at least one grade level.');
			document.getElementById('chkGrade1').focus();
			return false;
		}
		if(document.getElementById('txtMinStudent').value == '')
		{
				alert('Please enter minimum number of students.');
				document.getElementById('txtMinStudent').focus();
				return false;
		}
		else
		{
			if(!IsNumeric(document.getElementById('txtMinStudent').value))
			{
				alert('Only numeric values are allowed in "Minimum Student" field.');
				document.getElementById('txtMinStudent').focus();
				return false;
			}
		}
		if(document.getElementById('txtMaxStudent').value == '')
		{
				alert('Please enter maximum number of students.');
				document.getElementById('txtMaxStudent').focus();
				return false;
		}
		else
		{
			if(!IsNumeric(document.getElementById('txtMaxStudent').value))
			{
				alert('Only numeric values are allowed in "Maximum Student" field.');
				document.getElementById('txtMaxStudent').focus();
				return false;
			}
		}
		if(document.forms[0].rbSubGroup[0].checked) //yes
		{
			if(document.getElementById('txtLang').value == '')
			{
				alert('Please enter particular language(s) with which your staff has expertise (separated by comma).');
				document.getElementById('txtLang').focus();
				return false;
			}
		}
		if(document.forms[0].rbDisable[0].checked) //yes
		{
			if(document.getElementById('txtDisable').value == '')
			{
				alert('Please enter particular disabilities (separated by comma).');
				document.getElementById('txtDisable').focus();
				return false;
			}
		}
		if(document.getElementById('txtSDay').value == '')
		{
			alert('Please enter number of days per week for which a student be scheduled for services.');
			document.getElementById('txtSDay').focus();
			return false;
		}
		else
		{
			if(!IsNumeric(document.getElementById('txtSDay').value,'.'))
			{
				alert('Only numeric/decimal values are allowed as number of days.\n(e.g. 3.50)');
				document.getElementById('txtSDay').focus();
				return false;
			}
		}
		if(document.getElementById('txtSMin').value == '')
		{
			alert('Please enter number of minutes per day for which a student will receive services.');
			document.getElementById('txtSMin').focus();
			return false;
		}
		else
		{
			if(!IsNumeric(document.getElementById('txtSMin').value))
			{
				alert('Only numeric values are allowed as number of minutes.');
				document.getElementById('txtSMin').focus();
				return false;
			}
		}
		if(document.getElementById('txtSHour').value == '')
		{
			alert('Please enter number of hours required for a student receiving tutoring in your program \nto achieve their individualized learning goals.');
			document.getElementById('txtSHour').focus();
			return false;
		}
		else
		{
			if(!IsNumeric(document.getElementById('txtSHour').value,'.'))
			{
				alert('Only numeric/decimal values are allowed as number of hours.');
				document.getElementById('txtSHour').focus();
				return false;
			}
		}
		if(document.getElementById('txtRate').value == '')
		{
			alert('Please enter maximum fee per hour of instruction, per student.');
			document.getElementById('txtRate').focus();
			return false;
		}
		else
		{
			if(!IsNumeric(document.getElementById('txtRate').value,'.'))
			{
				alert('Only numeric/decimal values are allowed as maximum fee per hour of instruction, per student.');
				document.getElementById('txtRate').focus();
				return false;
			}
			else
			{
				//alert(document.getElementById('txtWage').value.indexOf('.'));
				var pos = document.getElementById('txtRate').value.indexOf('.');
				if(pos == -1)
				{
					alert('Currency amount should be in specified format.\n(e.g xxx.xx)');
					document.getElementById('txtRate').focus();
					return false;
				}
				if(pos != 1 && pos != 2 && pos != 3)
				{
					alert('Wrong currency format.\nUp to 3 digits are allowed to the left of the decimal.\n(e.g xxx.xx)');
					document.getElementById('txtRate').focus();
					return false;
				}
				else
				{
					var afterdeci = document.getElementById('txtRate').value.substring(pos+1);
					//alert(afterdeci);
					if(afterdeci.length != 2)
					{
						alert('Wrong currency format.\nOnly 2 digits are allowed to the right of the decimal.\n(e.g xxx.xx)');
						document.getElementById('txtRate').focus();
						return false;
					}
				}
				if(document.getElementById('txtRate').value == 0)
				{
					alert('Maximum fee per hour of instruction, per student cannot be zero.');
					document.getElementById('txtRate').focus();
					return false;
				}
				if(document.getElementById('txtRate').value > 999.99)
				{
					alert('Maximum amount limit exceeded for maximum fee per hour of instruction, per student.');
					document.getElementById('txtRate').focus();
					return false;
				}
			}
		}
		if(document.forms[0].rbLower[0].checked) //yes
		{
			if(document.getElementById('txtMinHour').value == '')
			{
				alert('Please enter guaranteed minimum number of service hours each student receives.');
				document.getElementById('txtMinHour').focus();
				return false;
			}
			else
			{
				if(!IsNumeric(document.getElementById('txtMinHour').value))
				{
					alert('Only numeric/decimal values are allowed as number of hours.');
					document.getElementById('txtMinHour').focus();
					return false;
				}
			}
		}
		if(document.getElementById('txtTSRatio1').value == '')
		{
			alert('Please enter student ratio for Non-computer based instruction.');
			document.getElementById('txtTSRatio1').focus();
			return false;
		}
		else
		{
			if(!IsNumeric(document.getElementById('txtTSRatio1').value))
			{
				alert('Only numeric values are allowed as student ratio for Non-computer based instruction.');
				document.getElementById('txtTSRatio1').focus();
				return false;
			}
			else
			{
				if(document.getElementById('txtTSRatio1').value > 5)
				{
					alert('Maximum limit of student ratio for Non-computer based instruction is 5.');
					document.getElementById('txtTSRatio1').focus();
					return false;
				}
			}
		}
		if(document.getElementById('txtTSRatio2').value == '')
		{
			alert('Please enter student ratio for Computer-based instruction (classroom setting).');
			document.getElementById('txtTSRatio2').focus();
			return false;
		}
		else
		{
			if(!IsNumeric(document.getElementById('txtTSRatio2').value))
			{
				alert('Only numeric values are allowed as student ratio for Computer-based instruction (classroom setting).');
				document.getElementById('txtTSRatio2').focus();
				return false;
			}
			else
			{
				if(document.getElementById('txtTSRatio2').value > 8)
				{
					alert('Maximum limit of student ratio for Computer-based instruction is 8.');
					document.getElementById('txtTSRatio2').focus();
					return false;
				}
			}

		}
		if(document.getElementById('txtTSRatio3').value == '')
		{
			alert('Please enter student ratio for Online instruction (off-site facilitator).');
			document.getElementById('txtTSRatio3').focus();
			return false;
		}
		else
		{
			if(!IsNumeric(document.getElementById('txtTSRatio3').value))
			{
				alert('Only numeric values are allowed as student ratio for Online instruction (off-site facilitator).');
				document.getElementById('txtTSRatio3').focus();
				return false;
			}
			else
			{
				if(document.getElementById('txtTSRatio3').value > 30)
				{
					alert('Maximum limit of student ratio for Online instruction is 30.');
					document.getElementById('txtTSRatio3').focus();
					return false;
				}
			}
		}
				
		if(document.getElementById('txtSummary').value == '')
		{
			alert('Please enter program summary.');
			document.getElementById('txtSummary').focus();
			return false;
		}
		return true;
}
function removeLineBreak(id)
{
	alert(removeLineBreak);
	if(document.getElementById(id).value != '')
	{
		var strSingleLineText = document.getElementById(id).value.replace(new RegExp( "\r\n", "g" ),"<br>");
		strSingleLineText = strSingleLineText.replace(new RegExp( "\r", "g" )," ");
		strSingleLineText = strSingleLineText.replace(new RegExp( "\n", "g" ),"<br>");
		document.getElementById(id).value = strSingleLineText;
		
		/*if(id=='txtCriteria1')
		{
			alert(strSingleLineText);
		}*/
	}
}

function checkFormSectionB()
{
		var i;
		var arrWordLimit = Array();
		// 300 words = 1 page
		arrWordLimit[1] = 4.00; // 1200 word
		arrWordLimit[2] = 4.00; // 1200 word
		arrWordLimit[3] = 1.00; // 300 word
		arrWordLimit[4] = 1.00; // 300 word
		arrWordLimit[5] = 1.00; // 300 word
		arrWordLimit[6] = 1.00; // 300 word

		for(i=1;i<=6;i++)
		{
			if(document.getElementById('txtCriteria'+i).value == '')
			{
				alert('Please enter narrative for criterion '+ (i+1) +'.');
				document.getElementById('txtCriteria'+i).focus();
				return false;
			}
			else
			{
				//var totalWords = totalWord('txtCriteria'+i);
				var totalPages = totalPage('txtCriteria'+i);
				//alert('total='+ totalPages+', limit='+arrWordLimit[i]);
				if(totalPages > arrWordLimit[i])
				{
					alert('Page limit exceeded for narrative of criterion '+ (i+1) +'. Please shorten your narrative.\nAllowed page limit: '+ arrWordLimit[i] +'\nTotal pages written by you: '+ totalPages);				
					document.getElementById('txtCriteria'+i).focus();
					return false;
				}
				//removeLineBreak('txtCriteria'+i);
			}
		}
		
}

function checkFormSectionC()
{
	if(!checkboxSelectAll(document.getElementsByName('chkAssurances')))	
	{
		alert('Please read all "Assurances" statements carefully and check each to indicate your agreement.');
		document.forms[0].chkAssurances[0].focus();
		return false;
	}
}

function checkFormSectionD()
{
	if(!checkboxSelectAll(document.getElementsByName('chkEthics')))	
	{
		alert('Please read all "Code of Ethics" statements carefully and check each to indicate your acceptance.');
		document.forms[0].chkEthics[0].focus();
		return false;
	}
}

function checkFormSectionE()
{
	for(i=1;i<=8;i++) //last file is optional
	{
		var obj=document.getElementById('file'+i);
		if(obj != null)
		{
			if(obj.value=='')
			{
				alert('Please upload attachment# '+i);
				obj.focus();
				return false;
			}
			else
			{
				if(!CheckFileExtension(obj))
				{
					alert('Invalid file extension for attachment# '+i);
					obj.value="";
					obj.focus();
					return false;
				}
			}
		}
	}
	var obj=document.getElementById('file'+9);
	if(obj != null)
	{
		if(obj.value!='')
		{
			if(!CheckFileExtension(obj))
			{
				alert('Invalid file extension for attachment# 9');
				obj.value="";
				obj.focus();
				return false;
			}
		}
	}
}
function checkFormSectionEOptional()
{
	if(confirm('Do you really want to exit?\nYou can login later and complete rest of the form.'))
	{
		for(i=1;i<=9;i++)
		{
			var obj=document.getElementById('file'+i);
			if(obj != null)
			{
				if(obj.value!='')
				{
					if(!CheckFileExtension(obj))
					{
						alert('Invalid file extension for attachment# '+i);
						obj.value="";
						obj.focus();
						return false;
					}
				}
			}
		}
	}
	else
		return false;
}

function CheckFileExtension(fileobj)
{
	// valid file extension
	var valid_ext = {
		"1": "doc",
		"2": "xls",
		"3": "pdf",
		"4": "jpg",
		"5": "jpeg",
		"6": "gif"
	};
	var file=fileobj.value;
	file = file.slice(file.indexOf("\\") + 1);
	ext = file.slice(file.lastIndexOf(".")+1).toLowerCase();
	valid=false;
	for (var j in valid_ext)
	{
		if(ext==valid_ext[j])
		{
			valid=true;
			break;
		}
		else
			valid=false;
	}
	if(valid==true)
		return true;
	else
		return false;
}

function checkboxSelectAll(objSelect) //function to check wheather all checkbox are selected or not.
{
	var notSelected=0;
	//alert(objSelect.length)
	for(var i=0;i<objSelect.length;i++)
	{
			
			if(!objSelect[i].checked)
				notSelected = notSelected + 1;
	}
	
	//alert(notSelected)
	if(notSelected == 0)
		return true;
	else
		return false;
}
function checkboxSelect(objSelect)
{
	var selectCount=0;
	for(var i=0;i<objSelect.length;i++)
	{
			if(objSelect[i].checked)
				selectCount = selectCount + 1;
	}
	if(selectCount == 0)
		return false;
	else
		return true;
}

function IsNumeric(strString,customChar)
   //  check for valid numeric strings	
   {
   if(!customChar)
	   var strValidChars = "0123456789";
   else
      var strValidChars = "0123456789" + customChar;
   var strChar;
   var blnResult = true;

   if (strString.length == 0) return false;

   //  test strString consists of valid characters listed above
   for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) == -1)
         {
         blnResult = false;
         }
      }
   return blnResult;
   }

function IsAlphabet(strString,customChar)
   //  check for valid numeric strings	
   {
   if(!customChar)
	   var strValidChars = "0123456789";
   else
      var strValidChars = "0123456789" + customChar;
   var strChar;
   var blnResult = true;

   if (strString.length == 0) return false;

   //  test strString should not consists of characters listed above
   for (i = 0; i < strString.length && blnResult == true; i++)
      {
      strChar = strString.charAt(i);
      if (strValidChars.indexOf(strChar) != -1)
         {
			blnResult = false;
         }
      }
   return blnResult;
   }
   
function wordCount(textid,countid,wordLimit,event)
{
	// if (event.keyCode==32) //if spacebar is pressed
	 //	{ 
	 		if(document.getElementById(textid).value=='')
			{
				document.getElementById(countid).value = 0;
			}
			else
			{
				var content = document.getElementById(textid).value;
				//alert(content);
				var arrContent=content.split(" ");
				var totalWord = arrContent.length-1;
				document.getElementById(countid).value = totalWord;
				document.getElementById(textid).focus();
				if(!wordLimit)
					var wordLimit = 0;
				if(event.keyCode != 8) //if backspace is pressed, dont show message
				{
					if(totalWord > wordLimit)
					{
						alert('Word limit exceeded for this narrative. Please shorten your narrative.\nAllowed word limit: '+ wordLimit+'\nTotal words written by you: '+ totalWord);				
						document.getElementById(textid).focus();
					}
				}
			}
	 //	}
}
function pageCount(textid,countid,pageLimit,event)
{
	// if (event.keyCode==32) //if spacebar is pressed
	 //	{ 
	 		if(document.getElementById(textid).value=='')
			{
				document.getElementById(countid).value = 0;
			}
			else
			{
				var content = document.getElementById(textid).value;
				//alert(content);
				var arrContent=content.split(" ");
				var pages=arrContent.length/300;
				var roundedPages = Math.round(pages*100)/100;
				document.getElementById(countid).value = roundedPages;
				document.getElementById(textid).focus();
				//alert(roundedPages);
				if(!pageLimit)
					var pageLimit = 0;
				if(event.keyCode != 8) //if backspace is pressed, dont show message
				{
					if(roundedPages > pageLimit)
					{
						alert('Pages limit exceeded for this narrative. Please shorten your narrative.\nAllowed page limit: '+ pageLimit+'\nTotal pages written by you: '+ roundedPages);				
						document.getElementById(textid).focus();
					}
				}
				
			}
	 //	}
}
function totalWord(textid)
{
	if(document.getElementById(textid).value=='')
	{
		return 0;
	}
	else
	{
		var content = document.getElementById(textid).value;
		var arrContent=content.split(" ");
		return arrContent.length-1;
	}
}
function totalPage(textid)
{
	if(document.getElementById(textid).value=='')
	{
		return 0;
	}
	else
	{
		var content = document.getElementById(textid).value;
		var arrContent=content.split(" ");
		var pages=arrContent.length/300;
		return Math.round(pages*100)/100;
	}
}
///////////////////////////////-------admin
function checkFormAdminDetails()
			{
				if(document.getElementById('txtEmail').value == "")
				{	
					alert("Email cannot be left blank");
					document.getElementById('txtEmail').focus();
					return false;
				} 
				
				var mail = document.getElementById('txtEmail').value;
				if(mail != "")
				{
					var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
					if (filter.test(mail))
					{
						// alert('YES! Correct email address');
					}
					else
					{
						alert("Invalid email address.");
						document.getElementById('txtEmail').focus();
						return false;
					}	
				}
				
				if(document.getElementById('txtFname').value == "")
				{	
					alert("First name cannot be left blank");
					document.getElementById('txtFname').focus();
					return false;
				}
				if(document.getElementById('txtLname').value == "")
				{	
					alert("Last name cannot be left blank");
					document.getElementById('txtLname').focus();
					return false;
				}
				return true;	
			}
			function confirmChangePassword()
			{
				var choice = confirm('Do you really want to change your password?');
				
				if(choice)
					return true;
				else
					return false;	
			}

function checkFormManageUsers(checkPass)
			{
				if(document.getElementById('txtUsername').value == "")
				{	
					alert("Username cannot be left blank");
					document.getElementById('txtUsername').focus();
					return false;
				} 
				
				if(checkPass=="true")
				{
					if(document.getElementById('txtPassword').value == "")
					{	
						alert("Password cannot be left blank");
						document.getElementById('txtPassword').focus();
						return false;
					}
				}
				
				if(document.getElementById('txtEmail').value == "")
				{	
					alert("Email cannot be left blank");
					document.getElementById('txtEmail').focus();
					return false;
				} 
				
				var mail = document.getElementById('txtEmail').value;
				if(mail != "")
				{
					var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
					if (filter.test(mail))
					{
						// alert('YES! Correct email address');
					}
					else
					{
						alert("Invalid email address.");
						document.getElementById('txtEmail').focus();
						return false;
					}	
				}
				
				if(document.getElementById('ddlGroups').value == "-1")
				{
					alert("Please select a user group.");
					document.getElementById('ddlGroups').focus();
					return false;
				}
				
				if(document.getElementById('txtFname').value == "")
				{	
					alert("First name cannot be left blank");
					document.getElementById('txtFname').focus();
					return false;
				}
				if(document.getElementById('txtLname').value == "")
				{	
					alert("Last name cannot be left blank");
					document.getElementById('txtLname').focus();
					return false;
				}
				return true;	
			}
			function checkSelection(selectId,choice)
			{
	  		    var objSelect = document.getElementById(selectId);
				var i;
				var count = 0;
				for (i=0; i<objSelect.options.length; i++) 
				{
					if (objSelect.options[i].selected) 
					{
						count++;
					}
				}
				if(count==0) {
					alert("Please select at least one member to "+choice);
					return false;
				}
				return true;	
			}
			function ConfirmSelection(field)
			{
				var choice=confirm("Do you really want to "+field+" all the users?");
				if (choice)
					return true;
				else
					return false;	
			}
function checkFormForgetPass()
{
	if(document.getElementById('txtUser').value == '' && document.getElementById('txtEmail').value == '')
	{
		alert('Please enter username or Entity Headquarter\'s email address.')	;
		document.getElementById('txtUser').focus();
		return false;
	}
	else
	{
		if(document.getElementById('txtEmail').value != '')
		{
		var txt=document.getElementById('txtEmail').value;
		if ( txt.indexOf("@") < 1 || txt.indexOf(".") == -1 || txt.length <8 )
		{
			alert("This email address seems wrong. Please re-enter a valid one.");
			document.getElementById('txtEmail').focus();
			return false;
		}
		}
	}
}
function checkFormForgetPassAdmin()
{
	if(document.getElementById('txtUser').value == '' && document.getElementById('txtEmail').value == '')
	{
		alert('Please enter username or email address.')	;
		document.getElementById('txtUser').focus();
		return false;
	}
	else
	{
		if(document.getElementById('txtEmail').value != '')
		{
		var txt=document.getElementById('txtEmail').value;
		if ( txt.indexOf("@") < 1 || txt.indexOf(".") == -1 || txt.length <8 )
		{
			alert("This email address seems wrong. Please re-enter a valid one.");
			document.getElementById('txtEmail').focus();
			return false;
		}
		}
	}
}

function selectComboValue(id,value)
{
	if(document.getElementById(id))
	{
		var selectbox = document.getElementById(id);
		for(i=0;i<selectbox.length;i++)
		{
			if(selectbox.options[i].value==value)
			{
				selectbox.options[i].selected=true;
				break;
			}
		}
	}
}

/********** START ISD SELECTION RELATED FUNCTIONS **************/

//gets called from fillOption function
function addOption(selectbox,text,value )
{
	var optn = document.createElement("OPTION");
	optn.text = text;
	optn.value = value;
	var alreadyAdded=false;
	for(var i=0;i<selectbox.options.length;i++)
	{
		if(selectbox.options[i].value==value && selectbox.options[i].text==text)
		{
			alreadyAdded=true;
			break;
		}
	}
	if(alreadyAdded==false)
		selectbox.options.add(optn);
}

function removeOption(selectbox)
{
	var i;
	for(var i=selectbox.options.length-1;i>=0;i--)
	{
		if(selectbox.options[i].value != '')
			selectbox.remove(i);
	}
}
function fillOption(selectbox,data)
{
	var data_arr=Array();
	data_arr = data.split('~');
	for (x in data_arr)
	{
		temp = data_arr[x];
		temp_arr = temp.split('^');
		addOption(selectbox,temp_arr[1],temp_arr[0]);
	}
}
/******************************************************************/
function removeOneOption(selectbox,index)
{
	selectbox.remove(index);
}
function addAll(source,destination)
{
	var source=document.getElementById(source);
	if(source.options.length > 0)
	{
		var destination=document.getElementById(destination);
		for(var i=0;i<source.options.length;i++)
		{
			var option=source.options[i];
			addOption(destination,option.text,option.value);			
		}
		removeOption(source);
	}
}
function addOne(source,destination)
{
	var source=document.getElementById(source);
	if(source.selectedIndex != -1)
	{
		var destination=document.getElementById(destination);
		var option=source.options[source.selectedIndex];
		
		addOption(destination,option.text,option.value);
		removeOneOption(source,source.selectedIndex);
	}
}

function SetHiddenSelSchools()
{
	var LstBox = document.getElementById('lbSelSchools');
	document.getElementById('hdnSelSchools').value = ""
	for(var i=0;i<LstBox.options.length;i++)
	{
		var option=LstBox.options[i];
		if (document.getElementById('hdnSelSchools').value == "")
			document.getElementById('hdnSelSchools').value = option.value ;
		else
			document.getElementById('hdnSelSchools').value = document.getElementById('hdnSelSchools').value +","+ option.value ;		
	}
	
}

/******************************************************************/
function getSchools(selectbox)
{
	var lbSchools=document.getElementById("lbSchools");
	if(selectbox.value=='')
	{
		alert('Select an Intermediate School District');
		removeOption(lbSchools);
		return;
	}
	
	var randomnumber=Math.floor(Math.random()*10000);
	var id=encodeURI(selectbox.value);
	var url = "get_schools_ajax.aspx?id="+ id +"&t="+ randomnumber; 
	//alert(url);	
	var data;
	ajax.open("GET", url, false);
	ajax.send(null);
		
	try
	{
		if(ajax.readyState == 4)
		{
		   if(ajax.status == 200) 
		   {
				data = ajax.responseText;
				//alert(data);
				if(data != '')
				{
					removeOption(lbSchools);
					fillOption(lbSchools,data);
					/*document.getElementById("tdSchools").style.display='';
					document.getElementById("tdButtons").style.display='';
					document.getElementById("tdSelSchools").style.display='';*/
				}
				else
				{
					removeOption(lbSchools);
					/*document.getElementById("tdSchools").style.display='';
					document.getElementById("tdButtons").style.display='';
					document.getElementById("tdSelSchools").style.display='';*/
				}
			}
		}
	}
	catch (ex)
	{}

}
function statewide(chk)
{
	var divISD=document.getElementById("divISD");
	var lbSchools=document.getElementById("lbSchools");
	var lbSelSchools=document.getElementById("lbSelSchools");
	if(chk.checked==true)
	{
		if(confirm('Select "Statewide" ONLY if you agree to provide services to any district in the State of Michigan.\nNOTE: You will lose school districts that you may have selected below.\nClick "OK" to continue or "Cancel" to return.'))
		{
			document.getElementById("ddlISD").value='';
			removeOption(lbSchools);
			removeOption(lbSelSchools);
			
			/*document.getElementById("tdSchools").style.display='none';
			document.getElementById("tdButtons").style.display='none';
			document.getElementById("tdSelSchools").style.display='none';*/
			divISD.style.display='none';
		}
		else
			chk.checked=false;
	}
	else
	{
		divISD.style.display='';
		document.getElementById("ddlISD").value='';
		removeOption(lbSchools);
		removeOption(lbSelSchools);
	}
}
function selectOptionAll(selectboxid)
{
	var obj=document.getElementById(selectboxid);
	for(i=0;i<obj.options.length;i++)
	{
		obj.options[i].selected=true;
	}
}

/********** END ISD SELECTION RELATED FUNCTIONS **************/

function toggleCheckboxes(container,checkbox)
{
	if(document.getElementById(container))
	{
		var table = document.getElementById(container);
		for(var i=0;i<table.rows.length;i++)
		{
			 try
			 {
				if(table.rows[i].cells[14].childNodes[0].nodeType==1)
					var x=table.rows[i].cells[14].childNodes[0].checked=checkbox.checked;	//IE
				else
					var x=table.rows[i].cells[14].childNodes[1].checked=checkbox.checked;	//FF
			 }
			 catch (ex)
			 { }
		}
	}
}
function showReport(reportid,selectbox)
{
	if(reportid=='' || selectbox.value=='')
		return;
	else
	{
		var url='adminAppReportDetail.aspx?id='+reportid+'&isdcode='+selectbox.value;
		//alert(url);
		//window.location.href=url;
		newwindow=window.open(url,'');
		if(!newwindow)
			alert('Please disable your popup blocker to view new window.');
		if (window.focus) {newwindow.focus()}
	}
}
function checkfilters()
{
	if(document.getElementById('chkDate').checked==true)
	{
		//start date
		if(document.getElementById('txtSDate').value=='')
		{
			alert('Please enter start date');
			return false;
		}
		else
		{
			var temp=document.getElementById('txtSDate').value;
			var temp_arr=temp.split('-');
			if(temp_arr.length != 3)
			{
				alert('Please enter valid start date');
				return false;
			}
			else
			{
				if(temp_arr[0].length != 2)
				{
					alert('Please enter valid year in start date');
					return false;
				}
				if(temp_arr[1].length != 2)
				{
					alert('Please enter valid month in start date');
					return false;
				}
				if(temp_arr[2].length != 4)
				{
					alert('Please enter valid day in start date');
					return false;
				}
			}
		}
		//end date
		if(document.getElementById('txtEDate').value=='')
		{
			alert('Please enter end date');
			return false;
		}
		else
		{
			var temp=document.getElementById('txtEDate').value;
			var temp_arr=temp.split('-');
			if(temp_arr.length != 3)
			{
				alert('Please enter valid end date');
				return false;
			}
			else
			{
				if(temp_arr[0].length != 2)
				{
					alert('Please enter valid year in end date');
					return false;
				}
				if(temp_arr[1].length != 2)
				{
					alert('Please enter valid month in end date');
					return false;
				}
				if(temp_arr[2].length != 4)
				{
					alert('Please enter valid day in end date');
					return false;
				}
			}
		}

	}
}
function checkLoginReportForm()
{
	//start date
		if(document.getElementById('txtForDate').value=='')
		{
			alert('Please enter start date');
			return false;
		}
		else
		{
			var temp=document.getElementById('txtForDate').value;
			var temp_arr=temp.split('-');
			if(temp_arr.length != 3)
			{
				alert('Please enter valid start date');
				return false;
			}
			else
			{
				if(temp_arr[0].length != 2)
				{
					alert('Please enter valid year in start date');
					return false;
				}
				if(temp_arr[1].length != 2)
				{
					alert('Please enter valid month in start date');
					return false;
				}
				if(temp_arr[2].length != 4)
				{
					alert('Please enter valid day in start date');
					return false;
				}
			}
		}
		//end date
		if(document.getElementById('txtToDate').value=='')
		{
			alert('Please enter end date');
			return false;
		}
		else
		{
			var temp=document.getElementById('txtToDate').value;
			var temp_arr=temp.split('-');
			if(temp_arr.length != 3)
			{
				alert('Please enter valid end date');
				return false;
			}
			else
			{
				if(temp_arr[0].length != 2)
				{
					alert('Please enter valid year in end date');
					return false;
				}
				if(temp_arr[1].length != 2)
				{
					alert('Please enter valid month in end date');
					return false;
				}
				if(temp_arr[2].length != 4)
				{
					alert('Please enter valid day in end date');
					return false;
				}
			}
		}
}
function toggleMinHourBox(obj)
{
	var box=document.getElementById('txtMinHour');
	if(obj.checked==true && obj.value=='0')
		box.readOnly=false;
	else
	{
		box.value='';
		box.readOnly=true;
	}
}