var FormValidator=new Class({initialize:function(A,B){this.formID=A;this.errorPrefix="error_";this.fields={};this.submit=true;if(B!=undefined&&B.submit!=undefined){this.submit=B.submit}if(this.submit){$(A).addEvent("submit",this.setHandle.bindWithEvent(this))}},addRoule:function(A,B,E,C){if(this.fields[A]){var D={code:B,text:E};this.fields[A][this.fields[A].length]=D}else{this.fields[A]=[{code:B,text:E}]}},viewRoules:function(){return this.fields},setHandle:function(A){if(!this.validate()){A.stop()}},validate:function(){var errorPrefix=this.errorPrefix;var errorText="";var classError="error_field";var result=true;var error=false;$each(this.fields,function(field,index){$each(field,function(check){var value=$(index).get("value").trim();if($(index).hasClass("m")){value=""}switch(check.code){case"zero":cond="value == 0";break;case"empty":cond="value == ''";break;case"empty_editor":cond="tinyMCE.activeEditor.getContent() == ''";break;case"empty_file":cond="$('id').get('value') == 0 && value == ''";break;case"num":cond="value != '' && /[^0-9]/.test(value)";break;case"num_float":cond="value != '' && /[^0-9.]/.test(value)";break;case"num_100":cond="value != '' && value > 100";break;case"date":cond="value != '' && !/^[0-9]{4}-[0-9]{2}-[0-9]{2}$/.test(value)";break;case"datetime":cond="value != '' && !/^[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}$/.test(value)";break;case"uri":cond="/[а-яА-Я#'\" ]/.test(value)";break;case"photo":cond="value != '' && !/jpg|jpeg|gif|png$/.test(value)";break;case"email":cond="value != '' && !/^[.-_A-Za-z0-9]+?@[.-A-Za-z0-9]+?.[A-Za-z0-9]{2,6}$/.test(value)";break;case"checked":cond="!$(index).get('checked')";break;case"sex":cond="!$(index + '_1').get('checked') && !$(index + '_2').get('checked')";break;case"pwd":cond="$('id').get('value') > 0 && value == ''";break;case"pwd_confirm":cond="value != '' && value != $(index + '_confirm').get('value')";break;case"banners_upload":cond="$('type').get('value') == 1 && value == ''";break;case"banners_code":cond="$('type').get('value') == 2 && value == ''";break;case"banners_url":cond="($('type').get('value') == 1 && !/swf$/.test($('banner').get('value'))) && value == ''";break;default:cond=check.code}if(eval(cond)){error=true;$(errorPrefix+index).set("text",check.text)}});if(error){$(errorPrefix+index).setStyle("display","block");if($(index)){$(index).className+=" "+classError}result=false}else{if($(index)){$(index).className=$(index).className.replace(" "+classError,"")}$(errorPrefix+index).setStyle("display","none")}error=false});return result}});
