Object.extend(Validation,{reset:function(elm){elm=$(elm);var cn=$w(elm.className);cn.each(function(value){var prop='__advice'+value.camelize();if(elm[prop]){var advice=Validation.getAdvice(value,elm);if(advice){advice.parentNode.removeChild(advice);}
elm[prop]='';}
elm.removeClassName('validation-failed');elm.removeClassName('validation-passed');if(Validation.defaultOptions.addClassNameToContainer&&Validation.defaultOptions.containerClassName!=''){var container=elm.up(Validation.defaultOptions.containerClassName);if(container){container.removeClassName('validation-passed');container.removeClassName('validation-error');}}});}});Validation.add('validate-cpf','CPF inválido.',function(v){function _indexaremove(str,sub){i=str.indexOf(sub);r="";if(i==-1)return str;r+=str.substring(0,i)+_indexaremove(str.substring(i+sub.length),sub);return r;}
var cpf=v;var filtro=/^\d{3}.\d{3}.\d{3}-\d{2}$/i;cpf=_indexaremove(cpf,".");cpf=_indexaremove(cpf,"-");if(cpf.length!=11||cpf=="00000000000"||cpf=="11111111111"||cpf=="22222222222"||cpf=="33333333333"||cpf=="44444444444"||cpf=="55555555555"||cpf=="66666666666"||cpf=="77777777777"||cpf=="88888888888"||cpf=="99999999999"){return false;}
soma=0;for(i=0;i<9;i++){soma+=parseInt(cpf.charAt(i))*(10-i);}resto=11-(soma%11);if(resto==10||resto==11)resto=0;if(resto!=parseInt(cpf.charAt(9))){return false;}
soma=0;for(i=0;i<10;i++){soma+=parseInt(cpf.charAt(i))*(11-i);}resto=11-(soma%11);if(resto==10||resto==11)resto=0;if(resto!=parseInt(cpf.charAt(10))){return false;}
return true;});Validation.add('validate-pessoa','Por favor, selecione uma das opções.',function(v,elm){var inputs=$$('input[name="'+elm.name.replace(/([\\"])/g,'\\$1')+'"]');var error=1;for(var i=0;i<inputs.length;i++){if((inputs[i].type=='checkbox'||inputs[i].type=='radio')&&inputs[i].checked==true){error=0;}
if(Validation.isOnChange&&(inputs[i].type=='checkbox'||inputs[i].type=='radio')){Validation.reset(inputs[i]);}}
if(error==0){return true;}else{return false;}});Validation.add('validate-ie','Escreva "ISENTO" se você não possuir IE.',function(ie){if(ie=="")
return false;return true;});Validation.add('validate-cnpj','CNPJ inválido.',function(cnpj){var i=0;var l=0;var strNum="";var strMul="6543298765432";var character="";var iValido=1;var iSoma=0;var strNum_base="";var iLenNum_base=0;var iLenMul=0;var iSoma=0;var strNum_base=0;var iLenNum_base=0;if(cnpj=="")
return false;l=cnpj.length;for(i=0;i<l;i++){caracter=cnpj.substring(i,i+1)
if((caracter>='0')&&(caracter<='9'))
strNum=strNum+caracter;};if(strNum.length!=14)
return false;strNum_base=strNum.substring(0,12);iLenNum_base=strNum_base.length-1;iLenMul=strMul.length-1;for(i=0;i<12;i++)
iSoma=iSoma+
parseInt(strNum_base.substring((iLenNum_base-i),(iLenNum_base-i)+1),10)*parseInt(strMul.substring((iLenMul-i),(iLenMul-i)+1),10);iSoma=11-(iSoma-Math.floor(iSoma/11)*11);if(iSoma==11||iSoma==10)
iSoma=0;strNum_base=strNum_base+iSoma;iSoma=0;iLenNum_base=strNum_base.length-1
for(i=0;i<13;i++)
iSoma=iSoma+
parseInt(strNum_base.substring((iLenNum_base-i),(iLenNum_base-i)+1),10)*parseInt(strMul.substring((iLenMul-i),(iLenMul-i)+1),10);iSoma=11-(iSoma-Math.floor(iSoma/11)*11);if(iSoma==11||iSoma==10)
iSoma=0;strNum_base=strNum_base+iSoma;if(strNum!=strNum_base)
return false;return true;});Validation.add('validate-genero','Por favor, selecione uma das opções.',function(v,elm){var inputs=$$('input[name="'+elm.name.replace(/([\\"])/g,'\\$1')+'"]');var error=1;for(var i=0;i<inputs.length;i++){if((inputs[i].type=='checkbox'||inputs[i].type=='radio')&&inputs[i].checked==true){error=0;}
if(Validation.isOnChange&&(inputs[i].type=='checkbox'||inputs[i].type=='radio')){Validation.reset(inputs[i]);}}
if(error==0){return true;}else{return false;}});Validation.add('not-validate','',function(v){return true;});;var __indexaLast;var __indexaPreviousClasses=new Array();__indexaPreviousClasses["F"]=new Array();__indexaPreviousClasses["J"]=new Array();function indexaCustomerTab()
{dataForm.validator.reset();var vl=$('form-validate').getInputs('radio','pessoa').find(function(radio){return radio.checked;});var inputs,i;if(vl!=undefined)
{if(vl.value=="F")
{$('form-fisica').removeClassName("no-display");inputs=$$("#form-fisica input");if(inputs.length==__indexaPreviousClasses["F"].length&&__indexaLast=="J")
{for(i=0;i<inputs.length;i++)
{inputs[i].className=__indexaPreviousClasses["F"][i];inputs[i].enable();}}
inputs=$$("#form-juridica input");for(i=0;i<inputs.length;i++)
{__indexaPreviousClasses["J"][i]=inputs[i].className;inputs[i].className='not-validate';inputs[i].disable();}
$('form-juridica').addClassName("no-display");}
else if(vl.value=="J")
{$('form-juridica').removeClassName("no-display");inputs=$$("#form-juridica input");if(inputs.length==__indexaPreviousClasses["J"].length&&__indexaLast=="F")
{for(i=0;i<inputs.length;i++)
{inputs[i].className=__indexaPreviousClasses["J"][i];inputs[i].enable();}}
inputs=$$("#form-fisica input");for(i=0;i<inputs.length;i++)
{__indexaPreviousClasses["F"][i]=inputs[i].className;inputs[i].className='not-validate';inputs[i].disable();}
$('form-fisica').addClassName("no-display");}
__indexaLast=vl.value;}}
function indexaCustomerBillingTab()
{billingForm.validator.reset();var vl=$('co-billing-form').getInputs('radio','billing[pessoa]').find(function(radio){return radio.checked;});var inputs,i;if(vl!=undefined)
{if(vl.value=="F")
{$('billing-new-address-form-fisica').removeClassName("no-display");inputs=$$("#billing-new-address-form-fisica input");if(inputs.length==__indexaPreviousClasses["F"].length&&__indexaLast=="J")
{for(i=0;i<inputs.length;i++)
{inputs[i].className=__indexaPreviousClasses["F"][i];inputs[i].enable();}}
inputs=$$("#billing-new-address-form-juridica input");for(i=0;i<inputs.length;i++)
{__indexaPreviousClasses["J"][i]=inputs[i].className;inputs[i].className='not-validate';inputs[i].disable();}
$('billing-new-address-form-juridica').addClassName("no-display");}
else if(vl.value=="J")
{$('billing-new-address-form-juridica').removeClassName("no-display");inputs=$$("#billing-new-address-form-juridica input");if(inputs.length==__indexaPreviousClasses["J"].length&&__indexaLast=="F")
{for(i=0;i<inputs.length;i++)
{inputs[i].className=__indexaPreviousClasses["J"][i];inputs[i].enable();}}
inputs=$$("#billing-new-address-form-fisica input");for(i=0;i<inputs.length;i++)
{__indexaPreviousClasses["F"][i]=inputs[i].className;inputs[i].className='not-validate';inputs[i].disable();}
$('billing-new-address-form-fisica').addClassName("no-display");}
__indexaLast=vl.value;}}
