function CheckM(elname, num){
	var ch = false;
	for (var i=1; i<=num; i++){
		var elid = document.getElementById(elname+i);
		if (elid.checked){
			ch = true;
			break;
		}
	}
	return ch;
}


function is_mail(mail){
	//var reg= new RegExp("[0-9a-z_]+@[0-9a-z_^.]+\\.[a-z]{2,3}", 'i');
	//return reg.test(mail);
	var reg = /^([\w\-\.]+@[\w\-\.]+\.[a-z]{2,4})$/i;
	return reg.test(mail);
}


function CheckForm2(elems, labels, mails, mail_labels, multi, multi_labels, multi_num, files, file_labels, extensions, form_id){
	for(var i=0; i<elems.length; i++){
		
		elid = document.getElementById(elems[i]);
		
		if (elid.type == 'select-multiple' || elid.type == 'select-one')				// select'ы
		{
			if (elid.selectedIndex <1){
				alert(FIELD_NO_SELECTED.replace('@field', labels[i]));
				elid.focus();
				return false;
			}
		}
		
		else{
			if (elid.value == ''){
				alert(FIELD_EMPTY.replace('@field', labels[i]));
				elid.focus();
				return false;
			}
		}
		/**/
	}

	for(var i=0; i<mails.length; i++){
		elid = document.getElementById(mails[i]);
		if (!is_mail(elid.value))
		{
			//alert("Field '" + mail_labels[i] + "' is wrong");
			alert(FIELD_WRONG_MAIL.replace('@field', mail_labels[i]));
			elid.focus();
			return false;
		}
	}

	for(var i = 0; i<multi.length; i++)						// checkbox'ы b radio-button'ы
	{
		elid = document.getElementById(multi[i]+'_1');
		if (!CheckM(multi[i]+'_', multi_num[i]))
		{
			alert(FIELD_NO_CHECKED.replace('@field', multi_labels[i]));
			elid.focus();
			return false;
		}
	}
	for(var i = 0; i<files.length; i++)
	{
		elid = document.getElementById(files[i]);
		if (elid.type == 'file')
		{
			if (elid.value == '')
			{
				alert(FIELD_NO_FILE.replace('@field', file_labels[i]));
				elid.focus();
				return false;
			}
			else{
				reg = /[\w]+\.[a-z]{3,4}$/i;
				var ext = new String();
				ext = reg.exec(elid.value);
				if(ext != null){
					ext = ext.toString();
					ext = ext.toLowerCase();
					reg = /[a-z]{3,4}$/i;
					ext = reg.exec(elid.value);
				}
				if (!in_array(ext, extensions[i]) && extensions[i].length>1)
				{
					alert(FIELD_WRONG_EXTENSION.replace('@field', file_labels[i]));
					elid.focus();
					return false;
				}
			}
		}
	}

	if(form_id.form_scode.value == '')
	{
		alert(FIELD_CODE_EMPTY);
		form_id.form_scode.focus();
		return false;
	}
	return true;
}


function in_array(elem, mas)
{
	var f=false;
	for(var i=0; i<mas.length; i++)
	{														// пробегаемся по всем элементам массива
		if (elem == mas[i]){
			f=true;
		}
	}
	return f;
}
