var ReqFields=new Array;
var ReqSetts=new Array;

var AcceptRules = false;

function $(e){ return document.getElementById(e); }

function EnterForm(f){
    var FormErrors = new Array;

	if (ReqFields.length > 0)
	{
	
		//for (i=0; i<ReqFields.length; i++)
		for( i in ReqFields )
		{
			//alert(ReqFields[i]);
			xid='frm['+ReqFields[i]+']';
			if (ReqSetts[i][2]!= 'checkbox')
			{
				if($(xid).value.length < ReqSetts[i][1])
				{
					et = (ReqSetts[i][1]==1)? ' не должно быть пустым' : 'должно иметь не менее '+ReqSetts[i][1]+' символов';
					FormErrors.push('Поле <b>'+ReqSetts[i][0]+'</b> '+et);
				}
			}
			else
			{

				AllChecked=0;

				for (j=1; j<=ReqSetts[i][3]; j++)
				{
					if ($(xid+'['+j+']').checked)
					{
						AllChecked++;
					}
				}
				if (AllChecked<ReqSetts[i][1])
				{
					FormErrors.push('Поле <b>'+ReqSetts[i][0]+'</b> должно иметь не менее '+ReqSetts[i][1]+' значений');
				}

			}

			if(ReqSetts[i][3].length > 0){
				var regexp = ReqSetts[i][3];
				if (ReqSetts[i][2]!= 'checkbox'){
					myxid = xid;
				} else {
					for (k=1; k<=ReqSetts[i][3]; k++){
						if ($(xid+'['+k+']').checked){
							myxid = xid+'['+k+']';
						}
					}
				}

				var reg = getRegExp(ReqSetts[i][3]);
				var result = reg.exec( $(myxid).value );
				if(!result){
					FormErrors.push('Поле <b>'+ReqSetts[i][0]+'</b> '+ReqSetts[i][4]);
				}
			}
		}
	}

    if(FormErrors.length > 0){
        //форма неправильная, выводим сообщение об ошибке
        $('msg_div').className = 'error';
        $('msg_div').innerHTML = '<b>При отправке формы возникли ошибки</b><br><blockquote>'+FormErrors.join('<br/>')+'</blockquote>';
        $('msg_div').style.display = '';
        //location.href='#err';
        return false;
    } else {
        //форма правильная, отправляем.
        f.submit();
    }
}