function validations_ok()
{
	
	try
	{
		var err_list=new Array();
		word_req=/\w+/;

		// District City and Police Station 
		if(document.frmComplain.cmbDistrict.value==0) err_list[err_list.length]="District"
		if(document.frmComplain.cmbCity.value==0) err_list[err_list.length]="City"
		if(document.frmComplain.cmbPoliceStation.value==0) err_list[err_list.length]="Police Station"
		
		// Day 
		if(document.frmComplain.cmbDay.value.length==1) err_list[err_list.length]="Occurance Day"
		
		var occurance_date_err=0
		// Occurance Date from - req and should be valid
		if(document.frmComplain.cmbOccuranceDate.value==0||document.frmComplain.cmbOccuranceMonth.value==0||document.frmComplain.cmbOccuranceYear.value==0) 
			{
				err_list[err_list.length]="Occurance Date From"
				occurance_date_err++;
			}
		else
			{
			if(!isdate_valid(document.frmComplain.cmbOccuranceDate.value,document.frmComplain.cmbOccuranceMonth.value,document.frmComplain.cmbOccuranceYear.value))
				{
				err_list[err_list.length]="Valid Occurance Date From"
				occurance_date_err++
				}
			}
			
		// Occurance Date to - req and should be valid
		if(document.frmComplain.cmbOccuranceDateTo.value==0||document.frmComplain.cmbOccuranceMonthTo.value==0||document.frmComplain.cmbOccuranceYearTo.value==0) 
			{
			err_list[err_list.length]="Occurance Date To"
			occurance_date_err++
			}
			
		else
			{
			if(!isdate_valid(document.frmComplain.cmbOccuranceDateTo.value,document.frmComplain.cmbOccuranceMonthTo.value,document.frmComplain.cmbOccuranceYearTo.value))
				{
				err_list[err_list.length]="Valid Occurance Date To"
				occurance_date_err++
				}
			}

		// Occurance to more or eq from
		
		//alert(occurance_date_err);
		if(occurance_date_err==0)
		{
			occ_date_from= new Date(document.frmComplain.cmbOccuranceYear.value,document.frmComplain.cmbOccuranceMonth.value-1,document.frmComplain.cmbOccuranceDate.value)
			occ_date_to= new Date(document.frmComplain.cmbOccuranceYearTo.value,document.frmComplain.cmbOccuranceMonthTo.value-1,document.frmComplain.cmbOccuranceDateTo.value)
			
			if(occ_date_from>occ_date_to)
				{
					err_list[err_list.length]="Occurance Date From cannot be more the Date to";
				}

		}
		
			
		// Dir and dist less than 500 char
				if(document.frmComplain.txtoccurance_direction_distance_from_ps.value.length>500)
					err_list[err_list.length]="Direction and Distance too long"


		// Address Compulsory and if entered should be less than 500 char
		if((document.frmComplain.txtoccurance_address.value.length==0)) 
			err_list[err_list.length]="Occurance Address"
		else
			{
				if(document.frmComplain.txtoccurance_address.value.length>500)
					err_list[err_list.length]="Occurance Address too long"
			}
	
		// Name Compulsory and if entered should be less than 50 char
		if((document.frmComplain.txtperson_name.value.length==0)) 
			err_list[err_list.length]="Complainant Name"
		else
			{
				if(document.frmComplain.txtperson_name.value.length>50)
					err_list[err_list.length]="Complainant Name too long"
			}
	
		// Father - Husband Name Compulsory and if entered should be less than 50 char
		if((document.frmComplain.txtfather_husb_name.value.length==0)) 
			err_list[err_list.length]="Complainant Father/Husband "
		else
			{
				if(document.frmComplain.txtfather_husb_name.value.length>50)
					err_list[err_list.length]="Complainant Father/Husband too long"
			}
			
		
		// Birthday - Year Compulsory , and if entering full date - date should be valid
		if(document.frmComplain.cmbcomplainant_bYear.value==0) 
			err_list[err_list.length]="Complainant Birth Year"
		else
			{
			if(document.frmComplain.cmbcomplainant_bDate.value!=0&&document.frmComplain.cmbcomplainant_bMonth.value!=0)
				{
					if(!isdate_valid(document.frmComplain.cmbcomplainant_bDate.value,document.frmComplain.cmbcomplainant_bMonth.value,document.frmComplain.cmbcomplainant_bYear.value))
						err_list[err_list.length]="Valid Birthday"
				}
			}





		// Email
				if(document.frmComplain.txtemail.value.length>50)
					err_list[err_list.length]="Complainant Email too long"


		// Nationality
		
		if((document.frmComplain.txtnationality.value.length==0)) 
			err_list[err_list.length]="Complainant Nationlity"
		else
			{
				if(document.frmComplain.txtnationality.value.length>50)
					err_list[err_list.length]="Complainant Nationality too long"
			}
			

		// Passport Number
				if(document.frmComplain.txtPassportNumber.value.length>10)
					err_list[err_list.length]="Passport Number too long"

		// Place of Issue
				if(document.frmComplain.txtPassportPlaceofIssue.value.length>30)
					err_list[err_list.length]="Passport Place of Issue too long"

		// Occupation
				if(document.frmComplain.txtoccupation.value.length>100)
					err_list[err_list.length]="Occupation too long"


		// Address
		
		if((document.frmComplain.txtaddress.value.length==0)) 
			err_list[err_list.length]="Complainant Address"
		else
			{
				if(document.frmComplain.txtaddress.value.length>100)
					err_list[err_list.length]="Complainant Address too long"
			}

		// Details of Suspect
				if(document.frmComplain.txtDetailsofSuspect.value.length>2000)
					err_list[err_list.length]="Suspect Details too long"

		// Reason for Delay
				if(document.frmComplain.txtReasonsForDelay.value.length>2000)
					err_list[err_list.length]="Reason for Delay too long"

		// Property Details
				if(document.frmComplain.txtDetailsofProperty.value.length>2000)
					err_list[err_list.length]="Property Details too long"

		// Property Value
				if(document.frmComplain.txtPropertyValue.value.length>30)
					err_list[err_list.length]="Property Value too long"


		// Complain Details
		
		if((document.frmComplain.txtComplainDetails.value.length==0)) 
			err_list[err_list.length]="Complain Details"
		else
			{
				if(document.frmComplain.txtComplainDetails.value.length>2000)
					err_list[err_list.length]="Complain Details too long"
			}
	
		// If inform me checked - ensure email is ok
		
		if(document.frmComplain.inform_me.checked) 
			{
				if(!check_email(document.frmComplain.txtemail.value))
					err_list[err_list.length]="Valid Email - if you want\n     to know the progress of the case "
			}

		if(err_list.length!=0)
			{
				Show_mistake_list(err_list);
				return false;
			}
		else
			{
				return true;
			}
	}
	catch(e)
		{
			return false;
		}
}
