
function isValid(what,chars) {	
	//проверяет, что все символы из what принадлежат множеству chars
	//если what пустая - ошибка
	
	if (what=="") {
		return false;	
	}	
	
	bool1=false;	
	for (count1=0; (count1<what.length)&&(!bool1); count1++) {
		bool2=false;
		for (count2=0; (count2<chars.length)&&(!bool2);count2++) {
			if (what.charCodeAt(count1)==chars.charCodeAt(count2)) {				
				bool2=true;			
				break;
			}		
		}
		
		if (!bool2) {
			bool1=true;
			break;
		}	
	}	
	
	return !bool1;
}


function textareaValidate(frm)
{

	if(frm.fmore.value.length){
        return true;
        }
      else{
          alert("Забыли написать текст сообщения :)");       
          return false;
      }
            
}

function textinputValidate(input)
{

	if(input.value.length){
              
          return true;
        }
      else{
          alert("Вы не представились!");       
          return false;
        }
 
}

function isEmail(strEmail) {	

	
	if (strEmail=="") {
		alert("Введите, пожалуйста, E-mail");
		return false;
	}	
	
	var letters="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";	
	var numbers="0123456789";		
	var name="";	
	var server="";	
	var strings=new Array();
	
	//разделяем строку на имя пользователя и имя сервера
	strings=strEmail.split("@");	
	if (strings.length==1) {		
		alert("Неверный адрес почты. Попробуйте еще раз");		
		return false;	} 
	else if (strings.length==2) {		
		name=strings[0];
		server=strings[1];
	} else {
		alert("Неверный адрес почты. Попробуйте еще раз");
		return false;
	}		
	
	//проверка имени на допустимость символов
      if (!isValid(name,letters+numbers+"._-")) {
			alert("Неверный адрес почты. Попробуйте еще раз");
			return false;	
	}		
	
	//разделяем имя сервера на составные части
	strings=server.split(".");	
	if (strings.length<2) {		
		alert("Неверный адрес почты. Попробуйте еще раз");
		return false;	
	}	
	
	//проверяем каждую часть на допустимые символы
	for (i=0;i<strings.length;i++) {
		if (!isValid(strings[i],letters+numbers+"_-")) {			
			alert("Неверный адрес почты. Попробуйте еще раз");			
			return false;
		}
	}
	
	return true;	
}


function emailValidate(frm)
{
	var is_em = isEmail(frm.email.value);
	
	if (is_em)
		
	  return true;
      else 
        return false;
}

function chkForm(frm)
{
   if(textinputValidate(frm.fio)){
        if (isEmail(frm.femail.value)){
           if(textareaValidate(frm)){
                return true;
           }
           else
             return false;
        } 
        else
           return false;          
   }
    
   else
    return false; 

}


