1function addEventsForFields(fields){for(var i=0;i<fields.length;i++){fields[i].addEventListener('focus',function(e){removeErrorElementStyles(this);});}} 2function removeErrorElementStyles(elem){var elemError=elem.parentNode.getElementsByClassName('custom-form-error-message');if(elemError.length){elemError[0].remove();} 3elem.classList.remove("custom-form-invalid-field");} 4function removeErrorsOnSubmit(form){var messages=form.getElementsByClassName("custom-form-error-message"),invalidFields=form.getElementsByClassName("custom-form-invalid-field");for(var i=messages.length-1;i>=0;i--){messages[i].remove();} 5for(var j=invalidFields.length-1;j>=0;j--){invalidFields[j].classList.remove("custom-form-invalid-field");}} 6function validateElements(el){var stopSubmit=false;for(var i=0;i<el.length;i++){if(validateNoHtmlTags(el[i])){stopSubmit=true;} 7if(el[i].required&&validateNoEmpty(el[i])){stopSubmit=true;}} 8return stopSubmit;} 9function printMessage(el,message){var elemError=el.parentNode.getElementsByClassName('custom-form-error-message');if(elemError.length){elemError[0].innerHTML=message;}else{el.parentNode.insertAdjacentHTML('beforeend','<p class="custom-form-error-message">'+message+'</p>');} 10el.classList.add("custom-form-invalid-field");} 11function validateNoHtmlTags(el){var pattern=/<(\/)?\w+/;if(!!el.value.match(pattern)){printMessage(el,"HTML tags are not allowed.");return true;}else{return false;}} 12function validateNoEmpty(el){if(!el.value||el.value===" "){printMessage(el,"This is a required field.");return true;}else{return false;}}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.