String.prototype.trim = function() {
	return this.replace(/^\s+|\s+$/g,"");
}
String.prototype.ltrim = function() {
	return this.replace(/^\s+/,"");
}
String.prototype.rtrim = function() {
	return this.replace(/\s+$/,"");
}


function isInteger(s) {
	var i;
	for (i = 0; i < s.length; i++)
	{   
		var c = s.charAt(i);
		if ((((c < "0") || (c > "9")))&&(c != "-"))
			return false;
	}
	return true;
}

var language = "hebrew";

function isEnglish(s) {
	if(s.match(engchars)) {
		language="english";
		return true;
	}
	return false;
}

function isHebrew(s) {
	if(s.match(hebchars)) {
		return true;
	}
	return false;
}
function areThreeInARow(s) {
	var current = '';
	var counter = 0;
	for (var i=0;i<s.length;i++) {
		if(s.charAt(i)!=current) {
			current = s.charAt(i);
			counter = 0;
		} else {
			counter ++;
		}
	}
	if (counter>1) return true;
	else return false;
}
function validatePhone(elm) {
	var bad = 0;
	var phone = elm.value;
	var maxphonelength = 10;
	var minphonelength = 9;
	if (!isInteger(phone)) bad = 1;
	if (phone.indexOf('-')!=-1) {
		maxphonelength = 11;
		minphonelength = 10;
	}
	if ((phone.length>maxphonelength)||(phone.length<minphonelength)) bad = 1;
	if (phone.length==maxphonelength) {
		valid = 0 ;
		for (var i in threecodes) if(phone.indexOf(threecodes[i]) == 0) { valid = 1; break; }
		if(!valid)bad = 1;
	}
	if (phone.length==minphonelength) {
		valid = 0;
		for (var i in twocodes) if(phone.indexOf(twocodes[i]) == 0) { valid = 1; break; } 
		if(!valid)bad = 1;
	}
	if (bad == 1) {
		elm.value = "";
		alert("מספר הטלפון לא חוקי");
		elm.focus();
		return false;
	}
	return true;
}

function validateName(elm) {
	var bad = 0;
	var name = elm.value;
	name=name.trim();
	if((!isHebrew(name))&&(!isEnglish(name))) bad = 1;
	if((language == "hebrew")&&(name.length<2)) bad =1;
	if(language == "english") {
		if (name.length<3) bad =1;
		if ((name.indexOf('o')== -1)&&(name.indexOf('e')== -1)&&(name.indexOf('a')== -1)&&(name.indexOf('i')== -1)&&(name.indexOf('y')== -1)) bad = 1;
	}
	if(areThreeInARow(name)) bad = 1;
	for (var i in badwords) if((badwords[i].length)&&(name == badwords[i])) { 
		bad = 1; break; 
	}
	for (var i in badwordparts) if((badwordparts[i].length)&&(name.indexOf(badwordparts[i])!=-1)) { 
		bad = 1; break; 
	}
	if (bad == 1) {
		//elm.value = "";
		//alert("השם לא חוקי");
		//elm.focus();
		//return false;
		return true;
	}
	return true;
}

function validateEmail(elm)
{
	apos=elm.value.indexOf("@");
	dotpos=elm.value.lastIndexOf(".");
	if (apos<1||dotpos-apos<2) {
		elm.value = "";
		alert("דואר האלקטרוני לא חוקי");
		elm.focus();
		return false;
	}
	return true;
}


