// trim function
function trim(str)
{
  return str.replace(/^\s+|\s+$/, '');
}

// return true if valu is empoty, ather ways return flase
function isEmpty(str)
{
	s = trim(str);
	
	if(s == null || s.length == 0)
		return true;
		
	return !/\S/.test(s);
}
function isMail(str) // fld is validation input fild
{
    var tfld = trim(str);
    var emailFilter = /^[^@]+@[^@.]+\.[^@]*\w\w$/ ;
    var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/ ;
   
    if (tfld == "") {
        return false;
    } else if (!emailFilter.test(tfld)) {
        return false;
    } else if (tfld.match(illegalChars)) {
        return false;
    } else {
        return true;
    }
    
    return false;
}

function isRadioeChecked(formName, radioName)
{
	var radio =document.forms[formName].elements[radioName];
	
	
	var result = false;
	
	for(var index = 0; index < radio.length; index++)
	{
		if(radio[index].checked == true)
		{
			result = radio[index].value;
			break;
		}
	}
		
	return result;
}
function TextValid(value, type)
{
	switch(type)
	{
		case 'email':
			return isMail(value);
			break;
		case 'number':
			reg = new RegExp("^\\d{1,7}$");
			return reg.test(value);
			break;
		case 'zip':
			return isZip(value);
			break;
		case 'phone':
			return isPhone(value);
			break;
		default:
			return !isEmpty(value);
	}
}
///
function TextFildValid(fild, type, tag)
{
	var testFild = document.getElementById(fild);
	var tagHTML = document.getElementById(tag);
	
	if(TextValid(testFild.value, type))
	{
		if(tagHTML)tagHTML.className = "fBold";
		return true;
	}
	else
	{
		if(tagHTML)tagHTML.className = "fRed";
		return false;
	}
}
function RadioFildValid(fild, formName, tag)
{
	var tagHTML = document.getElementById(tag);
	
	res = isRadioeChecked(formName, fild);
	if(res)
	{
		if(tag)tagHTML.className = "fBold";
		return res;
	}
	else
	{
		if(tag)tagHTML.className = "fRed";
		return false;
	}
}
function SelectFildValid(fild, tag)
{
	var selectFild = document.getElementById(fild);
	
	index = selectFild.selectedIndex;
	value = selectFild.options[index].value; 
	if(!value)
	{
		if(tag) {SetTagClass(tag, "fRed");}
		return false;
	}
	else
	{
		if(tag) {SetTagClass(tag, "fBold");}
		return value;
	}
}
function SerErrorText(res)
{
	var tag = document.getElementById('errorDiv');
	if(tag)
	{
		if(res)
			tag.innerHTML = "&nbsp;";
		else
			tag.innerHTML = "The information is not correct. Please enter a valid information in highlighted fields.";
	}
}
function SetTagClass(tag, className)
{
	var tagHTML = document.getElementById(tag);	
	
	if(tagHTML)
		tagHTML.className = className;
}
function IsChecked(fild, form, tag)
{
	var testFild = document.forms[form].agg;
	var tagHTML = document.getElementById(tag);
	
	if(testFild.checked)
	{
		if(tagHTML)tagHTML.className = "fBold";
		return true;
	}
	else
	{
		if(tagHTML)tagHTML.className = "fRed";
		return false;
	}
}
function isEqual(field1, field2, field1HTML, field2HTML)
{
	var field1Value = document.getElementById(field1);
	var field2Value = document.getElementById(field2);
	
	var res = (field1Value.value == field2Value.value);
	
	if(! res)
	{
		var field1HTML = document.getElementById(field1HTML);
		if(field1HTML)field1HTML.className = "fRed";
		
		var field2HTML = document.getElementById(field2HTML);
		if(field2HTML)field2HTML.className = "fRed";
	}
	
	return res;
}
function GetFieldValueLenght(field)
{
	var field = document.getElementById(field);
	
	if(field && field.value.length)
	{
		return field.value.length;
	}
	
	return 0;
}