var config=new Array();var ready=true;$(document).ready(function(){for(key in config){if(key=='')continue;$("form[rel='"+key+"']").submit(function(){fsubmit(key);return false;});}});function fsubmit(key,requesttype){ $('input:checkbox').each(function(){if($(this).is(":checked")){}else{$(this).val("");}});$("form[@name='"+key+"'] *").css('background','');$("div.workzone").each(function(){$(this).find('textarea').attr('value',$(this).find('iframe').contents().find('body').html() );});eval('validate_showErrorMethod=validate_'+key+'_showErrorMethod;');if(validate_showErrorMethod.indexOf("#")!= -1){$(validate_showErrorMethod+">*").remove("*");$(validate_showErrorMethod).html('');$(validate_showErrorMethod).css('display','');}var res=new Array(0); res=checkForm(key);for (element in res){if(element.length>0){var tttt=11;displayErrors(res,key);break;}}if(tttt != 11){eval('validate_sendMethod=validate_'+key+'_sendMethod;');if(requesttype =="post"){$("form[name='"+key+"']").submit();}else{if(validate_sendMethod=='ajax'){post(key);}else{$("form[name='"+key+"']").submit();} }}}function post(fName){if(ready){$('input:checkbox').each(function(){if($(this).is(":checked")){} else{$(this).val("");}});$('.button').each(function(){$(this).remove();});$('.workzone').each(function(){$(this).find('textarea').val($(this).find('iframe').contents().find('body').html());});var b=$("form[@name='"+fName+"'] input,form[@name='"+fName+"'] textarea,form[@name='"+fName+"'] select");var newstr="";b.each(function(){if($(this).val()==""){$(this).val("");}newstr+=this.name+'='+$(this).val()+'&';});newstr+='ajax=true';newstr+='&formName='+fName;$.ajax({type:"POST",url: $("form[name='"+fName+"']").attr('action'),data: newstr, success: function(msg){if(msg.match('@s@')){$("#loadbutton").show(); $("#preloader").hide(); var text1=msg.replace(/@s@/g,'');eval('validate_showErrorMethod=validate_'+fName+'_showErrorMethod;');eval('validate_lastaction=validate_'+fName+'_lastaction;');if(validate_showErrorMethod.match("#")){$(validate_showErrorMethod).html(text1);}else{alert(text1)}; if(validate_lastaction=='hide'){$("form[rel='"+fName+"']").css('display','none');} ready=false; setTimeout('readyFalse()',15000);} else{var src=$("captcha",msg).text();src="/libs/imgcode/"+src+".jpg";document.getElementById("captcha").src=src;text1=$("errors",msg).text();$('#cap-error').slideDown(500);$('#cap-error').html(text1);$(validate_showErrorMethod).html(''); $("#loadbutton").show();$("#preloader").hide();eval('validate_showErrorMethod=validate_'+fName+'_showErrorMethod;');if(validate_showErrorMethod.indexOf("#")!= -1){text1=""+text1+"";$(text1).appendTo(validate_showErrorMethod);}else{alert(text1);}} }}); $("#preloader").show(); $("#loadbutton").hide();}else{eval('validate_showErrorMethod=validate_'+fName+'_showErrorMethod;');if(validate_showErrorMethod.indexOf("#")!= -1){$("
Слишком частое отправление запроса,подождите,пожалуйста
").appendTo(validate_showErrorMethod);}else{alert("Слишком частое отправление запроса,подождите,пожалуйста");}}}function readyFalse(){ready=true;}function displayErrors(array,formName){eval('validate_highlight=validate_'+formName+'_highlight;');eval('validate_showErrorMethod=validate_'+formName+'_showErrorMethod;');if(validate_highlight){highlight(array,formName);}if(validate_showErrorMethod=="alert"){alertError(array);}if(validate_showErrorMethod.indexOf("#")!= -1){showErrorInDiv(array,validate_showErrorMethod);}}function highlight(array,formName){for (field in array){for (error in array[field]){$("form[@name='"+formName+"'] *[name='"+field+"']").css('background','#FFFCC6 ');}}}function alertError(array){var string="";out:for (field in array){for (error in array[field]){var newError=getError(error,array[field]['caption'],array[field][error]);string+=newError+"\n";continue out;}}alert(string);}function showErrorInDiv(array,id){var string="";out:for (field in array){for (error in array[field]){var newError=getError(error,array[field]['caption'],array[field][error]);$('#'+field+'-error').html(newError);$('#'+field+'-error').slideDown(500);continue out;}}$(id).append(string);}function getError($errorType,$fieldName,$value){switch ($errorType){case "maxlength": $string="У поля «"+$fieldName+"» превышена максимальная длина - "+$value; break;case "minlength": $string="Поле «"+$fieldName+"» - недостаточно символов"; break;case "email": $string="Поле «"+$fieldName+"» заполнено неверно"; break;case "noempty": $string="Поле «"+$fieldName+"» обязательно для заполнения"; break;case "nonumber": $string="Поле «"+$fieldName+"» не должно содержать цифры"; break;case "numberonly": $string="Поле «"+$fieldName+"» должно содержать только цифры"; break;case "eng": $string="Поле «"+$fieldName+"» может содержать только латинские символы"; break;case "captcha": $string="В поле «"+$fieldName+"» введен неверный код"; break;default: $string="Ошибка";}return $string;}function checkForm(formName){var res;var error=new Array(0);var newArr=config[formName];field='1';for(elem in newArr){res=checkField(elem,newArr[elem],formName);field=elem;for (what in res){if(what.length>0){error[elem]=new Array();error[elem]=res;field='';error[elem]['caption']=newArr[elem]['caption'];}else{delete error[elem];field='';}}if(field !== '' && field!==1)$('#'+elem+'-error').slideUp(500);} return error;}function checkField(field,value,formName){if(field != 'date' && field !='action' && field !='parent'){var error2=new Array(0);var res;var newArr=value;for (var handler in newArr){if(handler != 'caption'){functionName="check_"+handler;res=eval(functionName+"('"+field+"','"+ newArr[handler]+"','"+ formName+"')");if(!res){error2[handler]=newArr[handler];}else{delete error2[handler];}}}return error2;}}/*Обработчики*/function check_maxlength(field,value,formName){try{var string=$("#"+field+"").val();}catch(e){var string=$("#"+field+"").html();}if(string.length>parseInt(value)){return false;}return true;}function check_captcha(field,value,formName){return true;}/*Min-lenght validation*/function check_minlength(field,value,formName){try{var string=$("#"+field+"").val();}catch(e){var string=$("#"+field+"").html();}if(string.length