<!--
/*******************************************************
* Author: Eliav David - Software engineer & Webmaster. *
* Content: form validation finctions and logics.       *
* Generator: MS.Net environment.					   *	
* Date: 12.03.2005									   *
*******************************************************/

function validateChars(field,v) 
{
	//field=the requested value, v=optional(eng/heb/num/all)
	//------------------------------------------------------
	var valid = " ";
	var msg = "";
	var validEng = "abcdefghijklmnopqrstuvwxyz";
		validEng = validEng + "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
	var	validHeb = "אבגדהוזחטיכךלמםנןסעפףצץקרשת";
	var validNum = "0123456789";
	var ok = "yes";
	var temp, i;		
	
	switch(v) 
	{
		case "eng":
				valid = valid + validEng;
				msg = "נא להכניס רק תווים באנגלית"
				break;
				
		case "heb":
				valid = valid + validHeb;
				msg = "נא להכניס רק תווים בעברית"
				break;
				
		case "num":
				valid = valid + validNum;
				msg = "נא להכניס רק ספרות"
				break;
		
		case "all":
				valid = valid + validEng + validHeb + validNum;
				msg = "נא להכניס תווים חוקיים"
				break;
	}

	for (i=0; i<field.value.length; i++) 
	{
		temp = "" + field.value.substring(i, i+1);
		if (valid.indexOf(temp) == "-1") 
			ok = "no";
	}

	if (ok == "no") 
	{
		alert(msg);
		field.focus();
		field.select();
		return false;
	}		
		
}		

function checkZehut(obj) 
{
	if (obj.value != "") 
	{
		var id, mone, i, temp, bik, msg;
		id = obj.value
		mone=0;
		msg = "תעדות זהות אינה תקינה"
		
		if (isNaN(id)) 
		{
			alert(msg);
			obj.focus();
			return false;
		}

		if (id.length < 9 ) 
		{
			alert(msg);
			obj.focus();
			return false ;
		}
	
		// Sum the even numbers
		// --------------------
		for(i=0;i<id.length-1;i+=2)
			mone=mone+(parseFloat(id.charAt(i))) ;

		// Sum the odd numbers
		// -------------------
		for(i=1;i<id.length-1;i+=2)
			if((parseFloat(id.charAt(i))) > 4)
				mone=mone+(((parseFloat(id.charAt(i))) * 2) - 9) ;
			else
				mone=mone+((parseFloat(id.charAt(i)) * 2)) ;

		if (mone%10) 
		{
			temp=parseInt(mone/10) + 1;
			temp=temp*10 ;
			bik=temp-mone ;	
		}
		else
		{
			temp=parseInt(mone/10) *10 ;		
		    bik=temp-mone;
		}

		if(bik!=(parseFloat(id.charAt(8)))) 
		{
			alert(msg);
			obj.focus();
			return false;
		}
	}
	return true;
}

function checkPhone(obj)
{
	var x, msg;
	
	if (obj.value != "") 
	{
		msg = "מספר טלפון אינו תקין"
		x = obj.value;
		if (isNaN(x)) 
		{
			alert(msg);
			obj.focus();
			return false;
		}

		if (x.length < 7) {
			alert(msg);
			obj.focus();
			return false;
		}
		
	}
	return true;
}

function checkDate(obj)
{
	if (obj.value != "") 
	{
		var x = obj.value.split("/");
		var msg = "תאריך אינו תקין (##/##/####)"
		if (x.length < 3) 
		{
			alert(msg);
			obj.focus();
			return false;
		}
	
		var y = new Date();
		var n = y.getFullYear();
		
		var bYear = x[2];
			if (isNaN(bYear)) 
			{
				alert(msg);
				obj.focus();
				return false;
			}
			
		var bMonth = x[1];
			if (isNaN(bMonth)) 
			{
				alert(msg);
				obj.focus();
				return false;
			}
		
		var bDay = x[0];
			if (isNaN(bDay)) 
			{
				alert(msg);
				obj.focus();
				return false;
			}
	
		var yMod = (bYear % 4 == 0)? true : false
	
		if (bDay < 0 || bDay >31 || (bDay > 28 && bMonth==2 && !yMod) || (bDay > 29 && bMonth==2 && yMod) || (bDay==31 && (bMonth==4 || bMonth==6 || bMonth==9 || bMonth==11))) 
		{
			alert(msg);
			obj.focus();
			obj.select();
 			return false;
		} 
	
		if (bMonth < 0 || bMonth > 12)
		{
			alert(msg);
			obj.focus();
			obj.select();
 			return false;
		}
	
		if (bYear < 1900 || bYear > n) 
		{
			alert(msg);
			obj.focus();
			obj.select();
 			return false;
		}
		
		return true;
	}
}

function checkMail(obj)
{
	if (obj.value != "") 
	{
		var x = obj.value;
		var msg = "דואר אלקטרוני אינו תקין"
		
		if (x.indexOf("@") == -1 || x.indexOf(".") == -1) 
		{
			alert(msg);
			obj.focus();
			return false;
		}
	}
	
	return true;
}

function validateEmpty(field)
{
	if (field.value == "")
	{
		field.focus();
		field.select();
		return false;
	}
}
	
function charValidate(type) 
{
	var chr = event.keyCode;
	var isValidChar;

	switch (type) 
	{
		case "numeric":		// (Only numbers)
			isValidChar = (chr >= 48 && chr <= 57);
			break;

		case "phone":	// (Numbers & "-")
			isValidChar = ( (chr >= 48 && chr <= 57) || chr == 45 );
			break;
			
		case "date":		// (Numbers & "/")
			isValidChar = ( (chr >= 48 && chr <= 57) || chr == 47 );
			break;
			
		case "name":		// (Hebrew and English (both cases), Space, "-", """)
			isValidChar = ( (chr >= 65 && chr <= 90) || (chr >= 97 && chr <= 122) || (chr >= 227 && chr <= 250) ||  (chr >= 1488 && chr <= 1514) || chr == 32 || chr == 34 || chr == 45 );
			break;
			
		case "english":		// (English (both cases) and Space)
			isValidChar = ( (chr >= 65 && chr <= 90) || (chr >= 97 && chr <= 122) || chr == 32 );
			break;
			
		case "user":		// (English (both cases) and Numbers)
			isValidChar = ( (chr >= 48 && chr <= 57) || (chr >= 65 && chr <= 90) || (chr >= 97 && chr <= 122) );
			break;
			
		case "Email":		// (English and Numbers and "_", "-", ".", "@",	"-", "/")
			isValidChar = ( ( chr >= 45 && chr <= 57) || ( chr >= 65 && chr <= 90) || ( chr >= 97 && chr <= 122) || chr == 64 || chr == 95 );
			break;
			
		default:
			isValidChar = true
	}

	if (!isValidChar) 
		event.returnValue = false;
}

function SendMail()
{

	var first = document.all.first;
	var last	 = document.all.last;
	var phone = document.all.phone;
	var email = document.all.email;
	
	
	if(validateEmpty(first) == false) 
	{	
		alert("חסרים נתונים");
		return false;
	}

	if(validateEmpty(last) == false) 
	{	
		alert("חסרים נתונים");
		return false;
	}
	

	if(validateEmpty(phone) == false) 
	{	
		alert("חסרים נתונים");
		return false;
	}
	else
		if(checkPhone(phone) == false) 
			return false;
	
	if(email.value != "") 
	{	
		if(checkMail(email) == false) 
			return false;
	}	
	


	//alert("GOOD");	

	document.getElementById("frmMain").action = "contactAction.asp";
	document.getElementById("frmMain").submit();		
}	
-->
