// параметр all есть, то проверяется все поля, кроме полей с классом label
// если нет, то проверяются поля с классом label
// класс email для полей с email-ом
function exzam(namef){
if (namef){
for(i=0; i<exzam.arguments.length; i++){
	a=(exzam.arguments[i]=='all')?1:0;
	pop=(exzam.arguments[i]=='nopop')?0:1;
}

	with(namef){
	
	
		for(i=0;i<elements.length;i++){

			if(a){
				el_class=(elements[i].className=='label')?0:1;
			}else{
				el_class=(elements[i].className=='label')?1:0;
			}
		//-------------class label--------------------------
			if(el_class){
		//---------------type-------------
				if(elements[i].type){

		//--------------------text----------------------
					if(elements[i].type=="text" || elements[i].type=="password" || elements[i].type=="file"){
						if(elements[i].value==""){alert("Заполните все обязательные поля");elements[i].focus();return false;}
					}

		//-----------------------radio--checkbox----------------------
					if(elements[i].type=="radio" || elements[i].type=="checkbox"){
						o = document.getElementsByName(elements[i].name);
						j=0;
						while(j<o.length){
							if (o[j].checked==false){
								if(j==o.length-1){
									alert('Заполните все обязательные поля5');o[j].focus();return false;
								}else{
									j++;
								}
							}else{
								break;
							}
						}
					i+=o.length-1;
					}
						
		//-------------------------------------------------------			
				}
		//------------------------end type--------------------		
				if(elements[i].nodeName=="SELECT"){
					if(elements[i].value==""){alert("Укажите обязательные поля");elements[i].focus();return false;}
				}
				if(elements[i].nodeName=="TEXTAREA"){
					if(elements[i].value==""){alert("Заполните все обязательные поля");elements[i].focus();return false;}
				}
		
				//-----------------------------------		
			
			}
		//---------------- class email---------------------
		//---------------- email---------------------
			if(elements[i].className=='email'){
				if(elements[i].type=="text"){
					if(elements[i].value==""){
						alert("Введите E-mail");elements[i].focus();return false;
					}else if (!elements[i].value.match(/\b(^(\S+@).+((\.com)|(\.net)|(\.edu)|(\.mil)|(\.gov)|(\.org)|(\..+))$)\b/gi)){
							alert('Некорректный E-mail');
						   elements[i].focus();
						   return false;
						}
					}
				}
			}
		//----------------end class---------------------


		}//---------with-------
	}
if(pop==1){
	window.open('',namef.target,'toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0,width=300,height=130');}
return true;
}

